mirror of
https://gitlab.com/camelot/kickc.git
synced 2024-09-08 17:54:40 +00:00
Implemented v0.1 of a screen form library
This commit is contained in:
parent
91589327e3
commit
17ffe83bd2
@ -0,0 +1,6 @@
|
||||
sec
|
||||
sbc #{c1}
|
||||
bvc !+
|
||||
eor #$80
|
||||
!:
|
||||
bpl {la1}
|
@ -0,0 +1 @@
|
||||
and ({z1}),y
|
@ -0,0 +1 @@
|
||||
ora ({z1}),y
|
@ -1,4 +1,3 @@
|
||||
|
||||
package dk.camelot64.kickc.test;
|
||||
|
||||
import dk.camelot64.kickc.CompileLog;
|
||||
|
@ -54,10 +54,124 @@ void menu() {
|
||||
print_set_screen(SCREEN);
|
||||
print_cls();
|
||||
print_str_lines(MENU_TEXT);
|
||||
// Wait for keypress
|
||||
form_set_screen(SCREEN);
|
||||
form_render_values();
|
||||
// Allow user to control the form
|
||||
while(true) {
|
||||
if(keyboard_key_pressed(KEY_SPACE)!=0) {
|
||||
while(*RASTER!=$ff) {}
|
||||
form_control();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Table with addresses of the y-lines of the form. The first line contains the address of the form screen.
|
||||
byte[25] form_line_lo;
|
||||
byte[25] form_line_hi;
|
||||
// Current selected field in the form
|
||||
byte form_field_idx = 0;
|
||||
// Number of form fields
|
||||
byte form_fields_cnt = 9;
|
||||
// Form fields x/y-positions
|
||||
byte[] form_fields_x = { 7, 7, 7, 7, 7, 7, 7, 17, 17 };
|
||||
byte[] form_fields_y = { 2, 3, 4, 5, 6, 7, 8, 7, 8 };
|
||||
// Form fields values
|
||||
byte[] form_fields_val = { 0, 0, 0, 0, 0, 0, 0, 0, 0 };
|
||||
|
||||
// Press-status for the DOWN key from last frame - used for debounce
|
||||
byte key_down_debounce = 0;
|
||||
// Press-status for the right key from last frame - used for debounce
|
||||
byte key_right_debounce = 0;
|
||||
|
||||
// The number of frames to use for a full blink cycle
|
||||
const signed byte FORM_CURSOR_BLINK = 40;
|
||||
// Counts down to blink for form cursor (it is inversed in the lower half)
|
||||
signed byte form_cursor_count = FORM_CURSOR_BLINK/2;
|
||||
|
||||
// Set the screen to use for the form.
|
||||
// screen is the start address of the screen to use
|
||||
void form_set_screen(byte* screen) {
|
||||
// Calculate the field line table
|
||||
byte* line = screen;
|
||||
for(byte y: 0..24) {
|
||||
form_line_lo[y] = <line;
|
||||
form_line_hi[y] = >line;
|
||||
line = line + 40;
|
||||
}
|
||||
}
|
||||
|
||||
// Get the screen address of a form field
|
||||
// field_idx is the index of the field to get the screen address for
|
||||
byte* form_field_ptr(byte field_idx) {
|
||||
byte y = form_fields_y[field_idx];
|
||||
byte* line = (byte*) { form_line_hi[y], form_line_lo[y] };
|
||||
byte x = form_fields_x[field_idx];
|
||||
byte* field = line+x;
|
||||
return field;
|
||||
}
|
||||
|
||||
// Render all form values from the form_fields_val array
|
||||
void form_render_values() {
|
||||
for( byte idx=0; idx<form_fields_cnt; idx++) {
|
||||
byte* field = form_field_ptr(idx);
|
||||
*field = print_hextab[form_fields_val[idx]];
|
||||
}
|
||||
}
|
||||
|
||||
// Reads keyboard and allows the user to navigate and change the fields of the form
|
||||
void form_control() {
|
||||
byte* field = form_field_ptr(form_field_idx);
|
||||
|
||||
// Blinking cursor
|
||||
if(--form_cursor_count < 0) {
|
||||
form_cursor_count = FORM_CURSOR_BLINK;
|
||||
}
|
||||
if(form_cursor_count<FORM_CURSOR_BLINK/2) {
|
||||
*field = *field | $80;
|
||||
} else {
|
||||
*field = *field & $7f;
|
||||
}
|
||||
|
||||
// Navigation using cursor up/down
|
||||
byte key_down = keyboard_key_pressed(KEY_CRSR_DOWN);
|
||||
if(key_down!=key_down_debounce) {
|
||||
key_down_debounce = key_down;
|
||||
if(key_down!=0) {
|
||||
// Unblink the cursor
|
||||
*field = *field & $7f;
|
||||
if(keyboard_key_pressed(KEY_RSHIFT)==0) {
|
||||
// Move to next field
|
||||
if(++form_field_idx==form_fields_cnt) {
|
||||
form_field_idx = 0;
|
||||
}
|
||||
} else {
|
||||
// Move to previous field
|
||||
if(--form_field_idx==$ff) {
|
||||
form_field_idx = form_fields_cnt-1;
|
||||
}
|
||||
}
|
||||
// Always blink cursor in new field
|
||||
form_cursor_count = FORM_CURSOR_BLINK/2;
|
||||
// Return to refresh
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// Change value with cursor left/right
|
||||
// Navigation using cursor up/down
|
||||
byte key_right = keyboard_key_pressed(KEY_CRSR_RIGHT);
|
||||
if(key_right!=key_right_debounce) {
|
||||
key_right_debounce = key_right;
|
||||
if(key_right!=0) {
|
||||
if(keyboard_key_pressed(KEY_RSHIFT)==0) {
|
||||
// Increase value
|
||||
form_fields_val[form_field_idx] = (form_fields_val[form_field_idx]+1) & $f;
|
||||
} else {
|
||||
// Decrease value
|
||||
form_fields_val[form_field_idx] = (form_fields_val[form_field_idx]-1) & $f;
|
||||
}
|
||||
// Render field value
|
||||
*field = print_hextab[form_fields_val[form_field_idx]];
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -84,12 +84,13 @@ void print_sdword(signed dword dw) {
|
||||
print_dword((dword)dw);
|
||||
}
|
||||
|
||||
const byte[] print_hextab = "0123456789abcdef";
|
||||
|
||||
// Print a byte as HEX
|
||||
void print_byte(byte b) {
|
||||
// Table of hexadecimal digits
|
||||
const byte[] hextab = "0123456789abcdef";
|
||||
print_char(hextab[b>>4]);
|
||||
print_char(hextab[b&$f]);
|
||||
print_char(print_hextab[b>>4]);
|
||||
print_char(print_hextab[b&$f]);
|
||||
}
|
||||
|
||||
// Print a single char
|
||||
|
@ -1,6 +1,7 @@
|
||||
.pc = $801 "Basic"
|
||||
:BasicUpstart(main)
|
||||
.pc = $80d "Program"
|
||||
.label RASTER = $d012
|
||||
.label BORDERCOL = $d020
|
||||
.label BGCOL = $d021
|
||||
.label VIC_CONTROL = $d011
|
||||
@ -23,14 +24,27 @@
|
||||
.label DTV_COLOR_BANK_HI = $d037
|
||||
.const DTV_COLOR_BANK_DEFAULT = $1d800
|
||||
.label DTV_GRAPHICS_VIC_BANK = $d03d
|
||||
.const KEY_SPACE = $3c
|
||||
.label print_char_cursor = 4
|
||||
.label print_line_cursor = 6
|
||||
.const KEY_CRSR_RIGHT = 2
|
||||
.const KEY_CRSR_DOWN = 7
|
||||
.const KEY_RSHIFT = $34
|
||||
.const form_fields_cnt = 9
|
||||
.const FORM_CURSOR_BLINK = $28
|
||||
.label print_char_cursor = 8
|
||||
.label form_cursor_count = 2
|
||||
.label key_down_debounce = 3
|
||||
.label key_right_debounce = 4
|
||||
.label print_line_cursor = $a
|
||||
jsr main
|
||||
main: {
|
||||
sei
|
||||
lda #DTV_FEATURE_ENABLE
|
||||
sta DTV_FEATURE
|
||||
lda #0
|
||||
sta key_right_debounce
|
||||
tax
|
||||
sta key_down_debounce
|
||||
lda #FORM_CURSOR_BLINK/2
|
||||
sta form_cursor_count
|
||||
b2:
|
||||
jsr menu
|
||||
jmp b2
|
||||
@ -38,7 +52,7 @@ main: {
|
||||
menu: {
|
||||
.label SCREEN = $8000
|
||||
.label CHARSET = $9800
|
||||
.label c = 2
|
||||
.label c = 5
|
||||
lda #($ffffffff&CHARSET)/$10000
|
||||
sta DTV_GRAPHICS_VIC_BANK
|
||||
lda #DTV_COLOR_BANK_DEFAULT/$400
|
||||
@ -56,12 +70,12 @@ menu: {
|
||||
sta VIC_CONTROL2
|
||||
lda #(SCREEN&$3fff)/$40|(CHARSET&$3fff)/$400
|
||||
sta VIC_MEMORY
|
||||
ldx #0
|
||||
ldy #0
|
||||
b1:
|
||||
lda DTV_PALETTE_DEFAULT,x
|
||||
sta DTV_PALETTE,x
|
||||
inx
|
||||
cpx #$10
|
||||
lda DTV_PALETTE_DEFAULT,y
|
||||
sta DTV_PALETTE,y
|
||||
iny
|
||||
cpy #$10
|
||||
bne b1
|
||||
lda #<COLS
|
||||
sta c
|
||||
@ -87,31 +101,194 @@ menu: {
|
||||
jsr print_set_screen
|
||||
jsr print_cls
|
||||
jsr print_str_lines
|
||||
jmp b4
|
||||
breturn:
|
||||
rts
|
||||
b4:
|
||||
jsr form_set_screen
|
||||
jsr form_render_values
|
||||
b6:
|
||||
lda RASTER
|
||||
cmp #$ff
|
||||
bne b6
|
||||
jsr form_control
|
||||
jmp b6
|
||||
}
|
||||
form_control: {
|
||||
.label field = 5
|
||||
stx form_field_ptr.field_idx
|
||||
jsr form_field_ptr
|
||||
dec form_cursor_count
|
||||
lda form_cursor_count
|
||||
cmp #0
|
||||
bpl b1
|
||||
lda #FORM_CURSOR_BLINK
|
||||
sta form_cursor_count
|
||||
b1:
|
||||
lda form_cursor_count
|
||||
sec
|
||||
sbc #FORM_CURSOR_BLINK/2
|
||||
bvc !+
|
||||
eor #$80
|
||||
!:
|
||||
bpl b2
|
||||
lda #$80
|
||||
ldy #0
|
||||
ora (field),y
|
||||
sta (field),y
|
||||
b3:
|
||||
ldy #KEY_CRSR_DOWN
|
||||
jsr keyboard_key_pressed
|
||||
cmp key_down_debounce
|
||||
beq b4
|
||||
sta key_down_debounce
|
||||
cmp #0
|
||||
beq b4
|
||||
lda #$7f
|
||||
ldy #0
|
||||
and (field),y
|
||||
sta (field),y
|
||||
ldy #KEY_RSHIFT
|
||||
jsr keyboard_key_pressed
|
||||
cmp #0
|
||||
bne b6
|
||||
inx
|
||||
cpx #form_fields_cnt
|
||||
bne b8
|
||||
ldx #0
|
||||
b8:
|
||||
lda #FORM_CURSOR_BLINK/2
|
||||
sta form_cursor_count
|
||||
breturn:
|
||||
rts
|
||||
b6:
|
||||
dex
|
||||
cpx #$ff
|
||||
bne b8
|
||||
ldx #form_fields_cnt-1
|
||||
jmp b8
|
||||
b4:
|
||||
ldy #KEY_CRSR_RIGHT
|
||||
jsr keyboard_key_pressed
|
||||
cmp key_right_debounce
|
||||
beq breturn
|
||||
sta key_right_debounce
|
||||
cmp #0
|
||||
beq breturn
|
||||
ldy #KEY_RSHIFT
|
||||
jsr keyboard_key_pressed
|
||||
cmp #0
|
||||
bne b12
|
||||
lda form_fields_val,x
|
||||
clc
|
||||
adc #1
|
||||
and #$f
|
||||
sta form_fields_val,x
|
||||
b13:
|
||||
lda form_fields_val,x
|
||||
tay
|
||||
lda print_hextab,y
|
||||
ldy #0
|
||||
sta (field),y
|
||||
jmp breturn
|
||||
b12:
|
||||
lda form_fields_val,x
|
||||
sec
|
||||
sbc #1
|
||||
and #$f
|
||||
sta form_fields_val,x
|
||||
jmp b13
|
||||
b2:
|
||||
lda #$7f
|
||||
ldy #0
|
||||
and (field),y
|
||||
sta (field),y
|
||||
jmp b3
|
||||
}
|
||||
keyboard_key_pressed: {
|
||||
.const colidx = KEY_SPACE&7
|
||||
.label rowidx = KEY_SPACE>>3
|
||||
.label colidx = 7
|
||||
tya
|
||||
and #7
|
||||
sta colidx
|
||||
tya
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
tay
|
||||
jsr keyboard_matrix_read
|
||||
and keyboard_matrix_col_bitmask+colidx
|
||||
ldy colidx
|
||||
and keyboard_matrix_col_bitmask,y
|
||||
rts
|
||||
}
|
||||
keyboard_matrix_read: {
|
||||
lda keyboard_matrix_row_bitmask+keyboard_key_pressed.rowidx
|
||||
lda keyboard_matrix_row_bitmask,y
|
||||
sta CIA1_PORT_A
|
||||
lda CIA1_PORT_B
|
||||
eor #$ff
|
||||
rts
|
||||
}
|
||||
form_field_ptr: {
|
||||
.label return = 5
|
||||
.label field_idx = 7
|
||||
.label _2 = 5
|
||||
ldy field_idx
|
||||
lda form_fields_y,y
|
||||
tay
|
||||
lda form_line_hi,y
|
||||
sta _2+1
|
||||
lda form_line_lo,y
|
||||
sta _2
|
||||
ldy field_idx
|
||||
lda form_fields_x,y
|
||||
clc
|
||||
adc return
|
||||
sta return
|
||||
lda #0
|
||||
adc return+1
|
||||
sta return+1
|
||||
rts
|
||||
}
|
||||
form_render_values: {
|
||||
.label field = 5
|
||||
.label idx = 7
|
||||
lda #0
|
||||
sta idx
|
||||
b1:
|
||||
jsr form_field_ptr
|
||||
ldy idx
|
||||
lda form_fields_val,y
|
||||
tay
|
||||
lda print_hextab,y
|
||||
ldy #0
|
||||
sta (field),y
|
||||
inc idx
|
||||
lda idx
|
||||
cmp #form_fields_cnt
|
||||
bcc b1
|
||||
rts
|
||||
}
|
||||
form_set_screen: {
|
||||
.label line = 5
|
||||
ldy #0
|
||||
lda #<menu.SCREEN
|
||||
sta line
|
||||
lda #>menu.SCREEN
|
||||
sta line+1
|
||||
b1:
|
||||
lda line
|
||||
sta form_line_lo,y
|
||||
lda line+1
|
||||
sta form_line_hi,y
|
||||
lda line
|
||||
clc
|
||||
adc #$28
|
||||
sta line
|
||||
bcc !+
|
||||
inc line+1
|
||||
!:
|
||||
iny
|
||||
cpy #$19
|
||||
bne b1
|
||||
rts
|
||||
}
|
||||
print_str_lines: {
|
||||
.label str = 2
|
||||
.label str = 5
|
||||
lda #<menu.SCREEN
|
||||
sta print_line_cursor
|
||||
lda #>menu.SCREEN
|
||||
@ -175,7 +352,7 @@ print_ln: {
|
||||
rts
|
||||
}
|
||||
print_cls: {
|
||||
.label sc = 2
|
||||
.label sc = 5
|
||||
lda #<menu.SCREEN
|
||||
sta sc
|
||||
lda #>menu.SCREEN
|
||||
@ -200,6 +377,12 @@ print_set_screen: {
|
||||
rts
|
||||
}
|
||||
DTV_PALETTE_DEFAULT: .byte 0, $f, $36, $be, $58, $db, $86, $ff, $29, $26, $3b, 5, 7, $df, $9a, $a
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
keyboard_matrix_row_bitmask: .byte $fe, $fd, $fb, $f7, $ef, $df, $bf, $7f
|
||||
keyboard_matrix_col_bitmask: .byte 1, 2, 4, 8, $10, $20, $40, $80
|
||||
form_line_lo: .fill $19, 0
|
||||
form_line_hi: .fill $19, 0
|
||||
form_fields_x: .byte 7, 7, 7, 7, 7, 7, 7, $11, $11
|
||||
form_fields_y: .byte 2, 3, 4, 5, 6, 7, 8, 7, 8
|
||||
form_fields_val: .byte 0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||
MENU_TEXT: .text " DTV GfxExplorer PRESET 8bpp pixel cell @"+" CONTROL PLANE A PLANE B VIC II @"+" bmm 0 patt p1 patt p2 screen s3 @"+" mcm 0 start 00 start 00 gfx g4 @"+" ecm 0 step 00 step 00 colors c5 @"+" hicol 0 mod 00 mod 00 bgcol0 00 @"+" line 0 bgcol1 00 @"+" colof 0 borof 0 bgcol2 00 @"+" chunk 0 overs 0 bgcol3 00 @"+"@"
|
||||
|
@ -1,154 +1,323 @@
|
||||
@begin: scope:[] from
|
||||
[0] phi() [ ] ( )
|
||||
to:@21
|
||||
@21: scope:[] from @begin
|
||||
to:@25
|
||||
@25: scope:[] from @begin
|
||||
[1] phi() [ ] ( )
|
||||
[2] call main param-assignment [ ] ( )
|
||||
to:@end
|
||||
@end: scope:[] from @21
|
||||
@end: scope:[] from @25
|
||||
[3] phi() [ ] ( )
|
||||
main: scope:[main] from @21
|
||||
main: scope:[main] from @25
|
||||
asm { sei }
|
||||
[5] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 [ ] ( main:2 [ ] )
|
||||
to:main::@1
|
||||
main::@1: scope:[main] from main main::@2
|
||||
[6] if(true) goto main::@2 [ ] ( main:2 [ ] )
|
||||
[6] (byte) key_right_debounce#1 ← phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@2/(byte) key_right_debounce#11 ) [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
[6] (byte) form_field_idx#1 ← phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@2/(byte) form_field_idx#14 ) [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
[6] (byte) key_down_debounce#1 ← phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@2/(byte) key_down_debounce#11 ) [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
[6] (signed byte) form_cursor_count#1 ← phi( main/(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 main::@2/(signed byte) form_cursor_count#13 ) [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
[7] if(true) goto main::@2 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
to:main::@return
|
||||
main::@return: scope:[main] from main::@1
|
||||
[7] return [ ] ( main:2 [ ] )
|
||||
[8] return [ ] ( main:2 [ ] )
|
||||
to:@return
|
||||
main::@2: scope:[main] from main::@1
|
||||
[8] phi() [ ] ( main:2 [ ] )
|
||||
[9] call menu param-assignment [ ] ( main:2 [ ] )
|
||||
[9] phi() [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
[10] call menu param-assignment [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 ] ( main:2 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 ] )
|
||||
to:main::@1
|
||||
menu: scope:[menu] from main::@2
|
||||
[10] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) menu::CHARSET#0/(dword/signed dword) 65536 [ ] ( main:2::menu:9 [ ] )
|
||||
[11] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::menu:9 [ ] )
|
||||
[12] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::menu:9 [ ] )
|
||||
[13] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9 [ ] )
|
||||
[14] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9 [ ] )
|
||||
[15] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) menu::CHARSET#0/(word/signed word/dword/signed dword) 16384 [ ] ( main:2::menu:9 [ ] )
|
||||
[16] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9 [ ] )
|
||||
[17] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9 [ ] )
|
||||
[18] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) menu::SCREEN#0&(word/signed word/dword/signed dword) 16383/(byte/signed byte/word/signed word/dword/signed dword) 64|((word))(const byte*) menu::CHARSET#0&(word/signed word/dword/signed dword) 16383/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::menu:9 [ ] )
|
||||
[11] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) menu::CHARSET#0/(dword/signed dword) 65536 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
[12] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
[13] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
[14] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
[15] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
[16] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) menu::CHARSET#0/(word/signed word/dword/signed dword) 16384 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
[17] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
[18] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
[19] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) menu::SCREEN#0&(word/signed word/dword/signed dword) 16383/(byte/signed byte/word/signed word/dword/signed dword) 64|((word))(const byte*) menu::CHARSET#0&(word/signed word/dword/signed dword) 16383/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
to:menu::@1
|
||||
menu::@1: scope:[menu] from menu menu::@1
|
||||
[19] (byte) menu::i#2 ← phi( menu/(byte/signed byte/word/signed word/dword/signed dword) 0 menu::@1/(byte) menu::i#1 ) [ menu::i#2 ] ( main:2::menu:9 [ menu::i#2 ] )
|
||||
[20] *((const byte*) DTV_PALETTE#0 + (byte) menu::i#2) ← *((const byte[16]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2) [ menu::i#2 ] ( main:2::menu:9 [ menu::i#2 ] )
|
||||
[21] (byte) menu::i#1 ← ++ (byte) menu::i#2 [ menu::i#1 ] ( main:2::menu:9 [ menu::i#1 ] )
|
||||
[22] if((byte) menu::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto menu::@1 [ menu::i#1 ] ( main:2::menu:9 [ menu::i#1 ] )
|
||||
[20] (byte) menu::i#2 ← phi( menu/(byte/signed byte/word/signed word/dword/signed dword) 0 menu::@1/(byte) menu::i#1 ) [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 menu::i#2 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 menu::i#2 ] )
|
||||
[21] *((const byte*) DTV_PALETTE#0 + (byte) menu::i#2) ← *((const byte[16]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2) [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 menu::i#2 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 menu::i#2 ] )
|
||||
[22] (byte) menu::i#1 ← ++ (byte) menu::i#2 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 menu::i#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 menu::i#1 ] )
|
||||
[23] if((byte) menu::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto menu::@1 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 menu::i#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 menu::i#1 ] )
|
||||
to:menu::@2
|
||||
menu::@2: scope:[menu] from menu::@1 menu::@2
|
||||
[23] (byte*) menu::c#2 ← phi( menu::@2/(byte*) menu::c#1 menu::@1/(const byte*) COLS#0 ) [ menu::c#2 ] ( main:2::menu:9 [ menu::c#2 ] )
|
||||
[24] *((byte*) menu::c#2) ← (const byte) LIGHT_GREEN#0 [ menu::c#2 ] ( main:2::menu:9 [ menu::c#2 ] )
|
||||
[25] (byte*) menu::c#1 ← ++ (byte*) menu::c#2 [ menu::c#1 ] ( main:2::menu:9 [ menu::c#1 ] )
|
||||
[26] if((byte*) menu::c#1!=(const byte*) COLS#0+(word/signed word/dword/signed dword) 1000) goto menu::@2 [ menu::c#1 ] ( main:2::menu:9 [ menu::c#1 ] )
|
||||
to:menu::@8
|
||||
menu::@8: scope:[menu] from menu::@2
|
||||
[27] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9 [ ] )
|
||||
[28] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9 [ ] )
|
||||
[29] call print_set_screen param-assignment [ ] ( main:2::menu:9 [ ] )
|
||||
to:menu::@14
|
||||
menu::@14: scope:[menu] from menu::@8
|
||||
[30] phi() [ ] ( main:2::menu:9 [ ] )
|
||||
[31] call print_cls param-assignment [ ] ( main:2::menu:9 [ ] )
|
||||
to:menu::@15
|
||||
menu::@15: scope:[menu] from menu::@14
|
||||
[32] phi() [ ] ( main:2::menu:9 [ ] )
|
||||
[33] call print_str_lines param-assignment [ ] ( main:2::menu:9 [ ] )
|
||||
to:menu::@3
|
||||
menu::@3: scope:[menu] from menu::@15 menu::@17
|
||||
[34] if(true) goto menu::@4 [ ] ( main:2::menu:9 [ ] )
|
||||
to:menu::@return
|
||||
menu::@return: scope:[menu] from menu::@17 menu::@3
|
||||
[35] return [ ] ( main:2::menu:9 [ ] )
|
||||
to:@return
|
||||
menu::@4: scope:[menu] from menu::@3
|
||||
[36] phi() [ ] ( main:2::menu:9 [ ] )
|
||||
[37] call keyboard_key_pressed param-assignment [ keyboard_key_pressed::return#0 ] ( main:2::menu:9 [ keyboard_key_pressed::return#0 ] )
|
||||
[38] (byte) keyboard_key_pressed::return#2 ← (byte) keyboard_key_pressed::return#0 [ keyboard_key_pressed::return#2 ] ( main:2::menu:9 [ keyboard_key_pressed::return#2 ] )
|
||||
[24] (byte*) menu::c#2 ← phi( menu::@2/(byte*) menu::c#1 menu::@1/(const byte*) COLS#0 ) [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 menu::c#2 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 menu::c#2 ] )
|
||||
[25] *((byte*) menu::c#2) ← (const byte) LIGHT_GREEN#0 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 menu::c#2 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 menu::c#2 ] )
|
||||
[26] (byte*) menu::c#1 ← ++ (byte*) menu::c#2 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 menu::c#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 menu::c#1 ] )
|
||||
[27] if((byte*) menu::c#1!=(const byte*) COLS#0+(word/signed word/dword/signed dword) 1000) goto menu::@2 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 menu::c#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 menu::c#1 ] )
|
||||
to:menu::@10
|
||||
menu::@10: scope:[menu] from menu::@2
|
||||
[28] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
[29] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
[30] call print_set_screen param-assignment [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
to:menu::@17
|
||||
menu::@17: scope:[menu] from menu::@4
|
||||
[39] (byte~) menu::$29 ← (byte) keyboard_key_pressed::return#2 [ menu::$29 ] ( main:2::menu:9 [ menu::$29 ] )
|
||||
[40] if((byte~) menu::$29==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@3 [ ] ( main:2::menu:9 [ ] )
|
||||
menu::@17: scope:[menu] from menu::@10
|
||||
[31] phi() [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
[32] call print_cls param-assignment [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
to:menu::@18
|
||||
menu::@18: scope:[menu] from menu::@17
|
||||
[33] phi() [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
[34] call print_str_lines param-assignment [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
to:menu::@19
|
||||
menu::@19: scope:[menu] from menu::@18
|
||||
[35] phi() [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
[36] call form_set_screen param-assignment [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
to:menu::@20
|
||||
menu::@20: scope:[menu] from menu::@19
|
||||
[37] phi() [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
[38] call form_render_values param-assignment [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] ( main:2::menu:10 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
to:menu::@3
|
||||
menu::@3: scope:[menu] from menu::@20 menu::@8
|
||||
[39] (byte) key_right_debounce#11 ← phi( menu::@20/(byte) key_right_debounce#1 menu::@8/(byte) key_right_debounce#13 ) [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 ] ( main:2::menu:10 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 ] )
|
||||
[39] (byte) form_field_idx#14 ← phi( menu::@20/(byte) form_field_idx#1 menu::@8/(byte) form_field_idx#18 ) [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 ] ( main:2::menu:10 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 ] )
|
||||
[39] (byte) key_down_debounce#11 ← phi( menu::@20/(byte) key_down_debounce#1 menu::@8/(byte) key_down_debounce#13 ) [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 ] ( main:2::menu:10 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 ] )
|
||||
[39] (signed byte) form_cursor_count#13 ← phi( menu::@20/(signed byte) form_cursor_count#1 menu::@8/(signed byte) form_cursor_count#16 ) [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 ] ( main:2::menu:10 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 ] )
|
||||
[40] if(true) goto menu::@6 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 ] ( main:2::menu:10 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 ] )
|
||||
to:menu::@return
|
||||
keyboard_key_pressed: scope:[keyboard_key_pressed] from menu::@4
|
||||
[41] phi() [ ] ( main:2::menu:9::keyboard_key_pressed:37 [ ] )
|
||||
[42] call keyboard_matrix_read param-assignment [ keyboard_matrix_read::return#0 ] ( main:2::menu:9::keyboard_key_pressed:37 [ keyboard_matrix_read::return#0 ] )
|
||||
[43] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 [ keyboard_matrix_read::return#2 ] ( main:2::menu:9::keyboard_key_pressed:37 [ keyboard_matrix_read::return#2 ] )
|
||||
menu::@return: scope:[menu] from menu::@3
|
||||
[41] return [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 ] ( main:2::menu:10 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 ] )
|
||||
to:@return
|
||||
menu::@6: scope:[menu] from menu::@3 menu::@6
|
||||
[42] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto menu::@6 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 ] ( main:2::menu:10 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 ] )
|
||||
to:menu::@8
|
||||
menu::@8: scope:[menu] from menu::@6
|
||||
[43] phi() [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 ] ( main:2::menu:10 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 ] )
|
||||
[44] call form_control param-assignment [ form_cursor_count#16 key_down_debounce#13 form_field_idx#18 key_right_debounce#13 ] ( main:2::menu:10 [ form_cursor_count#16 key_down_debounce#13 form_field_idx#18 key_right_debounce#13 ] )
|
||||
to:menu::@3
|
||||
form_control: scope:[form_control] from menu::@8
|
||||
[45] (byte) form_field_ptr::field_idx#1 ← (byte) form_field_idx#14 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_field_ptr::field_idx#1 ] ( main:2::menu:10::form_control:44 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_field_ptr::field_idx#1 ] )
|
||||
[46] call form_field_ptr param-assignment [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_field_ptr::return#0 ] ( main:2::menu:10::form_control:44 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_field_ptr::return#0 ] )
|
||||
[47] (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#0 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_field_ptr::return#3 ] ( main:2::menu:10::form_control:44 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_field_ptr::return#3 ] )
|
||||
to:form_control::@28
|
||||
form_control::@28: scope:[form_control] from form_control
|
||||
[48] (byte*) form_control::field#0 ← (byte*) form_field_ptr::return#3 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 ] ( main:2::menu:10::form_control:44 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 ] )
|
||||
[49] (signed byte) form_cursor_count#5 ← -- (signed byte) form_cursor_count#13 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#5 ] ( main:2::menu:10::form_control:44 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#5 ] )
|
||||
[50] if((signed byte) form_cursor_count#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@33 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#5 ] ( main:2::menu:10::form_control:44 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#5 ] )
|
||||
to:form_control::@1
|
||||
form_control::@1: scope:[form_control] from form_control::@28 form_control::@33
|
||||
[51] (signed byte) form_cursor_count#15 ← phi( form_control::@28/(const signed byte) FORM_CURSOR_BLINK#0 form_control::@33/(signed byte) form_cursor_count#5 ) [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 ] ( main:2::menu:10::form_control:44 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 ] )
|
||||
[52] if((signed byte) form_cursor_count#15>=(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2) goto form_control::@2 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 ] ( main:2::menu:10::form_control:44 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 ] )
|
||||
to:form_control::@15
|
||||
form_control::@15: scope:[form_control] from form_control::@1
|
||||
[53] (byte/word/dword~) form_control::$6 ← *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) 128 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 form_control::$6 ] ( main:2::menu:10::form_control:44 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 form_control::$6 ] )
|
||||
[54] *((byte*) form_control::field#0) ← (byte/word/dword~) form_control::$6 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 ] ( main:2::menu:10::form_control:44 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 ] )
|
||||
to:form_control::@3
|
||||
form_control::@3: scope:[form_control] from form_control::@15 form_control::@2
|
||||
[55] phi() [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 ] ( main:2::menu:10::form_control:44 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 ] )
|
||||
[56] call keyboard_key_pressed param-assignment [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 keyboard_key_pressed::return#0 ] ( main:2::menu:10::form_control:44 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 keyboard_key_pressed::return#0 ] )
|
||||
[57] (byte) keyboard_key_pressed::return#2 ← (byte) keyboard_key_pressed::return#0 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 keyboard_key_pressed::return#2 ] ( main:2::menu:10::form_control:44 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 keyboard_key_pressed::return#2 ] )
|
||||
to:form_control::@29
|
||||
form_control::@29: scope:[form_control] from form_control::@3
|
||||
[58] (byte) form_control::key_down#0 ← (byte) keyboard_key_pressed::return#2 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 form_control::key_down#0 ] ( main:2::menu:10::form_control:44 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 form_control::key_down#0 ] )
|
||||
[59] if((byte) form_control::key_down#0==(byte) key_down_debounce#11) goto form_control::@4 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 form_control::key_down#0 ] ( main:2::menu:10::form_control:44 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 form_control::key_down#0 ] )
|
||||
to:form_control::@17
|
||||
form_control::@17: scope:[form_control] from form_control::@29
|
||||
[60] (byte) key_down_debounce#23 ← (byte) form_control::key_down#0 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 form_control::key_down#0 key_down_debounce#23 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 form_control::key_down#0 key_down_debounce#23 ] )
|
||||
[61] if((byte) form_control::key_down#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@4 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 key_down_debounce#23 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 key_down_debounce#23 ] )
|
||||
to:form_control::@18
|
||||
form_control::@18: scope:[form_control] from form_control::@17
|
||||
[62] (byte~) form_control::$13 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 key_down_debounce#23 form_control::$13 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 key_down_debounce#23 form_control::$13 ] )
|
||||
[63] *((byte*) form_control::field#0) ← (byte~) form_control::$13 [ form_field_idx#14 key_right_debounce#11 key_down_debounce#23 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 key_right_debounce#11 key_down_debounce#23 ] )
|
||||
[64] call keyboard_key_pressed param-assignment [ form_field_idx#14 key_right_debounce#11 keyboard_key_pressed::return#0 key_down_debounce#23 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 key_right_debounce#11 keyboard_key_pressed::return#0 key_down_debounce#23 ] )
|
||||
[65] (byte) keyboard_key_pressed::return#4 ← (byte) keyboard_key_pressed::return#0 [ form_field_idx#14 key_right_debounce#11 key_down_debounce#23 keyboard_key_pressed::return#4 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 key_right_debounce#11 key_down_debounce#23 keyboard_key_pressed::return#4 ] )
|
||||
to:form_control::@31
|
||||
form_control::@31: scope:[form_control] from form_control::@18
|
||||
[66] (byte~) form_control::$14 ← (byte) keyboard_key_pressed::return#4 [ form_field_idx#14 key_right_debounce#11 key_down_debounce#23 form_control::$14 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 key_right_debounce#11 key_down_debounce#23 form_control::$14 ] )
|
||||
[67] if((byte~) form_control::$14!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@6 [ form_field_idx#14 key_right_debounce#11 key_down_debounce#23 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 key_right_debounce#11 key_down_debounce#23 ] )
|
||||
to:form_control::@19
|
||||
form_control::@19: scope:[form_control] from form_control::@31
|
||||
[68] (byte) form_field_idx#37 ← ++ (byte) form_field_idx#14 [ key_right_debounce#11 key_down_debounce#23 form_field_idx#37 ] ( main:2::menu:10::form_control:44 [ key_right_debounce#11 key_down_debounce#23 form_field_idx#37 ] )
|
||||
[69] if((byte) form_field_idx#37!=(const byte) form_fields_cnt#0) goto form_control::@34 [ key_right_debounce#11 key_down_debounce#23 form_field_idx#37 ] ( main:2::menu:10::form_control:44 [ key_right_debounce#11 key_down_debounce#23 form_field_idx#37 ] )
|
||||
to:form_control::@8
|
||||
form_control::@8: scope:[form_control] from form_control::@19 form_control::@34 form_control::@35 form_control::@6
|
||||
[70] (byte) form_field_idx#30 ← phi( form_control::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 form_control::@6/(const byte) form_fields_cnt#0-(byte/signed byte/word/signed word/dword/signed dword) 1 form_control::@34/(byte) form_field_idx#37 form_control::@35/(byte) form_field_idx#38 ) [ key_right_debounce#11 key_down_debounce#23 form_field_idx#30 ] ( main:2::menu:10::form_control:44 [ key_right_debounce#11 key_down_debounce#23 form_field_idx#30 ] )
|
||||
to:form_control::@return
|
||||
form_control::@return: scope:[form_control] from form_control::@13 form_control::@24 form_control::@30 form_control::@8
|
||||
[71] (byte) key_right_debounce#13 ← phi( form_control::@30/(byte) key_right_debounce#11 form_control::@24/(byte) key_right_debounce#21 form_control::@13/(byte) key_right_debounce#21 form_control::@8/(byte) key_right_debounce#11 ) [ form_cursor_count#16 key_down_debounce#13 form_field_idx#18 key_right_debounce#13 ] ( main:2::menu:10::form_control:44 [ form_cursor_count#16 key_down_debounce#13 form_field_idx#18 key_right_debounce#13 ] )
|
||||
[71] (byte) form_field_idx#18 ← phi( form_control::@30/(byte) form_field_idx#14 form_control::@24/(byte) form_field_idx#14 form_control::@13/(byte) form_field_idx#14 form_control::@8/(byte) form_field_idx#30 ) [ form_cursor_count#16 key_down_debounce#13 form_field_idx#18 key_right_debounce#13 ] ( main:2::menu:10::form_control:44 [ form_cursor_count#16 key_down_debounce#13 form_field_idx#18 key_right_debounce#13 ] )
|
||||
[71] (byte) key_down_debounce#13 ← phi( form_control::@30/(byte) key_down_debounce#20 form_control::@24/(byte) key_down_debounce#20 form_control::@13/(byte) key_down_debounce#20 form_control::@8/(byte) key_down_debounce#23 ) [ form_cursor_count#16 key_down_debounce#13 form_field_idx#18 key_right_debounce#13 ] ( main:2::menu:10::form_control:44 [ form_cursor_count#16 key_down_debounce#13 form_field_idx#18 key_right_debounce#13 ] )
|
||||
[71] (signed byte) form_cursor_count#16 ← phi( form_control::@30/(signed byte) form_cursor_count#15 form_control::@24/(signed byte) form_cursor_count#15 form_control::@13/(signed byte) form_cursor_count#15 form_control::@8/(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 ) [ form_cursor_count#16 key_down_debounce#13 form_field_idx#18 key_right_debounce#13 ] ( main:2::menu:10::form_control:44 [ form_cursor_count#16 key_down_debounce#13 form_field_idx#18 key_right_debounce#13 ] )
|
||||
[72] return [ form_cursor_count#16 key_down_debounce#13 form_field_idx#18 key_right_debounce#13 ] ( main:2::menu:10::form_control:44 [ form_cursor_count#16 key_down_debounce#13 form_field_idx#18 key_right_debounce#13 ] )
|
||||
to:@return
|
||||
form_control::@34: scope:[form_control] from form_control::@19
|
||||
[73] phi() [ key_right_debounce#11 key_down_debounce#23 form_field_idx#37 ] ( main:2::menu:10::form_control:44 [ key_right_debounce#11 key_down_debounce#23 form_field_idx#37 ] )
|
||||
to:form_control::@8
|
||||
form_control::@6: scope:[form_control] from form_control::@31
|
||||
[74] (byte) form_field_idx#38 ← -- (byte) form_field_idx#14 [ key_right_debounce#11 key_down_debounce#23 form_field_idx#38 ] ( main:2::menu:10::form_control:44 [ key_right_debounce#11 key_down_debounce#23 form_field_idx#38 ] )
|
||||
[75] if((byte) form_field_idx#38!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@35 [ key_right_debounce#11 key_down_debounce#23 form_field_idx#38 ] ( main:2::menu:10::form_control:44 [ key_right_debounce#11 key_down_debounce#23 form_field_idx#38 ] )
|
||||
to:form_control::@8
|
||||
form_control::@35: scope:[form_control] from form_control::@6
|
||||
[76] phi() [ key_right_debounce#11 key_down_debounce#23 form_field_idx#38 ] ( main:2::menu:10::form_control:44 [ key_right_debounce#11 key_down_debounce#23 form_field_idx#38 ] )
|
||||
to:form_control::@8
|
||||
form_control::@4: scope:[form_control] from form_control::@17 form_control::@29
|
||||
[77] (byte) key_down_debounce#20 ← phi( form_control::@29/(byte) key_down_debounce#11 form_control::@17/(byte) key_down_debounce#23 ) [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 key_down_debounce#20 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 key_down_debounce#20 ] )
|
||||
[78] call keyboard_key_pressed param-assignment [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 keyboard_key_pressed::return#0 key_down_debounce#20 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 keyboard_key_pressed::return#0 key_down_debounce#20 ] )
|
||||
[79] (byte) keyboard_key_pressed::return#3 ← (byte) keyboard_key_pressed::return#0 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 key_down_debounce#20 keyboard_key_pressed::return#3 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 key_down_debounce#20 keyboard_key_pressed::return#3 ] )
|
||||
to:form_control::@30
|
||||
form_control::@30: scope:[form_control] from form_control::@4
|
||||
[80] (byte) form_control::key_right#0 ← (byte) keyboard_key_pressed::return#3 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 key_down_debounce#20 form_control::key_right#0 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 key_down_debounce#20 form_control::key_right#0 ] )
|
||||
[81] if((byte) form_control::key_right#0==(byte) key_right_debounce#11) goto form_control::@return [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 key_down_debounce#20 form_control::key_right#0 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 key_down_debounce#20 form_control::key_right#0 ] )
|
||||
to:form_control::@24
|
||||
form_control::@24: scope:[form_control] from form_control::@30
|
||||
[82] (byte) key_right_debounce#21 ← (byte) form_control::key_right#0 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 form_control::key_right#0 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 form_control::key_right#0 ] )
|
||||
[83] if((byte) form_control::key_right#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@return [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 ] )
|
||||
to:form_control::@25
|
||||
form_control::@25: scope:[form_control] from form_control::@24
|
||||
[84] phi() [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 ] )
|
||||
[85] call keyboard_key_pressed param-assignment [ form_field_idx#14 form_control::field#0 form_cursor_count#15 keyboard_key_pressed::return#0 key_down_debounce#20 key_right_debounce#21 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 keyboard_key_pressed::return#0 key_down_debounce#20 key_right_debounce#21 ] )
|
||||
[86] (byte) keyboard_key_pressed::return#10 ← (byte) keyboard_key_pressed::return#0 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 keyboard_key_pressed::return#10 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 keyboard_key_pressed::return#10 ] )
|
||||
to:form_control::@32
|
||||
form_control::@32: scope:[form_control] from form_control::@25
|
||||
[87] (byte~) form_control::$28 ← (byte) keyboard_key_pressed::return#10 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 form_control::$28 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 form_control::$28 ] )
|
||||
[88] if((byte~) form_control::$28!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@12 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 ] )
|
||||
to:form_control::@26
|
||||
form_control::@26: scope:[form_control] from form_control::@32
|
||||
[89] (byte/signed word/word/dword/signed dword~) form_control::$31 ← *((const byte[]) form_fields_val#0 + (byte) form_field_idx#14) + (byte/signed byte/word/signed word/dword/signed dword) 1 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 form_control::$31 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 form_control::$31 ] )
|
||||
[90] (byte/word/dword~) form_control::$32 ← (byte/signed word/word/dword/signed dword~) form_control::$31 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 form_control::$32 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 form_control::$32 ] )
|
||||
[91] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#14) ← (byte/word/dword~) form_control::$32 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 ] )
|
||||
to:form_control::@13
|
||||
form_control::@13: scope:[form_control] from form_control::@12 form_control::@26
|
||||
[92] *((byte*) form_control::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#14)) [ form_field_idx#14 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 ] )
|
||||
to:form_control::@return
|
||||
form_control::@12: scope:[form_control] from form_control::@32
|
||||
[93] (byte/signed word/word/dword/signed dword~) form_control::$33 ← *((const byte[]) form_fields_val#0 + (byte) form_field_idx#14) - (byte/signed byte/word/signed word/dword/signed dword) 1 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 form_control::$33 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 form_control::$33 ] )
|
||||
[94] (byte/word/dword~) form_control::$34 ← (byte/signed word/word/dword/signed dword~) form_control::$33 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 form_control::$34 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 form_control::$34 ] )
|
||||
[95] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#14) ← (byte/word/dword~) form_control::$34 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 ] ( main:2::menu:10::form_control:44 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 ] )
|
||||
to:form_control::@13
|
||||
form_control::@2: scope:[form_control] from form_control::@1
|
||||
[96] (byte~) form_control::$7 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 form_control::$7 ] ( main:2::menu:10::form_control:44 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 form_control::$7 ] )
|
||||
[97] *((byte*) form_control::field#0) ← (byte~) form_control::$7 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 ] ( main:2::menu:10::form_control:44 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 ] )
|
||||
to:form_control::@3
|
||||
form_control::@33: scope:[form_control] from form_control::@28
|
||||
[98] phi() [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#5 ] ( main:2::menu:10::form_control:44 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#5 ] )
|
||||
to:form_control::@1
|
||||
keyboard_key_pressed: scope:[keyboard_key_pressed] from form_control::@18 form_control::@25 form_control::@3 form_control::@4
|
||||
[99] (byte) keyboard_key_pressed::key#4 ← phi( form_control::@18/(const byte) KEY_RSHIFT#0 form_control::@25/(const byte) KEY_RSHIFT#0 form_control::@3/(const byte) KEY_CRSR_DOWN#0 form_control::@4/(const byte) KEY_CRSR_RIGHT#0 ) [ keyboard_key_pressed::key#4 ] ( main:2::menu:10::form_control:44::keyboard_key_pressed:56 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 keyboard_key_pressed::key#4 ] main:2::menu:10::form_control:44::keyboard_key_pressed:64 [ form_field_idx#14 key_right_debounce#11 key_down_debounce#23 keyboard_key_pressed::key#4 ] main:2::menu:10::form_control:44::keyboard_key_pressed:78 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 key_down_debounce#20 keyboard_key_pressed::key#4 ] main:2::menu:10::form_control:44::keyboard_key_pressed:85 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 keyboard_key_pressed::key#4 ] )
|
||||
[100] (byte) keyboard_key_pressed::colidx#0 ← (byte) keyboard_key_pressed::key#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_key_pressed::key#4 keyboard_key_pressed::colidx#0 ] ( main:2::menu:10::form_control:44::keyboard_key_pressed:56 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 keyboard_key_pressed::key#4 keyboard_key_pressed::colidx#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:64 [ form_field_idx#14 key_right_debounce#11 key_down_debounce#23 keyboard_key_pressed::key#4 keyboard_key_pressed::colidx#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:78 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 key_down_debounce#20 keyboard_key_pressed::key#4 keyboard_key_pressed::colidx#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:85 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 keyboard_key_pressed::key#4 keyboard_key_pressed::colidx#0 ] )
|
||||
[101] (byte) keyboard_key_pressed::rowidx#0 ← (byte) keyboard_key_pressed::key#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] ( main:2::menu:10::form_control:44::keyboard_key_pressed:56 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:64 [ form_field_idx#14 key_right_debounce#11 key_down_debounce#23 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:78 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 key_down_debounce#20 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:85 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] )
|
||||
[102] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_key_pressed::rowidx#0 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::rowid#0 ] ( main:2::menu:10::form_control:44::keyboard_key_pressed:56 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 keyboard_key_pressed::colidx#0 keyboard_matrix_read::rowid#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:64 [ form_field_idx#14 key_right_debounce#11 key_down_debounce#23 keyboard_key_pressed::colidx#0 keyboard_matrix_read::rowid#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:78 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 key_down_debounce#20 keyboard_key_pressed::colidx#0 keyboard_matrix_read::rowid#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:85 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 keyboard_key_pressed::colidx#0 keyboard_matrix_read::rowid#0 ] )
|
||||
[103] call keyboard_matrix_read param-assignment [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] ( main:2::menu:10::form_control:44::keyboard_key_pressed:56 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:64 [ form_field_idx#14 key_right_debounce#11 key_down_debounce#23 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:78 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 key_down_debounce#20 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:85 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] )
|
||||
[104] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#2 ] ( main:2::menu:10::form_control:44::keyboard_key_pressed:56 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#2 ] main:2::menu:10::form_control:44::keyboard_key_pressed:64 [ form_field_idx#14 key_right_debounce#11 key_down_debounce#23 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#2 ] main:2::menu:10::form_control:44::keyboard_key_pressed:78 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 key_down_debounce#20 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#2 ] main:2::menu:10::form_control:44::keyboard_key_pressed:85 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#2 ] )
|
||||
to:keyboard_key_pressed::@2
|
||||
keyboard_key_pressed::@2: scope:[keyboard_key_pressed] from keyboard_key_pressed
|
||||
[44] (byte~) keyboard_key_pressed::$2 ← (byte) keyboard_matrix_read::return#2 [ keyboard_key_pressed::$2 ] ( main:2::menu:9::keyboard_key_pressed:37 [ keyboard_key_pressed::$2 ] )
|
||||
[45] (byte) keyboard_key_pressed::return#0 ← (byte~) keyboard_key_pressed::$2 & *((const byte[]) keyboard_matrix_col_bitmask#0+(const byte) keyboard_key_pressed::colidx#0) [ keyboard_key_pressed::return#0 ] ( main:2::menu:9::keyboard_key_pressed:37 [ keyboard_key_pressed::return#0 ] )
|
||||
[105] (byte~) keyboard_key_pressed::$2 ← (byte) keyboard_matrix_read::return#2 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::$2 ] ( main:2::menu:10::form_control:44::keyboard_key_pressed:56 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 keyboard_key_pressed::colidx#0 keyboard_key_pressed::$2 ] main:2::menu:10::form_control:44::keyboard_key_pressed:64 [ form_field_idx#14 key_right_debounce#11 key_down_debounce#23 keyboard_key_pressed::colidx#0 keyboard_key_pressed::$2 ] main:2::menu:10::form_control:44::keyboard_key_pressed:78 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 key_down_debounce#20 keyboard_key_pressed::colidx#0 keyboard_key_pressed::$2 ] main:2::menu:10::form_control:44::keyboard_key_pressed:85 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 keyboard_key_pressed::colidx#0 keyboard_key_pressed::$2 ] )
|
||||
[106] (byte) keyboard_key_pressed::return#0 ← (byte~) keyboard_key_pressed::$2 & *((const byte[]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#0) [ keyboard_key_pressed::return#0 ] ( main:2::menu:10::form_control:44::keyboard_key_pressed:56 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 keyboard_key_pressed::return#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:64 [ form_field_idx#14 key_right_debounce#11 key_down_debounce#23 keyboard_key_pressed::return#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:78 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 key_down_debounce#20 keyboard_key_pressed::return#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:85 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 keyboard_key_pressed::return#0 ] )
|
||||
to:keyboard_key_pressed::@return
|
||||
keyboard_key_pressed::@return: scope:[keyboard_key_pressed] from keyboard_key_pressed::@2
|
||||
[46] return [ keyboard_key_pressed::return#0 ] ( main:2::menu:9::keyboard_key_pressed:37 [ keyboard_key_pressed::return#0 ] )
|
||||
[107] return [ keyboard_key_pressed::return#0 ] ( main:2::menu:10::form_control:44::keyboard_key_pressed:56 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 keyboard_key_pressed::return#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:64 [ form_field_idx#14 key_right_debounce#11 key_down_debounce#23 keyboard_key_pressed::return#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:78 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 key_down_debounce#20 keyboard_key_pressed::return#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:85 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 keyboard_key_pressed::return#0 ] )
|
||||
to:@return
|
||||
keyboard_matrix_read: scope:[keyboard_matrix_read] from keyboard_key_pressed
|
||||
[47] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0+(const byte) keyboard_key_pressed::rowidx#0) [ ] ( main:2::menu:9::keyboard_key_pressed:37::keyboard_matrix_read:42 [ ] )
|
||||
[48] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::menu:9::keyboard_key_pressed:37::keyboard_matrix_read:42 [ keyboard_matrix_read::return#0 ] )
|
||||
[108] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::menu:10::form_control:44::keyboard_key_pressed:56::keyboard_matrix_read:103 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 keyboard_key_pressed::colidx#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:64::keyboard_matrix_read:103 [ form_field_idx#14 key_right_debounce#11 key_down_debounce#23 keyboard_key_pressed::colidx#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:78::keyboard_matrix_read:103 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 key_down_debounce#20 keyboard_key_pressed::colidx#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:85::keyboard_matrix_read:103 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 keyboard_key_pressed::colidx#0 ] )
|
||||
[109] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::menu:10::form_control:44::keyboard_key_pressed:56::keyboard_matrix_read:103 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:64::keyboard_matrix_read:103 [ form_field_idx#14 key_right_debounce#11 key_down_debounce#23 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:78::keyboard_matrix_read:103 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 key_down_debounce#20 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:85::keyboard_matrix_read:103 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] )
|
||||
to:keyboard_matrix_read::@return
|
||||
keyboard_matrix_read::@return: scope:[keyboard_matrix_read] from keyboard_matrix_read
|
||||
[49] return [ keyboard_matrix_read::return#0 ] ( main:2::menu:9::keyboard_key_pressed:37::keyboard_matrix_read:42 [ keyboard_matrix_read::return#0 ] )
|
||||
[110] return [ keyboard_matrix_read::return#0 ] ( main:2::menu:10::form_control:44::keyboard_key_pressed:56::keyboard_matrix_read:103 [ key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:64::keyboard_matrix_read:103 [ form_field_idx#14 key_right_debounce#11 key_down_debounce#23 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:78::keyboard_matrix_read:103 [ form_field_idx#14 key_right_debounce#11 form_control::field#0 form_cursor_count#15 key_down_debounce#20 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:10::form_control:44::keyboard_key_pressed:85::keyboard_matrix_read:103 [ form_field_idx#14 form_control::field#0 form_cursor_count#15 key_down_debounce#20 key_right_debounce#21 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] )
|
||||
to:@return
|
||||
print_str_lines: scope:[print_str_lines] from menu::@15
|
||||
[50] phi() [ ] ( main:2::menu:9::print_str_lines:33 [ ] )
|
||||
form_field_ptr: scope:[form_field_ptr] from form_control form_render_values::@1
|
||||
[111] (byte) form_field_ptr::field_idx#2 ← phi( form_control/(byte) form_field_ptr::field_idx#1 form_render_values::@1/(byte) form_field_ptr::field_idx#0 ) [ form_field_ptr::field_idx#2 ] ( main:2::menu:10::form_control:44::form_field_ptr:46 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_field_ptr::field_idx#2 ] main:2::menu:10::form_render_values:38::form_field_ptr:120 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_render_values::idx#2 form_field_ptr::field_idx#2 ] )
|
||||
[112] (byte) form_field_ptr::y#0 ← *((const byte[]) form_fields_y#0 + (byte) form_field_ptr::field_idx#2) [ form_field_ptr::field_idx#2 form_field_ptr::y#0 ] ( main:2::menu:10::form_control:44::form_field_ptr:46 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_field_ptr::field_idx#2 form_field_ptr::y#0 ] main:2::menu:10::form_render_values:38::form_field_ptr:120 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::y#0 ] )
|
||||
[113] (word~) form_field_ptr::$2 ← *((const byte[25]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[25]) form_line_lo#0 + (byte) form_field_ptr::y#0) [ form_field_ptr::field_idx#2 form_field_ptr::$2 ] ( main:2::menu:10::form_control:44::form_field_ptr:46 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::menu:10::form_render_values:38::form_field_ptr:120 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] )
|
||||
[114] (byte) form_field_ptr::x#0 ← *((const byte[]) form_fields_x#0 + (byte) form_field_ptr::field_idx#2) [ form_field_ptr::$2 form_field_ptr::x#0 ] ( main:2::menu:10::form_control:44::form_field_ptr:46 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_field_ptr::$2 form_field_ptr::x#0 ] main:2::menu:10::form_render_values:38::form_field_ptr:120 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_render_values::idx#2 form_field_ptr::$2 form_field_ptr::x#0 ] )
|
||||
[115] (byte*) form_field_ptr::return#0 ← (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 [ form_field_ptr::return#0 ] ( main:2::menu:10::form_control:44::form_field_ptr:46 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_field_ptr::return#0 ] main:2::menu:10::form_render_values:38::form_field_ptr:120 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_render_values::idx#2 form_field_ptr::return#0 ] )
|
||||
to:form_field_ptr::@return
|
||||
form_field_ptr::@return: scope:[form_field_ptr] from form_field_ptr
|
||||
[116] return [ form_field_ptr::return#0 ] ( main:2::menu:10::form_control:44::form_field_ptr:46 [ form_cursor_count#13 key_down_debounce#11 form_field_idx#14 key_right_debounce#11 form_field_ptr::return#0 ] main:2::menu:10::form_render_values:38::form_field_ptr:120 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_render_values::idx#2 form_field_ptr::return#0 ] )
|
||||
to:@return
|
||||
form_render_values: scope:[form_render_values] from menu::@20
|
||||
[117] phi() [ ] ( main:2::menu:10::form_render_values:38 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
to:form_render_values::@1
|
||||
form_render_values::@1: scope:[form_render_values] from form_render_values form_render_values::@3
|
||||
[118] (byte) form_render_values::idx#2 ← phi( form_render_values/(byte/signed byte/word/signed word/dword/signed dword) 0 form_render_values::@3/(byte) form_render_values::idx#1 ) [ form_render_values::idx#2 ] ( main:2::menu:10::form_render_values:38 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_render_values::idx#2 ] )
|
||||
[119] (byte) form_field_ptr::field_idx#0 ← (byte) form_render_values::idx#2 [ form_field_ptr::field_idx#0 form_render_values::idx#2 ] ( main:2::menu:10::form_render_values:38 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_field_ptr::field_idx#0 form_render_values::idx#2 ] )
|
||||
[120] call form_field_ptr param-assignment [ form_field_ptr::return#0 form_render_values::idx#2 ] ( main:2::menu:10::form_render_values:38 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_field_ptr::return#0 form_render_values::idx#2 ] )
|
||||
[121] (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#0 [ form_render_values::idx#2 form_field_ptr::return#2 ] ( main:2::menu:10::form_render_values:38 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_render_values::idx#2 form_field_ptr::return#2 ] )
|
||||
to:form_render_values::@3
|
||||
form_render_values::@3: scope:[form_render_values] from form_render_values::@1
|
||||
[122] (byte*) form_render_values::field#0 ← (byte*) form_field_ptr::return#2 [ form_render_values::idx#2 form_render_values::field#0 ] ( main:2::menu:10::form_render_values:38 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_render_values::idx#2 form_render_values::field#0 ] )
|
||||
[123] *((byte*) form_render_values::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) [ form_render_values::idx#2 ] ( main:2::menu:10::form_render_values:38 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_render_values::idx#2 ] )
|
||||
[124] (byte) form_render_values::idx#1 ← ++ (byte) form_render_values::idx#2 [ form_render_values::idx#1 ] ( main:2::menu:10::form_render_values:38 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_render_values::idx#1 ] )
|
||||
[125] if((byte) form_render_values::idx#1<(const byte) form_fields_cnt#0) goto form_render_values::@1 [ form_render_values::idx#1 ] ( main:2::menu:10::form_render_values:38 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_render_values::idx#1 ] )
|
||||
to:form_render_values::@return
|
||||
form_render_values::@return: scope:[form_render_values] from form_render_values::@3
|
||||
[126] return [ ] ( main:2::menu:10::form_render_values:38 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
to:@return
|
||||
form_set_screen: scope:[form_set_screen] from menu::@19
|
||||
[127] phi() [ ] ( main:2::menu:10::form_set_screen:36 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
to:form_set_screen::@1
|
||||
form_set_screen::@1: scope:[form_set_screen] from form_set_screen form_set_screen::@1
|
||||
[128] (byte) form_set_screen::y#2 ← phi( form_set_screen/(byte/signed byte/word/signed word/dword/signed dword) 0 form_set_screen::@1/(byte) form_set_screen::y#1 ) [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::menu:10::form_set_screen:36 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_set_screen::line#2 form_set_screen::y#2 ] )
|
||||
[128] (byte*) form_set_screen::line#2 ← phi( form_set_screen/(const byte*) menu::SCREEN#0 form_set_screen::@1/(byte*) form_set_screen::line#1 ) [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::menu:10::form_set_screen:36 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_set_screen::line#2 form_set_screen::y#2 ] )
|
||||
[129] (byte~) form_set_screen::$0 ← < (byte*) form_set_screen::line#2 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$0 ] ( main:2::menu:10::form_set_screen:36 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$0 ] )
|
||||
[130] *((const byte[25]) form_line_lo#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$0 [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::menu:10::form_set_screen:36 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_set_screen::line#2 form_set_screen::y#2 ] )
|
||||
[131] (byte~) form_set_screen::$1 ← > (byte*) form_set_screen::line#2 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$1 ] ( main:2::menu:10::form_set_screen:36 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$1 ] )
|
||||
[132] *((const byte[25]) form_line_hi#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$1 [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::menu:10::form_set_screen:36 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_set_screen::line#2 form_set_screen::y#2 ] )
|
||||
[133] (byte*) form_set_screen::line#1 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ form_set_screen::y#2 form_set_screen::line#1 ] ( main:2::menu:10::form_set_screen:36 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_set_screen::y#2 form_set_screen::line#1 ] )
|
||||
[134] (byte) form_set_screen::y#1 ← ++ (byte) form_set_screen::y#2 [ form_set_screen::line#1 form_set_screen::y#1 ] ( main:2::menu:10::form_set_screen:36 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_set_screen::line#1 form_set_screen::y#1 ] )
|
||||
[135] if((byte) form_set_screen::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 25) goto form_set_screen::@1 [ form_set_screen::line#1 form_set_screen::y#1 ] ( main:2::menu:10::form_set_screen:36 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 form_set_screen::line#1 form_set_screen::y#1 ] )
|
||||
to:form_set_screen::@return
|
||||
form_set_screen::@return: scope:[form_set_screen] from form_set_screen::@1
|
||||
[136] return [ ] ( main:2::menu:10::form_set_screen:36 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
to:@return
|
||||
print_str_lines: scope:[print_str_lines] from menu::@18
|
||||
[137] phi() [ ] ( main:2::menu:10::print_str_lines:34 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
to:print_str_lines::@1
|
||||
print_str_lines::@1: scope:[print_str_lines] from print_str_lines print_str_lines::@9
|
||||
[51] (byte*) print_line_cursor#17 ← phi( print_str_lines/(const byte*) menu::SCREEN#0 print_str_lines::@9/(byte*) print_line_cursor#19 ) [ print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] ( main:2::menu:9::print_str_lines:33 [ print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] )
|
||||
[51] (byte*) print_char_cursor#19 ← phi( print_str_lines/(const byte*) menu::SCREEN#0 print_str_lines::@9/(byte*~) print_char_cursor#53 ) [ print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] ( main:2::menu:9::print_str_lines:33 [ print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] )
|
||||
[51] (byte*) print_str_lines::str#2 ← phi( print_str_lines/(const string) MENU_TEXT#0 print_str_lines::@9/(byte*) print_str_lines::str#0 ) [ print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] ( main:2::menu:9::print_str_lines:33 [ print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] )
|
||||
[52] if(*((byte*) print_str_lines::str#2)!=(byte) '@') goto print_str_lines::@4 [ print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] ( main:2::menu:9::print_str_lines:33 [ print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] )
|
||||
[138] (byte*) print_line_cursor#17 ← phi( print_str_lines/(const byte*) menu::SCREEN#0 print_str_lines::@9/(byte*) print_line_cursor#19 ) [ print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] ( main:2::menu:10::print_str_lines:34 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] )
|
||||
[138] (byte*) print_char_cursor#19 ← phi( print_str_lines/(const byte*) menu::SCREEN#0 print_str_lines::@9/(byte*~) print_char_cursor#59 ) [ print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] ( main:2::menu:10::print_str_lines:34 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] )
|
||||
[138] (byte*) print_str_lines::str#2 ← phi( print_str_lines/(const string) MENU_TEXT#0 print_str_lines::@9/(byte*) print_str_lines::str#0 ) [ print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] ( main:2::menu:10::print_str_lines:34 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] )
|
||||
[139] if(*((byte*) print_str_lines::str#2)!=(byte) '@') goto print_str_lines::@4 [ print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] ( main:2::menu:10::print_str_lines:34 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] )
|
||||
to:print_str_lines::@return
|
||||
print_str_lines::@return: scope:[print_str_lines] from print_str_lines::@1
|
||||
[53] return [ ] ( main:2::menu:9::print_str_lines:33 [ ] )
|
||||
[140] return [ ] ( main:2::menu:10::print_str_lines:34 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
to:@return
|
||||
print_str_lines::@4: scope:[print_str_lines] from print_str_lines::@1 print_str_lines::@5
|
||||
[54] (byte*) print_char_cursor#17 ← phi( print_str_lines::@1/(byte*) print_char_cursor#19 print_str_lines::@5/(byte*) print_char_cursor#32 ) [ print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 ] ( main:2::menu:9::print_str_lines:33 [ print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 ] )
|
||||
[54] (byte*) print_str_lines::str#3 ← phi( print_str_lines::@1/(byte*) print_str_lines::str#2 print_str_lines::@5/(byte*) print_str_lines::str#0 ) [ print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 ] ( main:2::menu:9::print_str_lines:33 [ print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 ] )
|
||||
[55] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#3) [ print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 print_str_lines::ch#0 ] ( main:2::menu:9::print_str_lines:33 [ print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 print_str_lines::ch#0 ] )
|
||||
[56] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#3 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] ( main:2::menu:9::print_str_lines:33 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] )
|
||||
[57] if((byte) print_str_lines::ch#0==(byte) '@') goto print_str_lines::@5 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] ( main:2::menu:9::print_str_lines:33 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] )
|
||||
[141] (byte*) print_char_cursor#17 ← phi( print_str_lines::@1/(byte*) print_char_cursor#19 print_str_lines::@5/(byte*) print_char_cursor#32 ) [ print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 ] ( main:2::menu:10::print_str_lines:34 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 ] )
|
||||
[141] (byte*) print_str_lines::str#3 ← phi( print_str_lines::@1/(byte*) print_str_lines::str#2 print_str_lines::@5/(byte*) print_str_lines::str#0 ) [ print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 ] ( main:2::menu:10::print_str_lines:34 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 ] )
|
||||
[142] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#3) [ print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 print_str_lines::ch#0 ] ( main:2::menu:10::print_str_lines:34 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 print_str_lines::ch#0 ] )
|
||||
[143] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#3 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] ( main:2::menu:10::print_str_lines:34 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] )
|
||||
[144] if((byte) print_str_lines::ch#0==(byte) '@') goto print_str_lines::@5 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] ( main:2::menu:10::print_str_lines:34 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] )
|
||||
to:print_str_lines::@8
|
||||
print_str_lines::@8: scope:[print_str_lines] from print_str_lines::@4
|
||||
[58] *((byte*) print_char_cursor#17) ← (byte) print_str_lines::ch#0 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] ( main:2::menu:9::print_str_lines:33 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] )
|
||||
[59] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#17 [ print_line_cursor#17 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] ( main:2::menu:9::print_str_lines:33 [ print_line_cursor#17 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] )
|
||||
[145] *((byte*) print_char_cursor#17) ← (byte) print_str_lines::ch#0 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] ( main:2::menu:10::print_str_lines:34 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] )
|
||||
[146] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#17 [ print_line_cursor#17 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] ( main:2::menu:10::print_str_lines:34 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_line_cursor#17 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] )
|
||||
to:print_str_lines::@5
|
||||
print_str_lines::@5: scope:[print_str_lines] from print_str_lines::@4 print_str_lines::@8
|
||||
[60] (byte*) print_char_cursor#32 ← phi( print_str_lines::@4/(byte*) print_char_cursor#17 print_str_lines::@8/(byte*) print_char_cursor#1 ) [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#32 print_str_lines::ch#0 ] ( main:2::menu:9::print_str_lines:33 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#32 print_str_lines::ch#0 ] )
|
||||
[61] if((byte) print_str_lines::ch#0!=(byte) '@') goto print_str_lines::@4 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#32 ] ( main:2::menu:9::print_str_lines:33 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#32 ] )
|
||||
[147] (byte*) print_char_cursor#32 ← phi( print_str_lines::@4/(byte*) print_char_cursor#17 print_str_lines::@8/(byte*) print_char_cursor#1 ) [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#32 print_str_lines::ch#0 ] ( main:2::menu:10::print_str_lines:34 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_line_cursor#17 print_str_lines::str#0 print_char_cursor#32 print_str_lines::ch#0 ] )
|
||||
[148] if((byte) print_str_lines::ch#0!=(byte) '@') goto print_str_lines::@4 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#32 ] ( main:2::menu:10::print_str_lines:34 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_line_cursor#17 print_str_lines::str#0 print_char_cursor#32 ] )
|
||||
to:print_str_lines::@9
|
||||
print_str_lines::@9: scope:[print_str_lines] from print_str_lines::@5
|
||||
[62] phi() [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#32 ] ( main:2::menu:9::print_str_lines:33 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#32 ] )
|
||||
[63] call print_ln param-assignment [ print_str_lines::str#0 print_line_cursor#19 ] ( main:2::menu:9::print_str_lines:33 [ print_str_lines::str#0 print_line_cursor#19 ] )
|
||||
[64] (byte*~) print_char_cursor#53 ← (byte*) print_line_cursor#19 [ print_str_lines::str#0 print_char_cursor#53 print_line_cursor#19 ] ( main:2::menu:9::print_str_lines:33 [ print_str_lines::str#0 print_char_cursor#53 print_line_cursor#19 ] )
|
||||
[149] phi() [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#32 ] ( main:2::menu:10::print_str_lines:34 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_line_cursor#17 print_str_lines::str#0 print_char_cursor#32 ] )
|
||||
[150] call print_ln param-assignment [ print_str_lines::str#0 print_line_cursor#19 ] ( main:2::menu:10::print_str_lines:34 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_str_lines::str#0 print_line_cursor#19 ] )
|
||||
[151] (byte*~) print_char_cursor#59 ← (byte*) print_line_cursor#19 [ print_str_lines::str#0 print_char_cursor#59 print_line_cursor#19 ] ( main:2::menu:10::print_str_lines:34 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_str_lines::str#0 print_char_cursor#59 print_line_cursor#19 ] )
|
||||
to:print_str_lines::@1
|
||||
print_ln: scope:[print_ln] from print_str_lines::@9
|
||||
[65] phi() [ print_line_cursor#17 print_char_cursor#32 ] ( main:2::menu:9::print_str_lines:33::print_ln:63 [ print_str_lines::str#0 print_line_cursor#17 print_char_cursor#32 ] )
|
||||
[152] phi() [ print_line_cursor#17 print_char_cursor#32 ] ( main:2::menu:10::print_str_lines:34::print_ln:150 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_str_lines::str#0 print_line_cursor#17 print_char_cursor#32 ] )
|
||||
to:print_ln::@1
|
||||
print_ln::@1: scope:[print_ln] from print_ln print_ln::@1
|
||||
[66] (byte*) print_line_cursor#18 ← phi( print_ln/(byte*) print_line_cursor#17 print_ln::@1/(byte*) print_line_cursor#19 ) [ print_char_cursor#32 print_line_cursor#18 ] ( main:2::menu:9::print_str_lines:33::print_ln:63 [ print_str_lines::str#0 print_char_cursor#32 print_line_cursor#18 ] )
|
||||
[67] (byte*) print_line_cursor#19 ← (byte*) print_line_cursor#18 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#19 print_char_cursor#32 ] ( main:2::menu:9::print_str_lines:33::print_ln:63 [ print_str_lines::str#0 print_line_cursor#19 print_char_cursor#32 ] )
|
||||
[68] if((byte*) print_line_cursor#19<(byte*) print_char_cursor#32) goto print_ln::@1 [ print_line_cursor#19 print_char_cursor#32 ] ( main:2::menu:9::print_str_lines:33::print_ln:63 [ print_str_lines::str#0 print_line_cursor#19 print_char_cursor#32 ] )
|
||||
[153] (byte*) print_line_cursor#18 ← phi( print_ln/(byte*) print_line_cursor#17 print_ln::@1/(byte*) print_line_cursor#19 ) [ print_char_cursor#32 print_line_cursor#18 ] ( main:2::menu:10::print_str_lines:34::print_ln:150 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_str_lines::str#0 print_char_cursor#32 print_line_cursor#18 ] )
|
||||
[154] (byte*) print_line_cursor#19 ← (byte*) print_line_cursor#18 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#19 print_char_cursor#32 ] ( main:2::menu:10::print_str_lines:34::print_ln:150 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_str_lines::str#0 print_line_cursor#19 print_char_cursor#32 ] )
|
||||
[155] if((byte*) print_line_cursor#19<(byte*) print_char_cursor#32) goto print_ln::@1 [ print_line_cursor#19 print_char_cursor#32 ] ( main:2::menu:10::print_str_lines:34::print_ln:150 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_str_lines::str#0 print_line_cursor#19 print_char_cursor#32 ] )
|
||||
to:print_ln::@return
|
||||
print_ln::@return: scope:[print_ln] from print_ln::@1
|
||||
[69] return [ print_line_cursor#19 ] ( main:2::menu:9::print_str_lines:33::print_ln:63 [ print_str_lines::str#0 print_line_cursor#19 ] )
|
||||
[156] return [ print_line_cursor#19 ] ( main:2::menu:10::print_str_lines:34::print_ln:150 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_str_lines::str#0 print_line_cursor#19 ] )
|
||||
to:@return
|
||||
print_cls: scope:[print_cls] from menu::@14
|
||||
[70] phi() [ ] ( main:2::menu:9::print_cls:31 [ ] )
|
||||
print_cls: scope:[print_cls] from menu::@17
|
||||
[157] phi() [ ] ( main:2::menu:10::print_cls:32 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
to:print_cls::@1
|
||||
print_cls::@1: scope:[print_cls] from print_cls print_cls::@1
|
||||
[71] (byte*) print_cls::sc#2 ← phi( print_cls/(const byte*) menu::SCREEN#0 print_cls::@1/(byte*) print_cls::sc#1 ) [ print_cls::sc#2 ] ( main:2::menu:9::print_cls:31 [ print_cls::sc#2 ] )
|
||||
[72] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::menu:9::print_cls:31 [ print_cls::sc#2 ] )
|
||||
[73] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::menu:9::print_cls:31 [ print_cls::sc#1 ] )
|
||||
[74] if((byte*) print_cls::sc#1!=(const byte*) menu::SCREEN#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::menu:9::print_cls:31 [ print_cls::sc#1 ] )
|
||||
[158] (byte*) print_cls::sc#2 ← phi( print_cls/(const byte*) menu::SCREEN#0 print_cls::@1/(byte*) print_cls::sc#1 ) [ print_cls::sc#2 ] ( main:2::menu:10::print_cls:32 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_cls::sc#2 ] )
|
||||
[159] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::menu:10::print_cls:32 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_cls::sc#2 ] )
|
||||
[160] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::menu:10::print_cls:32 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_cls::sc#1 ] )
|
||||
[161] if((byte*) print_cls::sc#1!=(const byte*) menu::SCREEN#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::menu:10::print_cls:32 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 print_cls::sc#1 ] )
|
||||
to:print_cls::@return
|
||||
print_cls::@return: scope:[print_cls] from print_cls::@1
|
||||
[75] return [ ] ( main:2::menu:9::print_cls:31 [ ] )
|
||||
[162] return [ ] ( main:2::menu:10::print_cls:32 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
to:@return
|
||||
print_set_screen: scope:[print_set_screen] from menu::@8
|
||||
[76] phi() [ ] ( main:2::menu:9::print_set_screen:29 [ ] )
|
||||
print_set_screen: scope:[print_set_screen] from menu::@10
|
||||
[163] phi() [ ] ( main:2::menu:10::print_set_screen:30 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
to:print_set_screen::@return
|
||||
print_set_screen::@return: scope:[print_set_screen] from print_set_screen
|
||||
[77] return [ ] ( main:2::menu:9::print_set_screen:29 [ ] )
|
||||
[164] return [ ] ( main:2::menu:10::print_set_screen:30 [ form_cursor_count#1 key_down_debounce#1 form_field_idx#1 key_right_debounce#1 ] )
|
||||
to:@return
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,4 @@
|
||||
(label) @21
|
||||
(label) @25
|
||||
(label) @begin
|
||||
(label) @end
|
||||
(byte*) BGCOL
|
||||
@ -33,12 +33,20 @@
|
||||
(const byte*) DTV_PALETTE#0 DTV_PALETTE = ((byte*))(word/dword/signed dword) 53760
|
||||
(byte[16]) DTV_PALETTE_DEFAULT
|
||||
(const byte[16]) DTV_PALETTE_DEFAULT#0 DTV_PALETTE_DEFAULT = { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 54, (byte/word/signed word/dword/signed dword) 190, (byte/signed byte/word/signed word/dword/signed dword) 88, (byte/word/signed word/dword/signed dword) 219, (byte/word/signed word/dword/signed dword) 134, (byte/word/signed word/dword/signed dword) 255, (byte/signed byte/word/signed word/dword/signed dword) 41, (byte/signed byte/word/signed word/dword/signed dword) 38, (byte/signed byte/word/signed word/dword/signed dword) 59, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/word/signed word/dword/signed dword) 223, (byte/word/signed word/dword/signed dword) 154, (byte/signed byte/word/signed word/dword/signed dword) 10 }
|
||||
(byte) KEY_SPACE
|
||||
(const byte) KEY_SPACE#0 KEY_SPACE = (byte/signed byte/word/signed word/dword/signed dword) 60
|
||||
(signed byte) FORM_CURSOR_BLINK
|
||||
(const signed byte) FORM_CURSOR_BLINK#0 FORM_CURSOR_BLINK = (byte/signed byte/word/signed word/dword/signed dword) 40
|
||||
(byte) KEY_CRSR_DOWN
|
||||
(const byte) KEY_CRSR_DOWN#0 KEY_CRSR_DOWN = (byte/signed byte/word/signed word/dword/signed dword) 7
|
||||
(byte) KEY_CRSR_RIGHT
|
||||
(const byte) KEY_CRSR_RIGHT#0 KEY_CRSR_RIGHT = (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
(byte) KEY_RSHIFT
|
||||
(const byte) KEY_RSHIFT#0 KEY_RSHIFT = (byte/signed byte/word/signed word/dword/signed dword) 52
|
||||
(byte) LIGHT_GREEN
|
||||
(const byte) LIGHT_GREEN#0 LIGHT_GREEN = (byte/signed byte/word/signed word/dword/signed dword) 13
|
||||
(byte[]) MENU_TEXT
|
||||
(const string) MENU_TEXT#0 MENU_TEXT = (string) " DTV GfxExplorer PRESET 8bpp pixel cell @"+(string) " CONTROL PLANE A PLANE B VIC II @"+(string) " bmm 0 patt p1 patt p2 screen s3 @"+(string) " mcm 0 start 00 start 00 gfx g4 @"+(string) " ecm 0 step 00 step 00 colors c5 @"+(string) " hicol 0 mod 00 mod 00 bgcol0 00 @"+(string) " line 0 bgcol1 00 @"+(string) " colof 0 borof 0 bgcol2 00 @"+(string) " chunk 0 overs 0 bgcol3 00 @"+(string) "@"
|
||||
(byte*) RASTER
|
||||
(const byte*) RASTER#0 RASTER = ((byte*))(word/dword/signed dword) 53266
|
||||
(byte*) VIC_CONTROL
|
||||
(const byte*) VIC_CONTROL#0 VIC_CONTROL = ((byte*))(word/dword/signed dword) 53265
|
||||
(byte*) VIC_CONTROL2
|
||||
@ -51,18 +59,136 @@
|
||||
(const byte*) VIC_MEMORY#0 VIC_MEMORY = ((byte*))(word/dword/signed dword) 53272
|
||||
(byte) VIC_RSEL
|
||||
(const byte) VIC_RSEL#0 VIC_RSEL = (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
(void()) form_control()
|
||||
(byte~) form_control::$13 reg byte a 4.0
|
||||
(byte~) form_control::$14 reg byte a 4.0
|
||||
(byte~) form_control::$28 reg byte a 4.0
|
||||
(byte/signed word/word/dword/signed dword~) form_control::$31 reg byte a 4.0
|
||||
(byte/word/dword~) form_control::$32 reg byte a 4.0
|
||||
(byte/signed word/word/dword/signed dword~) form_control::$33 reg byte a 4.0
|
||||
(byte/word/dword~) form_control::$34 reg byte a 4.0
|
||||
(byte/word/dword~) form_control::$6 reg byte a 4.0
|
||||
(byte~) form_control::$7 reg byte a 4.0
|
||||
(label) form_control::@1
|
||||
(label) form_control::@12
|
||||
(label) form_control::@13
|
||||
(label) form_control::@15
|
||||
(label) form_control::@17
|
||||
(label) form_control::@18
|
||||
(label) form_control::@19
|
||||
(label) form_control::@2
|
||||
(label) form_control::@24
|
||||
(label) form_control::@25
|
||||
(label) form_control::@26
|
||||
(label) form_control::@28
|
||||
(label) form_control::@29
|
||||
(label) form_control::@3
|
||||
(label) form_control::@30
|
||||
(label) form_control::@31
|
||||
(label) form_control::@32
|
||||
(label) form_control::@33
|
||||
(label) form_control::@34
|
||||
(label) form_control::@35
|
||||
(label) form_control::@4
|
||||
(label) form_control::@6
|
||||
(label) form_control::@8
|
||||
(label) form_control::@return
|
||||
(byte*) form_control::field
|
||||
(byte*) form_control::field#0 field zp ZP_WORD:5 0.44444444444444453
|
||||
(byte) form_control::key_down
|
||||
(byte) form_control::key_down#0 reg byte a 2.6666666666666665
|
||||
(byte) form_control::key_right
|
||||
(byte) form_control::key_right#0 reg byte a 2.6666666666666665
|
||||
(signed byte) form_cursor_count
|
||||
(signed byte) form_cursor_count#1 form_cursor_count zp ZP_BYTE:2 0.41935483870967744
|
||||
(signed byte) form_cursor_count#13 form_cursor_count zp ZP_BYTE:2 11.6
|
||||
(signed byte) form_cursor_count#15 form_cursor_count zp ZP_BYTE:2 0.3125
|
||||
(signed byte) form_cursor_count#16 form_cursor_count zp ZP_BYTE:2 35.66666666666666
|
||||
(signed byte) form_cursor_count#5 form_cursor_count zp ZP_BYTE:2 2.0
|
||||
(byte) form_field_idx
|
||||
(byte) form_field_idx#1 reg byte x 0.41935483870967744
|
||||
(byte) form_field_idx#14 reg byte x 2.666666666666665
|
||||
(byte) form_field_idx#18 reg byte x 36.33333333333332
|
||||
(byte) form_field_idx#30 reg byte x 6.0
|
||||
(byte) form_field_idx#37 reg byte x 2.0
|
||||
(byte) form_field_idx#38 reg byte x 2.0
|
||||
(byte*()) form_field_ptr((byte) form_field_ptr::field_idx)
|
||||
(word~) form_field_ptr::$2 $2 zp ZP_WORD:5 1.0
|
||||
(label) form_field_ptr::@return
|
||||
(byte*) form_field_ptr::field
|
||||
(byte) form_field_ptr::field_idx
|
||||
(byte) form_field_ptr::field_idx#0 field_idx zp ZP_BYTE:7 202.0
|
||||
(byte) form_field_ptr::field_idx#1 field_idx zp ZP_BYTE:7 4.0
|
||||
(byte) form_field_ptr::field_idx#2 field_idx zp ZP_BYTE:7 35.66666666666666
|
||||
(byte*) form_field_ptr::line
|
||||
(byte*) form_field_ptr::return
|
||||
(byte*) form_field_ptr::return#0 return zp ZP_WORD:5 26.25
|
||||
(byte*) form_field_ptr::return#2 return zp ZP_WORD:5 202.0
|
||||
(byte*) form_field_ptr::return#3 return zp ZP_WORD:5 4.0
|
||||
(byte) form_field_ptr::x
|
||||
(byte) form_field_ptr::x#0 reg byte a 4.0
|
||||
(byte) form_field_ptr::y
|
||||
(byte) form_field_ptr::y#0 reg byte a 6.0
|
||||
(byte) form_fields_cnt
|
||||
(const byte) form_fields_cnt#0 form_fields_cnt = (byte/signed byte/word/signed word/dword/signed dword) 9
|
||||
(byte[]) form_fields_val
|
||||
(const byte[]) form_fields_val#0 form_fields_val = { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 }
|
||||
(byte[]) form_fields_x
|
||||
(const byte[]) form_fields_x#0 form_fields_x = { (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 17 }
|
||||
(byte[]) form_fields_y
|
||||
(const byte[]) form_fields_y#0 form_fields_y = { (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 8 }
|
||||
(byte[25]) form_line_hi
|
||||
(const byte[25]) form_line_hi#0 form_line_hi = { fill( 25, 0) }
|
||||
(byte[25]) form_line_lo
|
||||
(const byte[25]) form_line_lo#0 form_line_lo = { fill( 25, 0) }
|
||||
(void()) form_render_values()
|
||||
(label) form_render_values::@1
|
||||
(label) form_render_values::@3
|
||||
(label) form_render_values::@return
|
||||
(byte*) form_render_values::field
|
||||
(byte*) form_render_values::field#0 field zp ZP_WORD:5 202.0
|
||||
(byte) form_render_values::idx
|
||||
(byte) form_render_values::idx#1 idx zp ZP_BYTE:7 151.5
|
||||
(byte) form_render_values::idx#2 idx zp ZP_BYTE:7 67.33333333333333
|
||||
(void()) form_set_screen((byte*) form_set_screen::screen)
|
||||
(byte~) form_set_screen::$0 reg byte a 202.0
|
||||
(byte~) form_set_screen::$1 reg byte a 202.0
|
||||
(label) form_set_screen::@1
|
||||
(label) form_set_screen::@return
|
||||
(byte*) form_set_screen::line
|
||||
(byte*) form_set_screen::line#1 line zp ZP_WORD:5 67.33333333333333
|
||||
(byte*) form_set_screen::line#2 line zp ZP_WORD:5 80.8
|
||||
(byte*) form_set_screen::screen
|
||||
(byte) form_set_screen::y
|
||||
(byte) form_set_screen::y#1 reg byte y 151.5
|
||||
(byte) form_set_screen::y#2 reg byte y 67.33333333333333
|
||||
(byte) key_down_debounce
|
||||
(byte) key_down_debounce#1 key_down_debounce zp ZP_BYTE:3 0.41935483870967744
|
||||
(byte) key_down_debounce#11 key_down_debounce zp ZP_BYTE:3 4.916666666666666
|
||||
(byte) key_down_debounce#13 key_down_debounce zp ZP_BYTE:3 36.33333333333332
|
||||
(byte) key_down_debounce#20 key_down_debounce zp ZP_BYTE:3 0.5263157894736842
|
||||
(byte) key_down_debounce#23 key_down_debounce zp ZP_BYTE:3 0.4
|
||||
(byte) key_right_debounce
|
||||
(byte) key_right_debounce#1 key_right_debounce zp ZP_BYTE:4 0.41935483870967744
|
||||
(byte) key_right_debounce#11 key_right_debounce zp ZP_BYTE:4 2.727272727272727
|
||||
(byte) key_right_debounce#13 key_right_debounce zp ZP_BYTE:4 36.33333333333332
|
||||
(byte) key_right_debounce#21 key_right_debounce zp ZP_BYTE:4 0.42857142857142855
|
||||
(byte()) keyboard_key_pressed((byte) keyboard_key_pressed::key)
|
||||
(byte~) keyboard_key_pressed::$2 reg byte a 4.0
|
||||
(label) keyboard_key_pressed::@2
|
||||
(label) keyboard_key_pressed::@return
|
||||
(byte) keyboard_key_pressed::colidx
|
||||
(const byte) keyboard_key_pressed::colidx#0 colidx = (const byte) KEY_SPACE#0&(byte/signed byte/word/signed word/dword/signed dword) 7
|
||||
(byte) keyboard_key_pressed::colidx#0 colidx zp ZP_BYTE:7 0.6666666666666666
|
||||
(byte) keyboard_key_pressed::key
|
||||
(byte) keyboard_key_pressed::key#4 reg byte y 2.0
|
||||
(byte) keyboard_key_pressed::return
|
||||
(byte) keyboard_key_pressed::return#0 reg byte a 34.33333333333333
|
||||
(byte) keyboard_key_pressed::return#2 reg byte a 202.0
|
||||
(byte) keyboard_key_pressed::return#0 reg byte a 1.6666666666666665
|
||||
(byte) keyboard_key_pressed::return#10 reg byte a 4.0
|
||||
(byte) keyboard_key_pressed::return#2 reg byte a 4.0
|
||||
(byte) keyboard_key_pressed::return#3 reg byte a 4.0
|
||||
(byte) keyboard_key_pressed::return#4 reg byte a 4.0
|
||||
(byte) keyboard_key_pressed::rowidx
|
||||
(const byte) keyboard_key_pressed::rowidx#0 rowidx = (const byte) KEY_SPACE#0>>(byte/signed byte/word/signed word/dword/signed dword) 3
|
||||
(byte) keyboard_key_pressed::rowidx#0 reg byte a 4.0
|
||||
(byte[]) keyboard_matrix_col_bitmask
|
||||
(const byte[]) keyboard_matrix_col_bitmask#0 keyboard_matrix_col_bitmask = { (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 16, (byte/signed byte/word/signed word/dword/signed dword) 32, (byte/signed byte/word/signed word/dword/signed dword) 64, (byte/word/signed word/dword/signed dword) 128 }
|
||||
(byte()) keyboard_matrix_read((byte) keyboard_matrix_read::rowid)
|
||||
@ -72,6 +198,7 @@
|
||||
(byte) keyboard_matrix_read::return#2 reg byte a 4.0
|
||||
(byte) keyboard_matrix_read::row_pressed_bits
|
||||
(byte) keyboard_matrix_read::rowid
|
||||
(byte) keyboard_matrix_read::rowid#0 reg byte y 4.0
|
||||
(byte[8]) keyboard_matrix_row_bitmask
|
||||
(const byte[8]) keyboard_matrix_row_bitmask#0 keyboard_matrix_row_bitmask = { (byte/word/signed word/dword/signed dword) 254, (byte/word/signed word/dword/signed dword) 253, (byte/word/signed word/dword/signed dword) 251, (byte/word/signed word/dword/signed dword) 247, (byte/word/signed word/dword/signed dword) 239, (byte/word/signed word/dword/signed dword) 223, (byte/word/signed word/dword/signed dword) 191, (byte/signed byte/word/signed word/dword/signed dword) 127 }
|
||||
(void()) main()
|
||||
@ -79,14 +206,15 @@
|
||||
(label) main::@2
|
||||
(label) main::@return
|
||||
(void()) menu()
|
||||
(byte~) menu::$29 reg byte a 202.0
|
||||
(label) menu::@1
|
||||
(label) menu::@14
|
||||
(label) menu::@15
|
||||
(label) menu::@10
|
||||
(label) menu::@17
|
||||
(label) menu::@18
|
||||
(label) menu::@19
|
||||
(label) menu::@2
|
||||
(label) menu::@20
|
||||
(label) menu::@3
|
||||
(label) menu::@4
|
||||
(label) menu::@6
|
||||
(label) menu::@8
|
||||
(label) menu::@return
|
||||
(byte*) menu::CHARSET
|
||||
@ -94,27 +222,29 @@
|
||||
(byte*) menu::SCREEN
|
||||
(const byte*) menu::SCREEN#0 SCREEN = ((byte*))(word/dword/signed dword) 32768
|
||||
(byte*) menu::c
|
||||
(byte*) menu::c#1 c zp ZP_WORD:2 151.5
|
||||
(byte*) menu::c#2 c zp ZP_WORD:2 151.5
|
||||
(byte*) menu::c#1 c zp ZP_WORD:5 151.5
|
||||
(byte*) menu::c#2 c zp ZP_WORD:5 151.5
|
||||
(byte) menu::i
|
||||
(byte) menu::i#1 reg byte x 151.5
|
||||
(byte) menu::i#2 reg byte x 202.0
|
||||
(byte) menu::i#1 reg byte y 151.5
|
||||
(byte) menu::i#2 reg byte y 202.0
|
||||
(byte*) print_char_cursor
|
||||
(byte*) print_char_cursor#1 print_char_cursor zp ZP_WORD:4 2002.0
|
||||
(byte*) print_char_cursor#17 print_char_cursor zp ZP_WORD:4 821.0
|
||||
(byte*) print_char_cursor#19 print_char_cursor zp ZP_WORD:4 101.0
|
||||
(byte*) print_char_cursor#32 print_char_cursor zp ZP_WORD:4 572.0
|
||||
(byte*~) print_char_cursor#53 print_char_cursor zp ZP_WORD:4 202.0
|
||||
(byte*) print_char_cursor#1 print_char_cursor zp ZP_WORD:8 2002.0
|
||||
(byte*) print_char_cursor#17 print_char_cursor zp ZP_WORD:8 821.0
|
||||
(byte*) print_char_cursor#19 print_char_cursor zp ZP_WORD:8 101.0
|
||||
(byte*) print_char_cursor#32 print_char_cursor zp ZP_WORD:8 572.0
|
||||
(byte*~) print_char_cursor#59 print_char_cursor zp ZP_WORD:8 202.0
|
||||
(void()) print_cls()
|
||||
(label) print_cls::@1
|
||||
(label) print_cls::@return
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 sc zp ZP_WORD:2 151.5
|
||||
(byte*) print_cls::sc#2 sc zp ZP_WORD:2 151.5
|
||||
(byte*) print_cls::sc#1 sc zp ZP_WORD:5 151.5
|
||||
(byte*) print_cls::sc#2 sc zp ZP_WORD:5 151.5
|
||||
(byte[]) print_hextab
|
||||
(const string) print_hextab#0 print_hextab = (string) "0123456789abcdef"
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#17 print_line_cursor zp ZP_WORD:6 8.583333333333332
|
||||
(byte*) print_line_cursor#18 print_line_cursor zp ZP_WORD:6 2004.0
|
||||
(byte*) print_line_cursor#19 print_line_cursor zp ZP_WORD:6 641.0
|
||||
(byte*) print_line_cursor#17 print_line_cursor zp ZP_WORD:10 8.583333333333332
|
||||
(byte*) print_line_cursor#18 print_line_cursor zp ZP_WORD:10 2004.0
|
||||
(byte*) print_line_cursor#19 print_line_cursor zp ZP_WORD:10 641.0
|
||||
(void()) print_ln()
|
||||
(label) print_ln::@1
|
||||
(label) print_ln::@return
|
||||
@ -132,18 +262,44 @@
|
||||
(byte) print_str_lines::ch
|
||||
(byte) print_str_lines::ch#0 reg byte a 667.3333333333334
|
||||
(byte*) print_str_lines::str
|
||||
(byte*) print_str_lines::str#0 str zp ZP_WORD:2 233.66666666666669
|
||||
(byte*) print_str_lines::str#2 str zp ZP_WORD:2 151.5
|
||||
(byte*) print_str_lines::str#3 str zp ZP_WORD:2 1552.0
|
||||
(byte*) print_str_lines::str#0 str zp ZP_WORD:5 233.66666666666669
|
||||
(byte*) print_str_lines::str#2 str zp ZP_WORD:5 151.5
|
||||
(byte*) print_str_lines::str#3 str zp ZP_WORD:5 1552.0
|
||||
|
||||
reg byte x [ menu::i#2 menu::i#1 ]
|
||||
zp ZP_WORD:2 [ menu::c#2 menu::c#1 print_str_lines::str#3 print_str_lines::str#2 print_str_lines::str#0 print_cls::sc#2 print_cls::sc#1 ]
|
||||
zp ZP_WORD:4 [ print_char_cursor#17 print_char_cursor#19 print_char_cursor#53 print_char_cursor#32 print_char_cursor#1 ]
|
||||
zp ZP_WORD:6 [ print_line_cursor#18 print_line_cursor#17 print_line_cursor#19 ]
|
||||
zp ZP_BYTE:2 [ form_cursor_count#1 form_cursor_count#13 form_cursor_count#16 form_cursor_count#15 form_cursor_count#5 ]
|
||||
zp ZP_BYTE:3 [ key_down_debounce#1 key_down_debounce#11 key_down_debounce#13 key_down_debounce#20 key_down_debounce#23 ]
|
||||
reg byte x [ form_field_idx#1 form_field_idx#14 form_field_idx#18 form_field_idx#30 form_field_idx#37 form_field_idx#38 ]
|
||||
zp ZP_BYTE:4 [ key_right_debounce#1 key_right_debounce#11 key_right_debounce#13 key_right_debounce#21 ]
|
||||
reg byte y [ menu::i#2 menu::i#1 ]
|
||||
zp ZP_WORD:5 [ menu::c#2 menu::c#1 form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#3 print_str_lines::str#2 print_str_lines::str#0 print_cls::sc#2 print_cls::sc#1 form_field_ptr::return#3 form_control::field#0 form_field_ptr::return#0 form_field_ptr::$2 form_field_ptr::return#2 form_render_values::field#0 ]
|
||||
reg byte y [ keyboard_key_pressed::key#4 ]
|
||||
zp ZP_BYTE:7 [ form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 form_field_ptr::field_idx#0 form_render_values::idx#2 form_render_values::idx#1 keyboard_key_pressed::colidx#0 ]
|
||||
reg byte y [ form_set_screen::y#2 form_set_screen::y#1 ]
|
||||
zp ZP_WORD:8 [ print_char_cursor#17 print_char_cursor#19 print_char_cursor#59 print_char_cursor#32 print_char_cursor#1 ]
|
||||
zp ZP_WORD:10 [ print_line_cursor#18 print_line_cursor#17 print_line_cursor#19 ]
|
||||
reg byte a [ form_control::$6 ]
|
||||
reg byte a [ keyboard_key_pressed::return#2 ]
|
||||
reg byte a [ menu::$29 ]
|
||||
reg byte a [ form_control::key_down#0 ]
|
||||
reg byte a [ form_control::$13 ]
|
||||
reg byte a [ keyboard_key_pressed::return#4 ]
|
||||
reg byte a [ form_control::$14 ]
|
||||
reg byte a [ keyboard_key_pressed::return#3 ]
|
||||
reg byte a [ form_control::key_right#0 ]
|
||||
reg byte a [ keyboard_key_pressed::return#10 ]
|
||||
reg byte a [ form_control::$28 ]
|
||||
reg byte a [ form_control::$31 ]
|
||||
reg byte a [ form_control::$32 ]
|
||||
reg byte a [ form_control::$33 ]
|
||||
reg byte a [ form_control::$34 ]
|
||||
reg byte a [ form_control::$7 ]
|
||||
reg byte a [ keyboard_key_pressed::rowidx#0 ]
|
||||
reg byte y [ keyboard_matrix_read::rowid#0 ]
|
||||
reg byte a [ keyboard_matrix_read::return#2 ]
|
||||
reg byte a [ keyboard_key_pressed::$2 ]
|
||||
reg byte a [ keyboard_key_pressed::return#0 ]
|
||||
reg byte a [ keyboard_matrix_read::return#0 ]
|
||||
reg byte a [ form_field_ptr::y#0 ]
|
||||
reg byte a [ form_field_ptr::x#0 ]
|
||||
reg byte a [ form_set_screen::$0 ]
|
||||
reg byte a [ form_set_screen::$1 ]
|
||||
reg byte a [ print_str_lines::ch#0 ]
|
||||
|
@ -1143,12 +1143,13 @@ void print_sdword(signed dword dw) {
|
||||
print_dword((dword)dw);
|
||||
}
|
||||
|
||||
const byte[] print_hextab = "0123456789abcdef";
|
||||
|
||||
// Print a byte as HEX
|
||||
void print_byte(byte b) {
|
||||
// Table of hexadecimal digits
|
||||
const byte[] hextab = "0123456789abcdef";
|
||||
print_char(hextab[b>>4]);
|
||||
print_char(hextab[b&$f]);
|
||||
print_char(print_hextab[b>>4]);
|
||||
print_char(print_hextab[b&$f]);
|
||||
}
|
||||
|
||||
// Print a single char
|
||||
@ -1744,12 +1745,12 @@ print_sdword::@1:
|
||||
print_sdword::@return:
|
||||
return
|
||||
endproc // print_sdword()
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
proc (void()) print_byte((byte) print_byte::b)
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
print_byte::@return:
|
||||
return
|
||||
endproc // print_byte()
|
||||
@ -4461,7 +4462,6 @@ SYMBOLS
|
||||
(void~) print_byte::$3
|
||||
(label) print_byte::@return
|
||||
(byte) print_byte::b
|
||||
(byte[]) print_byte::hextab
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -4479,6 +4479,7 @@ SYMBOLS
|
||||
(void~) print_dword::$3
|
||||
(label) print_dword::@return
|
||||
(dword) print_dword::dw
|
||||
(byte[]) print_hextab
|
||||
(byte*) print_line_cursor
|
||||
(void()) print_ln()
|
||||
(byte*~) print_ln::$0
|
||||
@ -4959,13 +4960,13 @@ print_sdword::@return: scope:[print_sdword] from print_sdword::@1
|
||||
return
|
||||
to:@return
|
||||
@11: scope:[] from @10
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
to:@12
|
||||
print_byte: scope:[print_byte] from
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte
|
||||
return
|
||||
@ -7056,21 +7057,22 @@ Eliminating unused variable (byte) DTV_BADLINE_OFF and assignment [74] (byte) DT
|
||||
Eliminating unused variable (byte*) DTV_SPRITE_BANK and assignment [90] (byte*) DTV_SPRITE_BANK ← ((byte*)) (word/dword/signed dword) 53325
|
||||
Eliminating unused variable (byte*) DTV_GRAPHICS_HICOL_BANK and assignment [95] (byte*) DTV_GRAPHICS_HICOL_BANK ← ((byte*)) (word/dword/signed dword) 53310
|
||||
Eliminating unused variable - keeping the call (void~) print_str_lines::$4
|
||||
Eliminating unused variable (byte) KEY_DEL and assignment [135] (byte) KEY_DEL ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Eliminating unused variable (byte) KEY_RETURN and assignment [136] (byte) KEY_RETURN ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
Eliminating unused variable (byte) KEY_CRSR_RIGHT and assignment [137] (byte) KEY_CRSR_RIGHT ← (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
Eliminating unused variable (byte) KEY_F7 and assignment [138] (byte) KEY_F7 ← (byte/signed byte/word/signed word/dword/signed dword) 3
|
||||
Eliminating unused variable (byte) KEY_F1 and assignment [139] (byte) KEY_F1 ← (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
Eliminating unused variable (byte) KEY_F3 and assignment [140] (byte) KEY_F3 ← (byte/signed byte/word/signed word/dword/signed dword) 5
|
||||
Eliminating unused variable (byte) KEY_F5 and assignment [141] (byte) KEY_F5 ← (byte/signed byte/word/signed word/dword/signed dword) 6
|
||||
Eliminating unused variable (byte) KEY_CRSR_DOWN and assignment [142] (byte) KEY_CRSR_DOWN ← (byte/signed byte/word/signed word/dword/signed dword) 7
|
||||
Eliminating unused variable (byte) KEY_LSHIFT and assignment [150] (byte) KEY_LSHIFT ← (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
Eliminating unused variable (byte) KEY_HOME and assignment [186] (byte) KEY_HOME ← (byte/signed byte/word/signed word/dword/signed dword) 51
|
||||
Eliminating unused variable (byte) KEY_RSHIFT and assignment [187] (byte) KEY_RSHIFT ← (byte/signed byte/word/signed word/dword/signed dword) 52
|
||||
Eliminating unused variable (byte) KEY_CTRL and assignment [193] (byte) KEY_CTRL ← (byte/signed byte/word/signed word/dword/signed dword) 58
|
||||
Eliminating unused variable (byte) KEY_COMMODORE and assignment [196] (byte) KEY_COMMODORE ← (byte/signed byte/word/signed word/dword/signed dword) 61
|
||||
Eliminating unused variable (byte) KEY_RUNSTOP and assignment [198] (byte) KEY_RUNSTOP ← (byte/signed byte/word/signed word/dword/signed dword) 63
|
||||
Eliminating unused variable (byte[]) keyboard_char_keycodes and assignment [199] (byte[]) keyboard_char_keycodes ← { (byte) KEY_AT, (byte) KEY_A, (byte) KEY_B, (byte) KEY_C, (byte) KEY_D, (byte) KEY_E, (byte) KEY_F, (byte) KEY_G, (byte) KEY_H, (byte) KEY_I, (byte) KEY_J, (byte) KEY_K, (byte) KEY_L, (byte) KEY_M, (byte) KEY_N, (byte) KEY_O, (byte) KEY_P, (byte) KEY_Q, (byte) KEY_R, (byte) KEY_S, (byte) KEY_T, (byte) KEY_U, (byte) KEY_V, (byte) KEY_W, (byte) KEY_X, (byte) KEY_Y, (byte) KEY_Z, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte) KEY_POUND, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte) KEY_ARROW_UP, (byte) KEY_ARROW_LEFT, (byte) KEY_SPACE, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte) KEY_ASTERISK, (byte) KEY_PLUS, (byte) KEY_COMMA, (byte) KEY_MINUS, (byte) KEY_DOT, (byte) KEY_SLASH, (byte) KEY_0, (byte) KEY_1, (byte) KEY_2, (byte) KEY_3, (byte) KEY_4, (byte) KEY_5, (byte) KEY_6, (byte) KEY_7, (byte) KEY_8, (byte) KEY_9, (byte) KEY_COLON, (byte) KEY_SEMICOLON, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte) KEY_EQUALS, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63 }
|
||||
Eliminating unused variable (byte[]) print_hextab and assignment [122] (byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
Eliminating unused variable (byte) KEY_DEL and assignment [136] (byte) KEY_DEL ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Eliminating unused variable (byte) KEY_RETURN and assignment [137] (byte) KEY_RETURN ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
Eliminating unused variable (byte) KEY_CRSR_RIGHT and assignment [138] (byte) KEY_CRSR_RIGHT ← (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
Eliminating unused variable (byte) KEY_F7 and assignment [139] (byte) KEY_F7 ← (byte/signed byte/word/signed word/dword/signed dword) 3
|
||||
Eliminating unused variable (byte) KEY_F1 and assignment [140] (byte) KEY_F1 ← (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
Eliminating unused variable (byte) KEY_F3 and assignment [141] (byte) KEY_F3 ← (byte/signed byte/word/signed word/dword/signed dword) 5
|
||||
Eliminating unused variable (byte) KEY_F5 and assignment [142] (byte) KEY_F5 ← (byte/signed byte/word/signed word/dword/signed dword) 6
|
||||
Eliminating unused variable (byte) KEY_CRSR_DOWN and assignment [143] (byte) KEY_CRSR_DOWN ← (byte/signed byte/word/signed word/dword/signed dword) 7
|
||||
Eliminating unused variable (byte) KEY_LSHIFT and assignment [151] (byte) KEY_LSHIFT ← (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
Eliminating unused variable (byte) KEY_HOME and assignment [187] (byte) KEY_HOME ← (byte/signed byte/word/signed word/dword/signed dword) 51
|
||||
Eliminating unused variable (byte) KEY_RSHIFT and assignment [188] (byte) KEY_RSHIFT ← (byte/signed byte/word/signed word/dword/signed dword) 52
|
||||
Eliminating unused variable (byte) KEY_CTRL and assignment [194] (byte) KEY_CTRL ← (byte/signed byte/word/signed word/dword/signed dword) 58
|
||||
Eliminating unused variable (byte) KEY_COMMODORE and assignment [197] (byte) KEY_COMMODORE ← (byte/signed byte/word/signed word/dword/signed dword) 61
|
||||
Eliminating unused variable (byte) KEY_RUNSTOP and assignment [199] (byte) KEY_RUNSTOP ← (byte/signed byte/word/signed word/dword/signed dword) 63
|
||||
Eliminating unused variable (byte[]) keyboard_char_keycodes and assignment [200] (byte[]) keyboard_char_keycodes ← { (byte) KEY_AT, (byte) KEY_A, (byte) KEY_B, (byte) KEY_C, (byte) KEY_D, (byte) KEY_E, (byte) KEY_F, (byte) KEY_G, (byte) KEY_H, (byte) KEY_I, (byte) KEY_J, (byte) KEY_K, (byte) KEY_L, (byte) KEY_M, (byte) KEY_N, (byte) KEY_O, (byte) KEY_P, (byte) KEY_Q, (byte) KEY_R, (byte) KEY_S, (byte) KEY_T, (byte) KEY_U, (byte) KEY_V, (byte) KEY_W, (byte) KEY_X, (byte) KEY_Y, (byte) KEY_Z, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte) KEY_POUND, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte) KEY_ARROW_UP, (byte) KEY_ARROW_LEFT, (byte) KEY_SPACE, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte) KEY_ASTERISK, (byte) KEY_PLUS, (byte) KEY_COMMA, (byte) KEY_MINUS, (byte) KEY_DOT, (byte) KEY_SLASH, (byte) KEY_0, (byte) KEY_1, (byte) KEY_2, (byte) KEY_3, (byte) KEY_4, (byte) KEY_5, (byte) KEY_6, (byte) KEY_7, (byte) KEY_8, (byte) KEY_9, (byte) KEY_COLON, (byte) KEY_SEMICOLON, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte) KEY_EQUALS, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63 }
|
||||
Eliminating unused variable - keeping the call (void~) bitmap_line::$9
|
||||
Eliminating unused variable - keeping the call (void~) bitmap_line::$8
|
||||
Eliminating unused variable - keeping the call (void~) bitmap_line::$14
|
||||
|
@ -147,12 +147,13 @@ void print_sdword(signed dword dw) {
|
||||
print_dword((dword)dw);
|
||||
}
|
||||
|
||||
const byte[] print_hextab = "0123456789abcdef";
|
||||
|
||||
// Print a byte as HEX
|
||||
void print_byte(byte b) {
|
||||
// Table of hexadecimal digits
|
||||
const byte[] hextab = "0123456789abcdef";
|
||||
print_char(hextab[b>>4]);
|
||||
print_char(hextab[b&$f]);
|
||||
print_char(print_hextab[b>>4]);
|
||||
print_char(print_hextab[b&$f]);
|
||||
}
|
||||
|
||||
// Print a single char
|
||||
@ -311,12 +312,12 @@ print_sdword::@1:
|
||||
print_sdword::@return:
|
||||
return
|
||||
endproc // print_sdword()
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
proc (void()) print_byte((byte) print_byte::b)
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
print_byte::@return:
|
||||
return
|
||||
endproc // print_byte()
|
||||
@ -470,7 +471,6 @@ SYMBOLS
|
||||
(void~) print_byte::$3
|
||||
(label) print_byte::@return
|
||||
(byte) print_byte::b
|
||||
(byte[]) print_byte::hextab
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -488,6 +488,7 @@ SYMBOLS
|
||||
(void~) print_dword::$3
|
||||
(label) print_dword::@return
|
||||
(dword) print_dword::dw
|
||||
(byte[]) print_hextab
|
||||
(byte*) print_line_cursor
|
||||
(void()) print_ln()
|
||||
(byte*~) print_ln::$0
|
||||
@ -799,13 +800,13 @@ print_sdword::@return: scope:[print_sdword] from print_sdword::@1
|
||||
return
|
||||
to:@return
|
||||
@10: scope:[] from @9
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
to:@11
|
||||
print_byte: scope:[print_byte] from
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte
|
||||
return
|
||||
@ -967,6 +968,7 @@ Removing unused procedure print_dword
|
||||
Removing unused procedure print_word
|
||||
Removing unused procedure print_byte
|
||||
Removing unused procedure print_char
|
||||
Eliminating unused variable (byte[]) print_hextab and assignment [15] (byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
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
|
||||
|
@ -100,12 +100,13 @@ void print_sdword(signed dword dw) {
|
||||
print_dword((dword)dw);
|
||||
}
|
||||
|
||||
const byte[] print_hextab = "0123456789abcdef";
|
||||
|
||||
// Print a byte as HEX
|
||||
void print_byte(byte b) {
|
||||
// Table of hexadecimal digits
|
||||
const byte[] hextab = "0123456789abcdef";
|
||||
print_char(hextab[b>>4]);
|
||||
print_char(hextab[b&$f]);
|
||||
print_char(print_hextab[b>>4]);
|
||||
print_char(print_hextab[b&$f]);
|
||||
}
|
||||
|
||||
// Print a single char
|
||||
@ -265,12 +266,12 @@ print_sdword::@1:
|
||||
print_sdword::@return:
|
||||
return
|
||||
endproc // print_sdword()
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
proc (void()) print_byte((byte) print_byte::b)
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
print_byte::@return:
|
||||
return
|
||||
endproc // print_byte()
|
||||
@ -332,7 +333,6 @@ SYMBOLS
|
||||
(void~) print_byte::$3
|
||||
(label) print_byte::@return
|
||||
(byte) print_byte::b
|
||||
(byte[]) print_byte::hextab
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -350,6 +350,7 @@ SYMBOLS
|
||||
(void~) print_dword::$3
|
||||
(label) print_dword::@return
|
||||
(dword) print_dword::dw
|
||||
(byte[]) print_hextab
|
||||
(byte*) print_line_cursor
|
||||
(void()) print_ln()
|
||||
(byte*~) print_ln::$0
|
||||
@ -630,13 +631,13 @@ print_sdword::@return: scope:[print_sdword] from print_sdword::@1
|
||||
return
|
||||
to:@return
|
||||
@10: scope:[] from @9
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
to:@11
|
||||
print_byte: scope:[print_byte] from
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte
|
||||
return
|
||||
@ -715,6 +716,7 @@ Removing unused procedure print_dword
|
||||
Removing unused procedure print_word
|
||||
Removing unused procedure print_byte
|
||||
Removing unused procedure print_char
|
||||
Eliminating unused variable (byte[]) print_hextab and assignment [15] (byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
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
|
||||
|
@ -230,15 +230,14 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
txa
|
||||
and #$f
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
print_char: {
|
||||
ldy #0
|
||||
@ -451,3 +450,4 @@ divr16u: {
|
||||
bne b1
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
@ -54,7 +54,7 @@ main::@12: scope:[main] from main::@11
|
||||
main::@1: scope:[main] from main::@12 main::@21
|
||||
[26] (byte) main::i#10 ← phi( main::@12/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@21/(byte) main::i#1 ) [ main::i#10 print_line_cursor#1 ] ( main:2 [ main::i#10 print_line_cursor#1 ] )
|
||||
[27] (byte) print_byte::b#2 ← (byte) main::i#10 [ main::i#10 print_byte::b#2 print_line_cursor#1 ] ( main:2 [ main::i#10 print_byte::b#2 print_line_cursor#1 ] )
|
||||
[28] (byte*~) print_char_cursor#90 ← (byte*) print_line_cursor#1 [ main::i#10 print_byte::b#2 print_char_cursor#90 print_line_cursor#1 ] ( main:2 [ main::i#10 print_byte::b#2 print_char_cursor#90 print_line_cursor#1 ] )
|
||||
[28] (byte*~) print_char_cursor#91 ← (byte*) print_line_cursor#1 [ main::i#10 print_byte::b#2 print_char_cursor#91 print_line_cursor#1 ] ( main:2 [ main::i#10 print_byte::b#2 print_char_cursor#91 print_line_cursor#1 ] )
|
||||
[29] call print_byte param-assignment [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] ( main:2 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] )
|
||||
to:main::@14
|
||||
main::@14: scope:[main] from main::@1
|
||||
@ -90,7 +90,7 @@ main::@21: scope:[main] from main::@20
|
||||
[45] if((byte) main::i#1<(byte/signed byte/word/signed word/dword/signed dword) 20*(byte/signed byte/word/signed word/dword/signed dword) 2) goto main::@1 [ main::i#1 print_line_cursor#1 ] ( main:2 [ main::i#1 print_line_cursor#1 ] )
|
||||
to:main::@2
|
||||
main::@2: scope:[main] from main::@21
|
||||
[46] (byte*~) print_char_cursor#99 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#99 ] ( main:2 [ print_line_cursor#1 print_char_cursor#99 ] )
|
||||
[46] (byte*~) print_char_cursor#100 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#100 ] ( main:2 [ print_line_cursor#1 print_char_cursor#100 ] )
|
||||
[47] call print_str param-assignment [ print_line_cursor#1 print_char_cursor#2 ] ( main:2 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
to:main::@22
|
||||
main::@22: scope:[main] from main::@2
|
||||
@ -144,15 +144,15 @@ print_word::@return: scope:[print_word] from print_word::@1
|
||||
[71] return [ print_char_cursor#11 ] ( main:2::print_word:15 [ print_char_cursor#11 ] main:2::print_word:19 [ print_char_cursor#11 ] main:2::print_word:23 [ print_char_cursor#11 ] main:2::print_word:33 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:37 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:41 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:49 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:53 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:57 [ print_line_cursor#1 print_char_cursor#11 ] )
|
||||
to:@return
|
||||
print_byte: scope:[print_byte] from main::@1 print_word print_word::@1
|
||||
[72] (byte*) print_char_cursor#81 ← phi( main::@1/(byte*~) print_char_cursor#90 print_word/(byte*) print_char_cursor#2 print_word::@1/(byte*) print_char_cursor#11 ) [ print_byte::b#3 print_char_cursor#81 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:15::print_byte:70 [ print_byte::b#3 print_char_cursor#81 ] main:2::print_word:19::print_byte:70 [ print_byte::b#3 print_char_cursor#81 ] main:2::print_word:23::print_byte:70 [ print_byte::b#3 print_char_cursor#81 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] )
|
||||
[72] (byte*) print_char_cursor#81 ← phi( main::@1/(byte*~) print_char_cursor#91 print_word/(byte*) print_char_cursor#2 print_word::@1/(byte*) print_char_cursor#11 ) [ print_byte::b#3 print_char_cursor#81 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:15::print_byte:70 [ print_byte::b#3 print_char_cursor#81 ] main:2::print_word:19::print_byte:70 [ print_byte::b#3 print_char_cursor#81 ] main:2::print_word:23::print_byte:70 [ print_byte::b#3 print_char_cursor#81 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] )
|
||||
[72] (byte) print_byte::b#3 ← phi( main::@1/(byte) print_byte::b#2 print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) [ print_byte::b#3 print_char_cursor#81 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:15::print_byte:70 [ print_byte::b#3 print_char_cursor#81 ] main:2::print_word:19::print_byte:70 [ print_byte::b#3 print_char_cursor#81 ] main:2::print_word:23::print_byte:70 [ print_byte::b#3 print_char_cursor#81 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] )
|
||||
[73] (byte~) print_byte::$0 ← (byte) print_byte::b#3 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#3 print_char_cursor#81 print_byte::$0 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:15::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:19::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:23::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] )
|
||||
[74] (byte) print_char::ch#0 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:15::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:19::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:23::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] )
|
||||
[74] (byte) print_char::ch#0 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:15::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:19::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:23::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] )
|
||||
[75] call print_char param-assignment [ print_char_cursor#11 print_byte::b#3 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 print_byte::b#3 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 print_byte::b#3 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 print_byte::b#3 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] )
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
[76] (byte~) print_byte::$2 ← (byte) print_byte::b#3 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#11 print_byte::$2 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 print_byte::$2 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 print_byte::$2 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 print_byte::$2 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] )
|
||||
[77] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#11 print_char::ch#1 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] )
|
||||
[77] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#11 print_char::ch#1 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] )
|
||||
[78] call print_char param-assignment [ print_char_cursor#11 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] )
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte::@1
|
||||
@ -168,7 +168,7 @@ print_char::@return: scope:[print_char] from print_char
|
||||
[83] return [ print_char_cursor#11 ] ( main:2::print_byte:29::print_char:75 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:15::print_byte:68::print_char:75 [ print_word::w#10 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:19::print_byte:68::print_char:75 [ print_word::w#10 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:23::print_byte:68::print_char:75 [ print_word::w#10 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:33::print_byte:68::print_char:75 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:37::print_byte:68::print_char:75 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:41::print_byte:68::print_char:75 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:49::print_byte:68::print_char:75 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:53::print_byte:68::print_char:75 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:57::print_byte:68::print_char:75 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:15::print_byte:70::print_char:75 [ print_byte::b#3 print_char_cursor#11 ] main:2::print_word:19::print_byte:70::print_char:75 [ print_byte::b#3 print_char_cursor#11 ] main:2::print_word:23::print_byte:70::print_char:75 [ print_byte::b#3 print_char_cursor#11 ] main:2::print_word:33::print_byte:70::print_char:75 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:37::print_byte:70::print_char:75 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:41::print_byte:70::print_char:75 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:49::print_byte:70::print_char:75 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:53::print_byte:70::print_char:75 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:57::print_byte:70::print_char:75 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#11 ] main:2::print_byte:29::print_char:78 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:15::print_byte:68::print_char:78 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:19::print_byte:68::print_char:78 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:23::print_byte:68::print_char:78 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:33::print_byte:68::print_char:78 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:37::print_byte:68::print_char:78 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:41::print_byte:68::print_char:78 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:49::print_byte:68::print_char:78 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:53::print_byte:68::print_char:78 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:57::print_byte:68::print_char:78 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:15::print_byte:70::print_char:78 [ print_char_cursor#11 ] main:2::print_word:19::print_byte:70::print_char:78 [ print_char_cursor#11 ] main:2::print_word:23::print_byte:70::print_char:78 [ print_char_cursor#11 ] main:2::print_word:33::print_byte:70::print_char:78 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:37::print_byte:70::print_char:78 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:41::print_byte:70::print_char:78 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:49::print_byte:70::print_char:78 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:53::print_byte:70::print_char:78 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:57::print_byte:70::print_char:78 [ print_line_cursor#1 print_char_cursor#11 ] )
|
||||
to:@return
|
||||
print_str: scope:[print_str] from main::@10 main::@14 main::@16 main::@18 main::@2 main::@23 main::@25 main::@6 main::@8
|
||||
[84] (byte*) print_char_cursor#86 ← phi( main::@10/(byte*) print_char_cursor#11 main::@14/(byte*) print_char_cursor#11 main::@16/(byte*) print_char_cursor#11 main::@18/(byte*) print_char_cursor#11 main::@2/(byte*~) print_char_cursor#99 main::@23/(byte*) print_char_cursor#11 main::@25/(byte*) print_char_cursor#11 main::@6/((byte*))(word/signed word/dword/signed dword) 1024 main::@8/(byte*) print_char_cursor#11 ) [ print_str::str#12 print_char_cursor#86 ] ( main:2::print_str:13 [ print_str::str#12 print_char_cursor#86 ] main:2::print_str:17 [ print_str::str#12 print_char_cursor#86 ] main:2::print_str:21 [ print_str::str#12 print_char_cursor#86 ] main:2::print_str:31 [ main::i#10 print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:35 [ main::i#10 print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:39 [ main::i#10 print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:47 [ print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:51 [ print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:55 [ print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] )
|
||||
[84] (byte*) print_char_cursor#86 ← phi( main::@10/(byte*) print_char_cursor#11 main::@14/(byte*) print_char_cursor#11 main::@16/(byte*) print_char_cursor#11 main::@18/(byte*) print_char_cursor#11 main::@2/(byte*~) print_char_cursor#100 main::@23/(byte*) print_char_cursor#11 main::@25/(byte*) print_char_cursor#11 main::@6/((byte*))(word/signed word/dword/signed dword) 1024 main::@8/(byte*) print_char_cursor#11 ) [ print_str::str#12 print_char_cursor#86 ] ( main:2::print_str:13 [ print_str::str#12 print_char_cursor#86 ] main:2::print_str:17 [ print_str::str#12 print_char_cursor#86 ] main:2::print_str:21 [ print_str::str#12 print_char_cursor#86 ] main:2::print_str:31 [ main::i#10 print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:35 [ main::i#10 print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:39 [ main::i#10 print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:47 [ print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:51 [ print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:55 [ print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] )
|
||||
[84] (byte*) print_str::str#12 ← phi( main::@10/(const string) main::str2 main::@14/(const string) main::str3 main::@16/(const string) main::str4 main::@18/(const string) main::str5 main::@2/(const string) main::str6 main::@23/(const string) main::str7 main::@25/(const string) main::str8 main::@6/(const string) main::str main::@8/(const string) main::str1 ) [ print_str::str#12 print_char_cursor#86 ] ( main:2::print_str:13 [ print_str::str#12 print_char_cursor#86 ] main:2::print_str:17 [ print_str::str#12 print_char_cursor#86 ] main:2::print_str:21 [ print_str::str#12 print_char_cursor#86 ] main:2::print_str:31 [ main::i#10 print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:35 [ main::i#10 print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:39 [ main::i#10 print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:47 [ print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:51 [ print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:55 [ print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] )
|
||||
to:print_str::@1
|
||||
print_str::@1: scope:[print_str] from print_str print_str::@2
|
||||
|
@ -295,12 +295,13 @@ void print_sdword(signed dword dw) {
|
||||
print_dword((dword)dw);
|
||||
}
|
||||
|
||||
const byte[] print_hextab = "0123456789abcdef";
|
||||
|
||||
// Print a byte as HEX
|
||||
void print_byte(byte b) {
|
||||
// Table of hexadecimal digits
|
||||
const byte[] hextab = "0123456789abcdef";
|
||||
print_char(hextab[b>>4]);
|
||||
print_char(hextab[b&$f]);
|
||||
print_char(print_hextab[b>>4]);
|
||||
print_char(print_hextab[b&$f]);
|
||||
}
|
||||
|
||||
// Print a single char
|
||||
@ -669,12 +670,12 @@ print_sdword::@1:
|
||||
print_sdword::@return:
|
||||
return
|
||||
endproc // print_sdword()
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
proc (void()) print_byte((byte) print_byte::b)
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
print_byte::@return:
|
||||
return
|
||||
endproc // print_byte()
|
||||
@ -976,7 +977,6 @@ SYMBOLS
|
||||
(void~) print_byte::$3
|
||||
(label) print_byte::@return
|
||||
(byte) print_byte::b
|
||||
(byte[]) print_byte::hextab
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -994,6 +994,7 @@ SYMBOLS
|
||||
(void~) print_dword::$3
|
||||
(label) print_dword::@return
|
||||
(dword) print_dword::dw
|
||||
(byte[]) print_hextab
|
||||
(byte*) print_line_cursor
|
||||
(void()) print_ln()
|
||||
(byte*~) print_ln::$0
|
||||
@ -1564,13 +1565,13 @@ print_sdword::@return: scope:[print_sdword] from print_sdword::@1
|
||||
return
|
||||
to:@return
|
||||
@17: scope:[] from @16
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
to:@18
|
||||
print_byte: scope:[print_byte] from
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte
|
||||
return
|
||||
@ -1742,7 +1743,7 @@ Eliminating unused variable - keeping the call (void~) main::$25
|
||||
Eliminating unused variable - keeping the call (void~) main::$26
|
||||
Eliminating unused variable - keeping the call (void~) main::$27
|
||||
Eliminating unused variable - keeping the call (void~) main::$28
|
||||
Creating constant string variable for inline (const string) print_byte::$4 "0123456789abcdef"
|
||||
Creating constant string variable for inline (const string) $0 "0123456789abcdef"
|
||||
Creating constant string variable for inline (const string) main::str " @"
|
||||
Creating constant string variable for inline (const string) main::str1 " @"
|
||||
Creating constant string variable for inline (const string) main::str2 " @"
|
||||
@ -1771,7 +1772,6 @@ Removing empty block @13
|
||||
Removing empty block @14
|
||||
Removing empty block @15
|
||||
Removing empty block @16
|
||||
Removing empty block @17
|
||||
Removing empty block @18
|
||||
Removing empty block @19
|
||||
Removing empty block @20
|
||||
@ -1904,11 +1904,11 @@ divr16u::@return: scope:[divr16u] from divr16u::@6
|
||||
return
|
||||
to:@return
|
||||
@7: scope:[] from @2
|
||||
(word) rem16u#26 ← phi( @2/(word) rem16u#0 )
|
||||
(word) rem16u#27 ← phi( @2/(word) rem16u#0 )
|
||||
(byte*) print_screen#0 ← ((byte*)) (word/signed word/dword/signed dword) 1024
|
||||
(byte*) print_line_cursor#0 ← (byte*) print_screen#0
|
||||
(byte*) print_char_cursor#0 ← (byte*) print_line_cursor#0
|
||||
to:@23
|
||||
to:@17
|
||||
print_str: scope:[print_str] from main::@10 main::@14 main::@16 main::@18 main::@2 main::@23 main::@25 main::@6 main::@8
|
||||
(byte*) print_char_cursor#86 ← phi( main::@10/(byte*) print_char_cursor#19 main::@14/(byte*) print_char_cursor#23 main::@16/(byte*) print_char_cursor#25 main::@18/(byte*) print_char_cursor#27 main::@2/(byte*) print_char_cursor#84 main::@23/(byte*) print_char_cursor#32 main::@25/(byte*) print_char_cursor#34 main::@6/(byte*) print_char_cursor#15 main::@8/(byte*) print_char_cursor#17 )
|
||||
(byte*) print_str::str#12 ← phi( main::@10/(byte*) print_str::str#3 main::@14/(byte*) print_str::str#4 main::@16/(byte*) print_str::str#5 main::@18/(byte*) print_str::str#6 main::@2/(byte*) print_str::str#7 main::@23/(byte*) print_str::str#8 main::@25/(byte*) print_str::str#9 main::@6/(byte*) print_str::str#1 main::@8/(byte*) print_str::str#2 )
|
||||
@ -1978,12 +1978,18 @@ print_word::@return: scope:[print_word] from print_word::@2
|
||||
(byte*) print_char_cursor#7 ← (byte*) print_char_cursor#46
|
||||
return
|
||||
to:@return
|
||||
@17: scope:[] from @7
|
||||
(byte*) print_screen#9 ← phi( @7/(byte*) print_screen#0 )
|
||||
(byte*) print_char_cursor#88 ← phi( @7/(byte*) print_char_cursor#0 )
|
||||
(byte*) print_line_cursor#31 ← phi( @7/(byte*) print_line_cursor#0 )
|
||||
(word) rem16u#26 ← phi( @7/(word) rem16u#27 )
|
||||
(byte[]) print_hextab#0 ← (const string) $0
|
||||
to:@23
|
||||
print_byte: scope:[print_byte] from main::@1 print_word print_word::@1
|
||||
(byte*) print_char_cursor#81 ← phi( main::@1/(byte*) print_char_cursor#83 print_word/(byte*) print_char_cursor#80 print_word::@1/(byte*) print_char_cursor#5 )
|
||||
(byte) print_byte::b#3 ← phi( main::@1/(byte) print_byte::b#2 print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 )
|
||||
(byte[]) print_byte::hextab#0 ← (const string) print_byte::$4
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b#3 >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(byte) print_char::ch#0 ← *((byte[]) print_byte::hextab#0 + (byte~) print_byte::$0)
|
||||
(byte) print_char::ch#0 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$0)
|
||||
call print_char param-assignment
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
@ -1991,7 +1997,7 @@ print_byte::@1: scope:[print_byte] from print_byte
|
||||
(byte*) print_char_cursor#47 ← phi( print_byte/(byte*) print_char_cursor#12 )
|
||||
(byte*) print_char_cursor#8 ← (byte*) print_char_cursor#47
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(byte) print_char::ch#1 ← *((byte[]) print_byte::hextab#0 + (byte~) print_byte::$2)
|
||||
(byte) print_char::ch#1 ← *((byte[]) print_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
|
||||
@ -2040,8 +2046,8 @@ print_cls::@return: scope:[print_cls] from print_cls::@2
|
||||
return
|
||||
to:@return
|
||||
main: scope:[main] from @23
|
||||
(byte*) print_char_cursor#89 ← phi( @23/(byte*) print_char_cursor#85 )
|
||||
(byte*) print_line_cursor#35 ← phi( @23/(byte*) print_line_cursor#26 )
|
||||
(byte*) print_char_cursor#90 ← phi( @23/(byte*) print_char_cursor#85 )
|
||||
(byte*) print_line_cursor#36 ← phi( @23/(byte*) print_line_cursor#26 )
|
||||
(byte*) print_screen#7 ← phi( @23/(byte*) print_screen#8 )
|
||||
(word) rem16u#20 ← phi( @23/(word) rem16u#24 )
|
||||
(word[20]) main::lintab1#0 ← { fill( 20, 0) }
|
||||
@ -2052,8 +2058,8 @@ main: scope:[main] from @23
|
||||
call lin16u_gen param-assignment
|
||||
to:main::@3
|
||||
main::@3: scope:[main] from main
|
||||
(byte*) print_char_cursor#88 ← phi( main/(byte*) print_char_cursor#89 )
|
||||
(byte*) print_line_cursor#31 ← phi( main/(byte*) print_line_cursor#35 )
|
||||
(byte*) print_char_cursor#89 ← phi( main/(byte*) print_char_cursor#90 )
|
||||
(byte*) print_line_cursor#32 ← phi( main/(byte*) print_line_cursor#36 )
|
||||
(byte*) print_screen#6 ← phi( main/(byte*) print_screen#7 )
|
||||
(word) rem16u#12 ← phi( main/(word) rem16u#9 )
|
||||
(word) rem16u#3 ← (word) rem16u#12
|
||||
@ -2065,8 +2071,8 @@ main::@3: scope:[main] from main
|
||||
call lin16u_gen param-assignment
|
||||
to:main::@4
|
||||
main::@4: scope:[main] from main::@3
|
||||
(byte*) print_char_cursor#87 ← phi( main::@3/(byte*) print_char_cursor#88 )
|
||||
(byte*) print_line_cursor#27 ← phi( main::@3/(byte*) print_line_cursor#31 )
|
||||
(byte*) print_char_cursor#87 ← phi( main::@3/(byte*) print_char_cursor#89 )
|
||||
(byte*) print_line_cursor#27 ← phi( main::@3/(byte*) print_line_cursor#32 )
|
||||
(byte*) print_screen#5 ← phi( main::@3/(byte*) print_screen#6 )
|
||||
(word) rem16u#13 ← phi( main::@3/(word) rem16u#9 )
|
||||
(word) rem16u#4 ← (word) rem16u#13
|
||||
@ -2086,7 +2092,7 @@ main::@5: scope:[main] from main::@4
|
||||
call print_cls param-assignment
|
||||
to:main::@6
|
||||
main::@6: scope:[main] from main::@5
|
||||
(word) rem16u#49 ← phi( main::@5/(word) rem16u#5 )
|
||||
(word) rem16u#50 ← phi( main::@5/(word) rem16u#5 )
|
||||
(byte*) print_char_cursor#53 ← phi( main::@5/(byte*) print_char_cursor#14 )
|
||||
(byte*) print_line_cursor#15 ← phi( main::@5/(byte*) print_line_cursor#4 )
|
||||
(byte*) print_line_cursor#5 ← (byte*) print_line_cursor#15
|
||||
@ -2095,54 +2101,54 @@ main::@6: scope:[main] from main::@5
|
||||
call print_str param-assignment
|
||||
to:main::@7
|
||||
main::@7: scope:[main] from main::@6
|
||||
(word) rem16u#48 ← phi( main::@6/(word) rem16u#49 )
|
||||
(byte*) print_line_cursor#42 ← phi( main::@6/(byte*) print_line_cursor#5 )
|
||||
(word) rem16u#49 ← phi( main::@6/(word) rem16u#50 )
|
||||
(byte*) print_line_cursor#43 ← phi( main::@6/(byte*) print_line_cursor#5 )
|
||||
(byte*) print_char_cursor#54 ← phi( main::@6/(byte*) print_char_cursor#2 )
|
||||
(byte*) print_char_cursor#16 ← (byte*) print_char_cursor#54
|
||||
(word) print_word::w#0 ← (word/signed word/dword/signed dword) 557
|
||||
call print_word param-assignment
|
||||
to:main::@8
|
||||
main::@8: scope:[main] from main::@7
|
||||
(word) rem16u#47 ← phi( main::@7/(word) rem16u#48 )
|
||||
(byte*) print_line_cursor#39 ← phi( main::@7/(byte*) print_line_cursor#42 )
|
||||
(word) rem16u#48 ← phi( main::@7/(word) rem16u#49 )
|
||||
(byte*) print_line_cursor#40 ← phi( main::@7/(byte*) print_line_cursor#43 )
|
||||
(byte*) print_char_cursor#55 ← phi( main::@7/(byte*) print_char_cursor#7 )
|
||||
(byte*) print_char_cursor#17 ← (byte*) print_char_cursor#55
|
||||
(byte*) print_str::str#2 ← (const string) main::str1
|
||||
call print_str param-assignment
|
||||
to:main::@9
|
||||
main::@9: scope:[main] from main::@8
|
||||
(word) rem16u#46 ← phi( main::@8/(word) rem16u#47 )
|
||||
(byte*) print_line_cursor#36 ← phi( main::@8/(byte*) print_line_cursor#39 )
|
||||
(word) rem16u#47 ← phi( main::@8/(word) rem16u#48 )
|
||||
(byte*) print_line_cursor#37 ← phi( main::@8/(byte*) print_line_cursor#40 )
|
||||
(byte*) print_char_cursor#56 ← phi( main::@8/(byte*) print_char_cursor#2 )
|
||||
(byte*) print_char_cursor#18 ← (byte*) print_char_cursor#56
|
||||
(word) print_word::w#1 ← (word/signed word/dword/signed dword) 31179
|
||||
call print_word param-assignment
|
||||
to:main::@10
|
||||
main::@10: scope:[main] from main::@9
|
||||
(word) rem16u#45 ← phi( main::@9/(word) rem16u#46 )
|
||||
(byte*) print_line_cursor#32 ← phi( main::@9/(byte*) print_line_cursor#36 )
|
||||
(word) rem16u#46 ← phi( main::@9/(word) rem16u#47 )
|
||||
(byte*) print_line_cursor#33 ← phi( main::@9/(byte*) print_line_cursor#37 )
|
||||
(byte*) print_char_cursor#57 ← phi( main::@9/(byte*) print_char_cursor#7 )
|
||||
(byte*) print_char_cursor#19 ← (byte*) print_char_cursor#57
|
||||
(byte*) print_str::str#3 ← (const string) main::str2
|
||||
call print_str param-assignment
|
||||
to:main::@11
|
||||
main::@11: scope:[main] from main::@10
|
||||
(word) rem16u#44 ← phi( main::@10/(word) rem16u#45 )
|
||||
(byte*) print_line_cursor#28 ← phi( main::@10/(byte*) print_line_cursor#32 )
|
||||
(word) rem16u#45 ← phi( main::@10/(word) rem16u#46 )
|
||||
(byte*) print_line_cursor#28 ← phi( main::@10/(byte*) print_line_cursor#33 )
|
||||
(byte*) print_char_cursor#58 ← phi( main::@10/(byte*) print_char_cursor#2 )
|
||||
(byte*) print_char_cursor#20 ← (byte*) print_char_cursor#58
|
||||
(word) print_word::w#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
call print_word param-assignment
|
||||
to:main::@12
|
||||
main::@12: scope:[main] from main::@11
|
||||
(word) rem16u#43 ← phi( main::@11/(word) rem16u#44 )
|
||||
(word) rem16u#44 ← phi( main::@11/(word) rem16u#45 )
|
||||
(byte*) print_line_cursor#23 ← phi( main::@11/(byte*) print_line_cursor#28 )
|
||||
(byte*) print_char_cursor#59 ← phi( main::@11/(byte*) print_char_cursor#7 )
|
||||
(byte*) print_char_cursor#21 ← (byte*) print_char_cursor#59
|
||||
call print_ln param-assignment
|
||||
to:main::@13
|
||||
main::@13: scope:[main] from main::@12
|
||||
(word) rem16u#42 ← phi( main::@12/(word) rem16u#43 )
|
||||
(word) rem16u#43 ← phi( main::@12/(word) rem16u#44 )
|
||||
(byte*) print_char_cursor#60 ← phi( main::@12/(byte*) print_char_cursor#4 )
|
||||
(byte*) print_line_cursor#16 ← phi( main::@12/(byte*) print_line_cursor#2 )
|
||||
(byte*) print_line_cursor#6 ← (byte*) print_line_cursor#16
|
||||
@ -2150,16 +2156,16 @@ main::@13: scope:[main] from main::@12
|
||||
(byte) main::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
to:main::@1
|
||||
main::@1: scope:[main] from main::@13 main::@21
|
||||
(word) rem16u#41 ← phi( main::@13/(word) rem16u#42 main::@21/(word) rem16u#33 )
|
||||
(byte*) print_line_cursor#47 ← phi( main::@13/(byte*) print_line_cursor#6 main::@21/(byte*) print_line_cursor#7 )
|
||||
(word) rem16u#42 ← phi( main::@13/(word) rem16u#43 main::@21/(word) rem16u#34 )
|
||||
(byte*) print_line_cursor#48 ← phi( main::@13/(byte*) print_line_cursor#6 main::@21/(byte*) print_line_cursor#7 )
|
||||
(byte*) print_char_cursor#83 ← phi( main::@13/(byte*) print_char_cursor#22 main::@21/(byte*) print_char_cursor#30 )
|
||||
(byte) main::i#2 ← phi( main::@13/(byte) main::i#0 main::@21/(byte) main::i#1 )
|
||||
(byte) print_byte::b#2 ← (byte) main::i#2
|
||||
call print_byte param-assignment
|
||||
to:main::@14
|
||||
main::@14: scope:[main] from main::@1
|
||||
(word) rem16u#40 ← phi( main::@1/(word) rem16u#41 )
|
||||
(byte*) print_line_cursor#45 ← phi( main::@1/(byte*) print_line_cursor#47 )
|
||||
(word) rem16u#41 ← phi( main::@1/(word) rem16u#42 )
|
||||
(byte*) print_line_cursor#46 ← phi( main::@1/(byte*) print_line_cursor#48 )
|
||||
(byte) main::i#7 ← phi( main::@1/(byte) main::i#2 )
|
||||
(byte*) print_char_cursor#61 ← phi( main::@1/(byte*) print_char_cursor#10 )
|
||||
(byte*) print_char_cursor#23 ← (byte*) print_char_cursor#61
|
||||
@ -2167,8 +2173,8 @@ main::@14: scope:[main] from main::@1
|
||||
call print_str param-assignment
|
||||
to:main::@15
|
||||
main::@15: scope:[main] from main::@14
|
||||
(word) rem16u#39 ← phi( main::@14/(word) rem16u#40 )
|
||||
(byte*) print_line_cursor#43 ← phi( main::@14/(byte*) print_line_cursor#45 )
|
||||
(word) rem16u#40 ← phi( main::@14/(word) rem16u#41 )
|
||||
(byte*) print_line_cursor#44 ← phi( main::@14/(byte*) print_line_cursor#46 )
|
||||
(byte) main::i#3 ← phi( main::@14/(byte) main::i#7 )
|
||||
(byte*) print_char_cursor#62 ← phi( main::@14/(byte*) print_char_cursor#2 )
|
||||
(byte*) print_char_cursor#24 ← (byte*) print_char_cursor#62
|
||||
@ -2176,8 +2182,8 @@ main::@15: scope:[main] from main::@14
|
||||
call print_word param-assignment
|
||||
to:main::@16
|
||||
main::@16: scope:[main] from main::@15
|
||||
(word) rem16u#38 ← phi( main::@15/(word) rem16u#39 )
|
||||
(byte*) print_line_cursor#40 ← phi( main::@15/(byte*) print_line_cursor#43 )
|
||||
(word) rem16u#39 ← phi( main::@15/(word) rem16u#40 )
|
||||
(byte*) print_line_cursor#41 ← phi( main::@15/(byte*) print_line_cursor#44 )
|
||||
(byte) main::i#8 ← phi( main::@15/(byte) main::i#3 )
|
||||
(byte*) print_char_cursor#63 ← phi( main::@15/(byte*) print_char_cursor#7 )
|
||||
(byte*) print_char_cursor#25 ← (byte*) print_char_cursor#63
|
||||
@ -2185,8 +2191,8 @@ main::@16: scope:[main] from main::@15
|
||||
call print_str param-assignment
|
||||
to:main::@17
|
||||
main::@17: scope:[main] from main::@16
|
||||
(word) rem16u#37 ← phi( main::@16/(word) rem16u#38 )
|
||||
(byte*) print_line_cursor#37 ← phi( main::@16/(byte*) print_line_cursor#40 )
|
||||
(word) rem16u#38 ← phi( main::@16/(word) rem16u#39 )
|
||||
(byte*) print_line_cursor#38 ← phi( main::@16/(byte*) print_line_cursor#41 )
|
||||
(byte) main::i#4 ← phi( main::@16/(byte) main::i#8 )
|
||||
(byte*) print_char_cursor#64 ← phi( main::@16/(byte*) print_char_cursor#2 )
|
||||
(byte*) print_char_cursor#26 ← (byte*) print_char_cursor#64
|
||||
@ -2194,8 +2200,8 @@ main::@17: scope:[main] from main::@16
|
||||
call print_word param-assignment
|
||||
to:main::@18
|
||||
main::@18: scope:[main] from main::@17
|
||||
(word) rem16u#36 ← phi( main::@17/(word) rem16u#37 )
|
||||
(byte*) print_line_cursor#33 ← phi( main::@17/(byte*) print_line_cursor#37 )
|
||||
(word) rem16u#37 ← phi( main::@17/(word) rem16u#38 )
|
||||
(byte*) print_line_cursor#34 ← phi( main::@17/(byte*) print_line_cursor#38 )
|
||||
(byte) main::i#9 ← phi( main::@17/(byte) main::i#4 )
|
||||
(byte*) print_char_cursor#65 ← phi( main::@17/(byte*) print_char_cursor#7 )
|
||||
(byte*) print_char_cursor#27 ← (byte*) print_char_cursor#65
|
||||
@ -2203,8 +2209,8 @@ main::@18: scope:[main] from main::@17
|
||||
call print_str param-assignment
|
||||
to:main::@19
|
||||
main::@19: scope:[main] from main::@18
|
||||
(word) rem16u#35 ← phi( main::@18/(word) rem16u#36 )
|
||||
(byte*) print_line_cursor#29 ← phi( main::@18/(byte*) print_line_cursor#33 )
|
||||
(word) rem16u#36 ← phi( main::@18/(word) rem16u#37 )
|
||||
(byte*) print_line_cursor#29 ← phi( main::@18/(byte*) print_line_cursor#34 )
|
||||
(byte) main::i#5 ← phi( main::@18/(byte) main::i#9 )
|
||||
(byte*) print_char_cursor#66 ← phi( main::@18/(byte*) print_char_cursor#2 )
|
||||
(byte*) print_char_cursor#28 ← (byte*) print_char_cursor#66
|
||||
@ -2212,7 +2218,7 @@ main::@19: scope:[main] from main::@18
|
||||
call print_word param-assignment
|
||||
to:main::@20
|
||||
main::@20: scope:[main] from main::@19
|
||||
(word) rem16u#34 ← phi( main::@19/(word) rem16u#35 )
|
||||
(word) rem16u#35 ← phi( main::@19/(word) rem16u#36 )
|
||||
(byte) main::i#10 ← phi( main::@19/(byte) main::i#5 )
|
||||
(byte*) print_line_cursor#24 ← phi( main::@19/(byte*) print_line_cursor#29 )
|
||||
(byte*) print_char_cursor#67 ← phi( main::@19/(byte*) print_char_cursor#7 )
|
||||
@ -2220,7 +2226,7 @@ main::@20: scope:[main] from main::@19
|
||||
call print_ln param-assignment
|
||||
to:main::@21
|
||||
main::@21: scope:[main] from main::@20
|
||||
(word) rem16u#33 ← phi( main::@20/(word) rem16u#34 )
|
||||
(word) rem16u#34 ← phi( main::@20/(word) rem16u#35 )
|
||||
(byte) main::i#6 ← phi( main::@20/(byte) main::i#10 )
|
||||
(byte*) print_char_cursor#68 ← phi( main::@20/(byte*) print_char_cursor#4 )
|
||||
(byte*) print_line_cursor#17 ← phi( main::@20/(byte*) print_line_cursor#2 )
|
||||
@ -2233,54 +2239,54 @@ main::@21: scope:[main] from main::@20
|
||||
if((boolean~) main::$21) goto main::@1
|
||||
to:main::@2
|
||||
main::@2: scope:[main] from main::@21
|
||||
(word) rem16u#32 ← phi( main::@21/(word) rem16u#33 )
|
||||
(byte*) print_line_cursor#46 ← phi( main::@21/(byte*) print_line_cursor#7 )
|
||||
(word) rem16u#33 ← phi( main::@21/(word) rem16u#34 )
|
||||
(byte*) print_line_cursor#47 ← phi( main::@21/(byte*) print_line_cursor#7 )
|
||||
(byte*) print_char_cursor#84 ← phi( main::@21/(byte*) print_char_cursor#30 )
|
||||
(byte*) print_str::str#7 ← (const string) main::str6
|
||||
call print_str param-assignment
|
||||
to:main::@22
|
||||
main::@22: scope:[main] from main::@2
|
||||
(word) rem16u#31 ← phi( main::@2/(word) rem16u#32 )
|
||||
(byte*) print_line_cursor#44 ← phi( main::@2/(byte*) print_line_cursor#46 )
|
||||
(word) rem16u#32 ← phi( main::@2/(word) rem16u#33 )
|
||||
(byte*) print_line_cursor#45 ← phi( main::@2/(byte*) print_line_cursor#47 )
|
||||
(byte*) print_char_cursor#69 ← phi( main::@2/(byte*) print_char_cursor#2 )
|
||||
(byte*) print_char_cursor#31 ← (byte*) print_char_cursor#69
|
||||
(word) print_word::w#6 ← (word/signed word/dword/signed dword) 29793
|
||||
call print_word param-assignment
|
||||
to:main::@23
|
||||
main::@23: scope:[main] from main::@22
|
||||
(word) rem16u#30 ← phi( main::@22/(word) rem16u#31 )
|
||||
(byte*) print_line_cursor#41 ← phi( main::@22/(byte*) print_line_cursor#44 )
|
||||
(word) rem16u#31 ← phi( main::@22/(word) rem16u#32 )
|
||||
(byte*) print_line_cursor#42 ← phi( main::@22/(byte*) print_line_cursor#45 )
|
||||
(byte*) print_char_cursor#70 ← phi( main::@22/(byte*) print_char_cursor#7 )
|
||||
(byte*) print_char_cursor#32 ← (byte*) print_char_cursor#70
|
||||
(byte*) print_str::str#8 ← (const string) main::str7
|
||||
call print_str param-assignment
|
||||
to:main::@24
|
||||
main::@24: scope:[main] from main::@23
|
||||
(word) rem16u#29 ← phi( main::@23/(word) rem16u#30 )
|
||||
(byte*) print_line_cursor#38 ← phi( main::@23/(byte*) print_line_cursor#41 )
|
||||
(word) rem16u#30 ← phi( main::@23/(word) rem16u#31 )
|
||||
(byte*) print_line_cursor#39 ← phi( main::@23/(byte*) print_line_cursor#42 )
|
||||
(byte*) print_char_cursor#71 ← phi( main::@23/(byte*) print_char_cursor#2 )
|
||||
(byte*) print_char_cursor#33 ← (byte*) print_char_cursor#71
|
||||
(word) print_word::w#7 ← (word/dword/signed dword) 63361
|
||||
call print_word param-assignment
|
||||
to:main::@25
|
||||
main::@25: scope:[main] from main::@24
|
||||
(word) rem16u#28 ← phi( main::@24/(word) rem16u#29 )
|
||||
(byte*) print_line_cursor#34 ← phi( main::@24/(byte*) print_line_cursor#38 )
|
||||
(word) rem16u#29 ← phi( main::@24/(word) rem16u#30 )
|
||||
(byte*) print_line_cursor#35 ← phi( main::@24/(byte*) print_line_cursor#39 )
|
||||
(byte*) print_char_cursor#72 ← phi( main::@24/(byte*) print_char_cursor#7 )
|
||||
(byte*) print_char_cursor#34 ← (byte*) print_char_cursor#72
|
||||
(byte*) print_str::str#9 ← (const string) main::str8
|
||||
call print_str param-assignment
|
||||
to:main::@26
|
||||
main::@26: scope:[main] from main::@25
|
||||
(word) rem16u#27 ← phi( main::@25/(word) rem16u#28 )
|
||||
(byte*) print_line_cursor#30 ← phi( main::@25/(byte*) print_line_cursor#34 )
|
||||
(word) rem16u#28 ← phi( main::@25/(word) rem16u#29 )
|
||||
(byte*) print_line_cursor#30 ← phi( main::@25/(byte*) print_line_cursor#35 )
|
||||
(byte*) print_char_cursor#73 ← phi( main::@25/(byte*) print_char_cursor#2 )
|
||||
(byte*) print_char_cursor#35 ← (byte*) print_char_cursor#73
|
||||
(word) print_word::w#8 ← (word/signed word/dword/signed dword) 25736
|
||||
call print_word param-assignment
|
||||
to:main::@27
|
||||
main::@27: scope:[main] from main::@26
|
||||
(word) rem16u#25 ← phi( main::@26/(word) rem16u#27 )
|
||||
(word) rem16u#25 ← phi( main::@26/(word) rem16u#28 )
|
||||
(byte*) print_line_cursor#25 ← phi( main::@26/(byte*) print_line_cursor#30 )
|
||||
(byte*) print_char_cursor#74 ← phi( main::@26/(byte*) print_char_cursor#7 )
|
||||
(byte*) print_char_cursor#36 ← (byte*) print_char_cursor#74
|
||||
@ -2369,11 +2375,11 @@ lin16u_gen::@return: scope:[lin16u_gen] from lin16u_gen::@1
|
||||
(word) rem16u#9 ← (word) rem16u#18
|
||||
return
|
||||
to:@return
|
||||
@23: scope:[] from @7
|
||||
(byte*) print_screen#8 ← phi( @7/(byte*) print_screen#0 )
|
||||
(byte*) print_char_cursor#85 ← phi( @7/(byte*) print_char_cursor#0 )
|
||||
(byte*) print_line_cursor#26 ← phi( @7/(byte*) print_line_cursor#0 )
|
||||
(word) rem16u#24 ← phi( @7/(word) rem16u#26 )
|
||||
@23: scope:[] from @17
|
||||
(byte*) print_screen#8 ← phi( @17/(byte*) print_screen#9 )
|
||||
(byte*) print_char_cursor#85 ← phi( @17/(byte*) print_char_cursor#88 )
|
||||
(byte*) print_line_cursor#26 ← phi( @17/(byte*) print_line_cursor#31 )
|
||||
(word) rem16u#24 ← phi( @17/(word) rem16u#26 )
|
||||
call main param-assignment
|
||||
to:@24
|
||||
@24: scope:[] from @23
|
||||
@ -2387,6 +2393,8 @@ lin16u_gen::@return: scope:[lin16u_gen] from lin16u_gen::@1
|
||||
@end: scope:[] from @24
|
||||
|
||||
SYMBOL TABLE SSA
|
||||
(const string) $0 = (string) "0123456789abcdef"
|
||||
(label) @17
|
||||
(label) @2
|
||||
(label) @23
|
||||
(label) @24
|
||||
@ -2595,7 +2603,6 @@ SYMBOL TABLE SSA
|
||||
(void()) print_byte((byte) print_byte::b)
|
||||
(byte~) print_byte::$0
|
||||
(byte~) print_byte::$2
|
||||
(const string) print_byte::$4 = (string) "0123456789abcdef"
|
||||
(label) print_byte::@1
|
||||
(label) print_byte::@2
|
||||
(label) print_byte::@return
|
||||
@ -2605,8 +2612,6 @@ SYMBOL TABLE SSA
|
||||
(byte) print_byte::b#2
|
||||
(byte) print_byte::b#3
|
||||
(byte) print_byte::b#4
|
||||
(byte[]) print_byte::hextab
|
||||
(byte[]) print_byte::hextab#0
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -2704,6 +2709,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_char_cursor#88
|
||||
(byte*) print_char_cursor#89
|
||||
(byte*) print_char_cursor#9
|
||||
(byte*) print_char_cursor#90
|
||||
(void()) print_cls()
|
||||
(byte*~) print_cls::$0
|
||||
(boolean~) print_cls::$1
|
||||
@ -2714,6 +2720,8 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_cls::sc#0
|
||||
(byte*) print_cls::sc#1
|
||||
(byte*) print_cls::sc#2
|
||||
(byte[]) print_hextab
|
||||
(byte[]) print_hextab#0
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#0
|
||||
(byte*) print_line_cursor#1
|
||||
@ -2758,6 +2766,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_line_cursor#45
|
||||
(byte*) print_line_cursor#46
|
||||
(byte*) print_line_cursor#47
|
||||
(byte*) print_line_cursor#48
|
||||
(byte*) print_line_cursor#5
|
||||
(byte*) print_line_cursor#6
|
||||
(byte*) print_line_cursor#7
|
||||
@ -2779,6 +2788,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_screen#6
|
||||
(byte*) print_screen#7
|
||||
(byte*) print_screen#8
|
||||
(byte*) print_screen#9
|
||||
(void()) print_str((byte*) print_str::str)
|
||||
(boolean~) print_str::$0
|
||||
(label) print_str::@1
|
||||
@ -2863,6 +2873,7 @@ SYMBOL TABLE SSA
|
||||
(word) rem16u#48
|
||||
(word) rem16u#49
|
||||
(word) rem16u#5
|
||||
(word) rem16u#50
|
||||
(word) rem16u#6
|
||||
(word) rem16u#7
|
||||
(word) rem16u#8
|
||||
@ -2894,8 +2905,8 @@ Not aliassing across scopes: print_screen#1 print_screen#4
|
||||
Not aliassing across scopes: print_cls::sc#0 print_screen#1
|
||||
Not aliassing across scopes: rem16u#20 rem16u#24
|
||||
Not aliassing across scopes: print_screen#7 print_screen#8
|
||||
Not aliassing across scopes: print_line_cursor#35 print_line_cursor#26
|
||||
Not aliassing across scopes: print_char_cursor#89 print_char_cursor#85
|
||||
Not aliassing across scopes: print_line_cursor#36 print_line_cursor#26
|
||||
Not aliassing across scopes: print_char_cursor#90 print_char_cursor#85
|
||||
Not aliassing across scopes: lin16u_gen::lintab#0 main::lintab1#0
|
||||
Not aliassing across scopes: rem16u#12 rem16u#9
|
||||
Not aliassing across scopes: lin16u_gen::lintab#1 main::lintab2#0
|
||||
@ -2964,8 +2975,8 @@ Alias (word) divr16u::rem#2 = (word~) divr16u::$10
|
||||
Alias (word) divr16u::rem#11 = (word) divr16u::rem#9
|
||||
Alias (word) divr16u::return#0 = (word) divr16u::quotient#5 (word) divr16u::quotient#8 (word) divr16u::return#4 (word) divr16u::return#1
|
||||
Alias (word) rem16u#1 = (word) rem16u#11 (word) rem16u#2
|
||||
Alias (word) rem16u#0 = (word) rem16u#26 (word) rem16u#24
|
||||
Alias (byte*) print_line_cursor#0 = (byte*) print_screen#0 (byte*) print_char_cursor#0 (byte*) print_line_cursor#26 (byte*) print_char_cursor#85 (byte*) print_screen#8
|
||||
Alias (word) rem16u#0 = (word) rem16u#27 (word) rem16u#26 (word) rem16u#24
|
||||
Alias (byte*) print_line_cursor#0 = (byte*) print_screen#0 (byte*) print_char_cursor#0 (byte*) print_line_cursor#31 (byte*) print_char_cursor#88 (byte*) print_screen#9 (byte*) print_line_cursor#26 (byte*) print_char_cursor#85 (byte*) print_screen#8
|
||||
Alias (byte*) print_str::str#10 = (byte*) print_str::str#11
|
||||
Alias (byte*) print_char_cursor#2 = (byte*) print_char_cursor#40 (byte*) print_char_cursor#78 (byte*) print_char_cursor#41
|
||||
Alias (byte*) print_line_cursor#1 = (byte*~) print_ln::$0 (byte*) print_line_cursor#12 (byte*) print_char_cursor#3 (byte*) print_line_cursor#13 (byte*) print_char_cursor#43 (byte*) print_line_cursor#2 (byte*) print_char_cursor#4
|
||||
@ -2980,12 +2991,12 @@ Alias (byte*) print_char_cursor#10 = (byte*) print_char_cursor#9 (byte*) print_c
|
||||
Alias (byte*) print_char_cursor#11 = (byte*) print_char_cursor#51 (byte*) print_char_cursor#12
|
||||
Alias (byte*) print_line_cursor#14 = (byte*) print_screen#3 (byte*) print_screen#2 (byte*) print_line_cursor#3 (byte*) print_char_cursor#13 (byte*) print_char_cursor#52 (byte*) print_line_cursor#4 (byte*) print_char_cursor#14
|
||||
Alias (byte*) print_screen#4 = (byte*) print_screen#6 (byte*) print_screen#7 (byte*) print_screen#5
|
||||
Alias (byte*) print_line_cursor#22 = (byte*) print_line_cursor#31 (byte*) print_line_cursor#35 (byte*) print_line_cursor#27
|
||||
Alias (byte*) print_char_cursor#82 = (byte*) print_char_cursor#88 (byte*) print_char_cursor#89 (byte*) print_char_cursor#87
|
||||
Alias (byte*) print_line_cursor#22 = (byte*) print_line_cursor#32 (byte*) print_line_cursor#36 (byte*) print_line_cursor#27
|
||||
Alias (byte*) print_char_cursor#82 = (byte*) print_char_cursor#89 (byte*) print_char_cursor#90 (byte*) print_char_cursor#87
|
||||
Alias (word) rem16u#12 = (word) rem16u#3
|
||||
Alias (word) rem16u#13 = (word) rem16u#4
|
||||
Alias (word) rem16u#14 = (word) rem16u#5 (word) rem16u#49 (word) rem16u#48 (word) rem16u#47 (word) rem16u#46 (word) rem16u#45 (word) rem16u#44 (word) rem16u#43 (word) rem16u#42
|
||||
Alias (byte*) print_line_cursor#15 = (byte*) print_line_cursor#5 (byte*) print_line_cursor#42 (byte*) print_line_cursor#39 (byte*) print_line_cursor#36 (byte*) print_line_cursor#32 (byte*) print_line_cursor#28 (byte*) print_line_cursor#23
|
||||
Alias (word) rem16u#14 = (word) rem16u#5 (word) rem16u#50 (word) rem16u#49 (word) rem16u#48 (word) rem16u#47 (word) rem16u#46 (word) rem16u#45 (word) rem16u#44 (word) rem16u#43
|
||||
Alias (byte*) print_line_cursor#15 = (byte*) print_line_cursor#5 (byte*) print_line_cursor#43 (byte*) print_line_cursor#40 (byte*) print_line_cursor#37 (byte*) print_line_cursor#33 (byte*) print_line_cursor#28 (byte*) print_line_cursor#23
|
||||
Alias (byte*) print_char_cursor#15 = (byte*) print_char_cursor#53
|
||||
Alias (byte*) print_char_cursor#16 = (byte*) print_char_cursor#54
|
||||
Alias (byte*) print_char_cursor#17 = (byte*) print_char_cursor#55
|
||||
@ -2996,8 +3007,8 @@ Alias (byte*) print_char_cursor#21 = (byte*) print_char_cursor#59
|
||||
Alias (byte*) print_line_cursor#16 = (byte*) print_line_cursor#6
|
||||
Alias (byte*) print_char_cursor#22 = (byte*) print_char_cursor#60
|
||||
Alias (byte) main::i#10 = (byte) main::i#7 (byte) main::i#2 (byte) main::i#3 (byte) main::i#8 (byte) main::i#4 (byte) main::i#9 (byte) main::i#5 (byte) main::i#6
|
||||
Alias (byte*) print_line_cursor#24 = (byte*) print_line_cursor#45 (byte*) print_line_cursor#47 (byte*) print_line_cursor#43 (byte*) print_line_cursor#40 (byte*) print_line_cursor#37 (byte*) print_line_cursor#33 (byte*) print_line_cursor#29
|
||||
Alias (word) rem16u#15 = (word) rem16u#40 (word) rem16u#41 (word) rem16u#39 (word) rem16u#38 (word) rem16u#37 (word) rem16u#36 (word) rem16u#35 (word) rem16u#34 (word) rem16u#33 (word) rem16u#32 (word) rem16u#31 (word) rem16u#30 (word) rem16u#29 (word) rem16u#28 (word) rem16u#27 (word) rem16u#25 (word) rem16u#21 (word) rem16u#6
|
||||
Alias (byte*) print_line_cursor#24 = (byte*) print_line_cursor#46 (byte*) print_line_cursor#48 (byte*) print_line_cursor#44 (byte*) print_line_cursor#41 (byte*) print_line_cursor#38 (byte*) print_line_cursor#34 (byte*) print_line_cursor#29
|
||||
Alias (word) rem16u#15 = (word) rem16u#41 (word) rem16u#42 (word) rem16u#40 (word) rem16u#39 (word) rem16u#38 (word) rem16u#37 (word) rem16u#36 (word) rem16u#35 (word) rem16u#34 (word) rem16u#33 (word) rem16u#32 (word) rem16u#31 (word) rem16u#30 (word) rem16u#29 (word) rem16u#28 (word) rem16u#25 (word) rem16u#21 (word) rem16u#6
|
||||
Alias (byte*) print_char_cursor#23 = (byte*) print_char_cursor#61
|
||||
Alias (byte*) print_char_cursor#24 = (byte*) print_char_cursor#62
|
||||
Alias (byte*) print_char_cursor#25 = (byte*) print_char_cursor#63
|
||||
@ -3005,7 +3016,7 @@ Alias (byte*) print_char_cursor#26 = (byte*) print_char_cursor#64
|
||||
Alias (byte*) print_char_cursor#27 = (byte*) print_char_cursor#65
|
||||
Alias (byte*) print_char_cursor#28 = (byte*) print_char_cursor#66
|
||||
Alias (byte*) print_char_cursor#29 = (byte*) print_char_cursor#67
|
||||
Alias (byte*) print_line_cursor#17 = (byte*) print_line_cursor#7 (byte*) print_line_cursor#46 (byte*) print_line_cursor#44 (byte*) print_line_cursor#41 (byte*) print_line_cursor#38 (byte*) print_line_cursor#34 (byte*) print_line_cursor#30 (byte*) print_line_cursor#25
|
||||
Alias (byte*) print_line_cursor#17 = (byte*) print_line_cursor#7 (byte*) print_line_cursor#47 (byte*) print_line_cursor#45 (byte*) print_line_cursor#42 (byte*) print_line_cursor#39 (byte*) print_line_cursor#35 (byte*) print_line_cursor#30 (byte*) print_line_cursor#25
|
||||
Alias (byte*) print_char_cursor#30 = (byte*) print_char_cursor#68 (byte*) print_char_cursor#84
|
||||
Alias (byte) main::i#1 = (byte/signed word/word/dword/signed dword~) main::$19
|
||||
Alias (byte*) print_char_cursor#31 = (byte*) print_char_cursor#69
|
||||
@ -3273,7 +3284,7 @@ Constant (const word) rem16u#0 = 0
|
||||
Constant (const word) divr16u::quotient#0 = 0
|
||||
Constant (const byte) divr16u::i#0 = 0
|
||||
Constant (const byte*) print_line_cursor#0 = ((byte*))1024
|
||||
Constant (const string) print_byte::hextab#0 = print_byte::$4
|
||||
Constant (const string) print_hextab#0 = $0
|
||||
Constant (const word[20]) main::lintab1#0 = { fill( 20, 0) }
|
||||
Constant (const word) lin16u_gen::min#0 = 557
|
||||
Constant (const word) lin16u_gen::max#0 = 29793
|
||||
@ -3328,6 +3339,7 @@ Culled Empty Block (label) @2
|
||||
Culled Empty Block (label) @7
|
||||
Culled Empty Block (label) print_ln::@2
|
||||
Culled Empty Block (label) print_word::@2
|
||||
Culled Empty Block (label) @17
|
||||
Culled Empty Block (label) print_byte::@2
|
||||
Culled Empty Block (label) print_cls::@2
|
||||
Culled Empty Block (label) main::@13
|
||||
@ -3534,6 +3546,7 @@ Constant inlined divr16u::i#0 = (byte/signed byte/word/signed word/dword/signed
|
||||
Constant inlined lin16u_gen::max#0 = (word/signed word/dword/signed dword) 29793
|
||||
Constant inlined lin16u_gen::max#2 = (word/signed word/dword/signed dword) 25736
|
||||
Constant inlined lin16u_gen::max#1 = (word/dword/signed dword) 63361
|
||||
Constant inlined $0 = (const string) print_hextab#0
|
||||
Constant inlined divr16u::quotient#0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Constant inlined main::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Constant inlined lin16u_gen::min#0 = (word/signed word/dword/signed dword) 557
|
||||
@ -3555,7 +3568,6 @@ Constant inlined print_str::str#4 = (const string) main::str3
|
||||
Constant inlined print_str::str#3 = (const string) main::str2
|
||||
Constant inlined print_str::str#2 = (const string) main::str1
|
||||
Constant inlined print_str::str#1 = (const string) main::str
|
||||
Constant inlined print_byte::$4 = (const string) print_byte::hextab#0
|
||||
Constant inlined print_str::str#8 = (const string) main::str7
|
||||
Constant inlined lin16u_gen::lintab#2 = (const word[20]) main::lintab3#0
|
||||
Constant inlined lin16u_gen::min#1 = (word/signed word/dword/signed dword) 31179
|
||||
@ -3620,36 +3632,36 @@ Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Created 30 initial phi equivalence classes
|
||||
Coalesced [16] print_char_cursor#102 ← print_char_cursor#11
|
||||
Coalesced (already) [20] print_char_cursor#95 ← print_char_cursor#11
|
||||
Coalesced [16] print_char_cursor#103 ← print_char_cursor#11
|
||||
Coalesced (already) [20] print_char_cursor#96 ← print_char_cursor#11
|
||||
Coalesced [28] print_byte::b#5 ← print_byte::b#2
|
||||
Not coalescing [29] print_char_cursor#90 ← print_line_cursor#1
|
||||
Coalesced (already) [31] print_char_cursor#96 ← print_char_cursor#11
|
||||
Not coalescing [29] print_char_cursor#91 ← print_line_cursor#1
|
||||
Coalesced (already) [31] print_char_cursor#97 ← print_char_cursor#11
|
||||
Coalesced [34] print_word::w#11 ← print_word::w#3
|
||||
Coalesced (already) [36] print_char_cursor#97 ← print_char_cursor#11
|
||||
Coalesced (already) [36] print_char_cursor#98 ← print_char_cursor#11
|
||||
Coalesced [39] print_word::w#12 ← print_word::w#4
|
||||
Coalesced (already) [41] print_char_cursor#98 ← print_char_cursor#11
|
||||
Coalesced (already) [41] print_char_cursor#99 ← print_char_cursor#11
|
||||
Coalesced [44] print_word::w#13 ← print_word::w#5
|
||||
Coalesced [46] print_line_cursor#48 ← print_line_cursor#1
|
||||
Not coalescing [50] print_char_cursor#99 ← print_line_cursor#1
|
||||
Coalesced (already) [54] print_char_cursor#100 ← print_char_cursor#11
|
||||
Coalesced (already) [58] print_char_cursor#101 ← print_char_cursor#11
|
||||
Coalesced (already) [62] print_line_cursor#49 ← print_line_cursor#1
|
||||
Coalesced [46] print_line_cursor#49 ← print_line_cursor#1
|
||||
Not coalescing [50] print_char_cursor#100 ← print_line_cursor#1
|
||||
Coalesced (already) [54] print_char_cursor#101 ← print_char_cursor#11
|
||||
Coalesced (already) [58] print_char_cursor#102 ← print_char_cursor#11
|
||||
Coalesced (already) [62] print_line_cursor#50 ← print_line_cursor#1
|
||||
Coalesced [65] main::i#11 ← main::i#1
|
||||
Coalesced [67] print_line_cursor#50 ← print_line_cursor#21
|
||||
Coalesced (already) [72] print_line_cursor#51 ← print_line_cursor#1
|
||||
Coalesced [67] print_line_cursor#51 ← print_line_cursor#21
|
||||
Coalesced (already) [72] print_line_cursor#52 ← print_line_cursor#1
|
||||
Coalesced [75] print_byte::b#6 ← print_byte::b#0
|
||||
Coalesced [76] print_char_cursor#91 ← print_char_cursor#2
|
||||
Coalesced [76] print_char_cursor#92 ← print_char_cursor#2
|
||||
Coalesced [79] print_byte::b#7 ← print_byte::b#1
|
||||
Coalesced [80] print_char_cursor#92 ← print_char_cursor#11
|
||||
Coalesced [80] print_char_cursor#93 ← print_char_cursor#11
|
||||
Coalesced [86] print_char::ch#3 ← print_char::ch#0
|
||||
Coalesced [87] print_char_cursor#93 ← print_char_cursor#81
|
||||
Coalesced [87] print_char_cursor#94 ← print_char_cursor#81
|
||||
Coalesced [91] print_char::ch#4 ← print_char::ch#1
|
||||
Coalesced (already) [92] print_char_cursor#94 ← print_char_cursor#11
|
||||
Coalesced (already) [92] print_char_cursor#95 ← print_char_cursor#11
|
||||
Coalesced [100] print_str::str#13 ← print_str::str#12
|
||||
Coalesced (already) [101] print_char_cursor#103 ← print_char_cursor#86
|
||||
Coalesced (already) [101] print_char_cursor#104 ← print_char_cursor#86
|
||||
Coalesced [108] print_str::str#14 ← print_str::str#0
|
||||
Coalesced [109] print_char_cursor#104 ← print_char_cursor#1
|
||||
Coalesced [109] print_char_cursor#105 ← print_char_cursor#1
|
||||
Coalesced [116] print_cls::sc#3 ← print_cls::sc#1
|
||||
Coalesced [121] divr16u::dividend#9 ← divr16u::dividend#1
|
||||
Coalesced [122] divr16u::divisor#8 ← divr16u::divisor#0
|
||||
@ -3780,7 +3792,7 @@ main::@12: scope:[main] from main::@11
|
||||
main::@1: scope:[main] from main::@12 main::@21
|
||||
[26] (byte) main::i#10 ← phi( main::@12/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@21/(byte) main::i#1 ) [ main::i#10 print_line_cursor#1 ] ( main:2 [ main::i#10 print_line_cursor#1 ] )
|
||||
[27] (byte) print_byte::b#2 ← (byte) main::i#10 [ main::i#10 print_byte::b#2 print_line_cursor#1 ] ( main:2 [ main::i#10 print_byte::b#2 print_line_cursor#1 ] )
|
||||
[28] (byte*~) print_char_cursor#90 ← (byte*) print_line_cursor#1 [ main::i#10 print_byte::b#2 print_char_cursor#90 print_line_cursor#1 ] ( main:2 [ main::i#10 print_byte::b#2 print_char_cursor#90 print_line_cursor#1 ] )
|
||||
[28] (byte*~) print_char_cursor#91 ← (byte*) print_line_cursor#1 [ main::i#10 print_byte::b#2 print_char_cursor#91 print_line_cursor#1 ] ( main:2 [ main::i#10 print_byte::b#2 print_char_cursor#91 print_line_cursor#1 ] )
|
||||
[29] call print_byte param-assignment [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] ( main:2 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] )
|
||||
to:main::@14
|
||||
main::@14: scope:[main] from main::@1
|
||||
@ -3816,7 +3828,7 @@ main::@21: scope:[main] from main::@20
|
||||
[45] if((byte) main::i#1<(byte/signed byte/word/signed word/dword/signed dword) 20*(byte/signed byte/word/signed word/dword/signed dword) 2) goto main::@1 [ main::i#1 print_line_cursor#1 ] ( main:2 [ main::i#1 print_line_cursor#1 ] )
|
||||
to:main::@2
|
||||
main::@2: scope:[main] from main::@21
|
||||
[46] (byte*~) print_char_cursor#99 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#99 ] ( main:2 [ print_line_cursor#1 print_char_cursor#99 ] )
|
||||
[46] (byte*~) print_char_cursor#100 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#100 ] ( main:2 [ print_line_cursor#1 print_char_cursor#100 ] )
|
||||
[47] call print_str param-assignment [ print_line_cursor#1 print_char_cursor#2 ] ( main:2 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
to:main::@22
|
||||
main::@22: scope:[main] from main::@2
|
||||
@ -3870,15 +3882,15 @@ print_word::@return: scope:[print_word] from print_word::@1
|
||||
[71] return [ print_char_cursor#11 ] ( main:2::print_word:15 [ print_char_cursor#11 ] main:2::print_word:19 [ print_char_cursor#11 ] main:2::print_word:23 [ print_char_cursor#11 ] main:2::print_word:33 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:37 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:41 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:49 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:53 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:57 [ print_line_cursor#1 print_char_cursor#11 ] )
|
||||
to:@return
|
||||
print_byte: scope:[print_byte] from main::@1 print_word print_word::@1
|
||||
[72] (byte*) print_char_cursor#81 ← phi( main::@1/(byte*~) print_char_cursor#90 print_word/(byte*) print_char_cursor#2 print_word::@1/(byte*) print_char_cursor#11 ) [ print_byte::b#3 print_char_cursor#81 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:15::print_byte:70 [ print_byte::b#3 print_char_cursor#81 ] main:2::print_word:19::print_byte:70 [ print_byte::b#3 print_char_cursor#81 ] main:2::print_word:23::print_byte:70 [ print_byte::b#3 print_char_cursor#81 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] )
|
||||
[72] (byte*) print_char_cursor#81 ← phi( main::@1/(byte*~) print_char_cursor#91 print_word/(byte*) print_char_cursor#2 print_word::@1/(byte*) print_char_cursor#11 ) [ print_byte::b#3 print_char_cursor#81 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:15::print_byte:70 [ print_byte::b#3 print_char_cursor#81 ] main:2::print_word:19::print_byte:70 [ print_byte::b#3 print_char_cursor#81 ] main:2::print_word:23::print_byte:70 [ print_byte::b#3 print_char_cursor#81 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] )
|
||||
[72] (byte) print_byte::b#3 ← phi( main::@1/(byte) print_byte::b#2 print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) [ print_byte::b#3 print_char_cursor#81 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:15::print_byte:70 [ print_byte::b#3 print_char_cursor#81 ] main:2::print_word:19::print_byte:70 [ print_byte::b#3 print_char_cursor#81 ] main:2::print_word:23::print_byte:70 [ print_byte::b#3 print_char_cursor#81 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 ] )
|
||||
[73] (byte~) print_byte::$0 ← (byte) print_byte::b#3 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#3 print_char_cursor#81 print_byte::$0 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:15::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:19::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:23::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_byte::$0 ] )
|
||||
[74] (byte) print_char::ch#0 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:15::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:19::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:23::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] )
|
||||
[74] (byte) print_char::ch#0 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:15::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:19::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:23::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] )
|
||||
[75] call print_char param-assignment [ print_char_cursor#11 print_byte::b#3 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 print_byte::b#3 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 print_byte::b#3 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 print_byte::b#3 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] )
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
[76] (byte~) print_byte::$2 ← (byte) print_byte::b#3 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#11 print_byte::$2 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 print_byte::$2 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 print_byte::$2 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 print_byte::$2 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] )
|
||||
[77] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#11 print_char::ch#1 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] )
|
||||
[77] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#11 print_char::ch#1 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] )
|
||||
[78] call print_char param-assignment [ print_char_cursor#11 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] )
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte::@1
|
||||
@ -3894,7 +3906,7 @@ print_char::@return: scope:[print_char] from print_char
|
||||
[83] return [ print_char_cursor#11 ] ( main:2::print_byte:29::print_char:75 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:15::print_byte:68::print_char:75 [ print_word::w#10 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:19::print_byte:68::print_char:75 [ print_word::w#10 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:23::print_byte:68::print_char:75 [ print_word::w#10 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:33::print_byte:68::print_char:75 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:37::print_byte:68::print_char:75 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:41::print_byte:68::print_char:75 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:49::print_byte:68::print_char:75 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:53::print_byte:68::print_char:75 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:57::print_byte:68::print_char:75 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:15::print_byte:70::print_char:75 [ print_byte::b#3 print_char_cursor#11 ] main:2::print_word:19::print_byte:70::print_char:75 [ print_byte::b#3 print_char_cursor#11 ] main:2::print_word:23::print_byte:70::print_char:75 [ print_byte::b#3 print_char_cursor#11 ] main:2::print_word:33::print_byte:70::print_char:75 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:37::print_byte:70::print_char:75 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:41::print_byte:70::print_char:75 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:49::print_byte:70::print_char:75 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:53::print_byte:70::print_char:75 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#11 ] main:2::print_word:57::print_byte:70::print_char:75 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#11 ] main:2::print_byte:29::print_char:78 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:15::print_byte:68::print_char:78 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:19::print_byte:68::print_char:78 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:23::print_byte:68::print_char:78 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:33::print_byte:68::print_char:78 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:37::print_byte:68::print_char:78 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:41::print_byte:68::print_char:78 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:49::print_byte:68::print_char:78 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:53::print_byte:68::print_char:78 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:57::print_byte:68::print_char:78 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:15::print_byte:70::print_char:78 [ print_char_cursor#11 ] main:2::print_word:19::print_byte:70::print_char:78 [ print_char_cursor#11 ] main:2::print_word:23::print_byte:70::print_char:78 [ print_char_cursor#11 ] main:2::print_word:33::print_byte:70::print_char:78 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:37::print_byte:70::print_char:78 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:41::print_byte:70::print_char:78 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:49::print_byte:70::print_char:78 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:53::print_byte:70::print_char:78 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:57::print_byte:70::print_char:78 [ print_line_cursor#1 print_char_cursor#11 ] )
|
||||
to:@return
|
||||
print_str: scope:[print_str] from main::@10 main::@14 main::@16 main::@18 main::@2 main::@23 main::@25 main::@6 main::@8
|
||||
[84] (byte*) print_char_cursor#86 ← phi( main::@10/(byte*) print_char_cursor#11 main::@14/(byte*) print_char_cursor#11 main::@16/(byte*) print_char_cursor#11 main::@18/(byte*) print_char_cursor#11 main::@2/(byte*~) print_char_cursor#99 main::@23/(byte*) print_char_cursor#11 main::@25/(byte*) print_char_cursor#11 main::@6/((byte*))(word/signed word/dword/signed dword) 1024 main::@8/(byte*) print_char_cursor#11 ) [ print_str::str#12 print_char_cursor#86 ] ( main:2::print_str:13 [ print_str::str#12 print_char_cursor#86 ] main:2::print_str:17 [ print_str::str#12 print_char_cursor#86 ] main:2::print_str:21 [ print_str::str#12 print_char_cursor#86 ] main:2::print_str:31 [ main::i#10 print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:35 [ main::i#10 print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:39 [ main::i#10 print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:47 [ print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:51 [ print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:55 [ print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] )
|
||||
[84] (byte*) print_char_cursor#86 ← phi( main::@10/(byte*) print_char_cursor#11 main::@14/(byte*) print_char_cursor#11 main::@16/(byte*) print_char_cursor#11 main::@18/(byte*) print_char_cursor#11 main::@2/(byte*~) print_char_cursor#100 main::@23/(byte*) print_char_cursor#11 main::@25/(byte*) print_char_cursor#11 main::@6/((byte*))(word/signed word/dword/signed dword) 1024 main::@8/(byte*) print_char_cursor#11 ) [ print_str::str#12 print_char_cursor#86 ] ( main:2::print_str:13 [ print_str::str#12 print_char_cursor#86 ] main:2::print_str:17 [ print_str::str#12 print_char_cursor#86 ] main:2::print_str:21 [ print_str::str#12 print_char_cursor#86 ] main:2::print_str:31 [ main::i#10 print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:35 [ main::i#10 print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:39 [ main::i#10 print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:47 [ print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:51 [ print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:55 [ print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] )
|
||||
[84] (byte*) print_str::str#12 ← phi( main::@10/(const string) main::str2 main::@14/(const string) main::str3 main::@16/(const string) main::str4 main::@18/(const string) main::str5 main::@2/(const string) main::str6 main::@23/(const string) main::str7 main::@25/(const string) main::str8 main::@6/(const string) main::str main::@8/(const string) main::str1 ) [ print_str::str#12 print_char_cursor#86 ] ( main:2::print_str:13 [ print_str::str#12 print_char_cursor#86 ] main:2::print_str:17 [ print_str::str#12 print_char_cursor#86 ] main:2::print_str:21 [ print_str::str#12 print_char_cursor#86 ] main:2::print_str:31 [ main::i#10 print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:35 [ main::i#10 print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:39 [ main::i#10 print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:47 [ print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:51 [ print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] main:2::print_str:55 [ print_line_cursor#1 print_str::str#12 print_char_cursor#86 ] )
|
||||
to:print_str::@1
|
||||
print_str::@1: scope:[print_str] from print_str print_str::@2
|
||||
@ -4184,7 +4196,6 @@ VARIABLE REGISTER WEIGHTS
|
||||
(byte) print_byte::b#1 4.0
|
||||
(byte) print_byte::b#2 11.0
|
||||
(byte) print_byte::b#3 4.75
|
||||
(byte[]) print_byte::hextab
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(byte) print_char::ch
|
||||
(byte) print_char::ch#0 4.0
|
||||
@ -4192,17 +4203,18 @@ VARIABLE REGISTER WEIGHTS
|
||||
(byte) print_char::ch#2 6.0
|
||||
(byte*) print_char_cursor
|
||||
(byte*) print_char_cursor#1 101.0
|
||||
(byte*~) print_char_cursor#100 4.0
|
||||
(byte*) print_char_cursor#11 4.228571428571427
|
||||
(byte*) print_char_cursor#2 12.791666666666664
|
||||
(byte*) print_char_cursor#50 4.0
|
||||
(byte*) print_char_cursor#81 5.666666666666667
|
||||
(byte*) print_char_cursor#86 45.0
|
||||
(byte*~) print_char_cursor#90 22.0
|
||||
(byte*~) print_char_cursor#99 4.0
|
||||
(byte*~) print_char_cursor#91 22.0
|
||||
(void()) print_cls()
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 16.5
|
||||
(byte*) print_cls::sc#2 16.5
|
||||
(byte[]) print_hextab
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#1 8.891891891891891
|
||||
(byte*) print_line_cursor#11 204.0
|
||||
@ -4229,7 +4241,7 @@ Initial phi equivalence classes
|
||||
[ print_word::w#10 print_word::w#3 print_word::w#4 print_word::w#5 ]
|
||||
[ print_byte::b#3 print_byte::b#2 print_byte::b#0 print_byte::b#1 ]
|
||||
[ print_char::ch#2 print_char::ch#0 print_char::ch#1 ]
|
||||
[ print_char_cursor#86 print_char_cursor#50 print_char_cursor#81 print_char_cursor#90 print_char_cursor#2 print_char_cursor#11 print_char_cursor#99 print_char_cursor#1 ]
|
||||
[ print_char_cursor#86 print_char_cursor#50 print_char_cursor#81 print_char_cursor#91 print_char_cursor#2 print_char_cursor#11 print_char_cursor#100 print_char_cursor#1 ]
|
||||
[ print_str::str#10 print_str::str#12 print_str::str#0 ]
|
||||
[ print_cls::sc#2 print_cls::sc#1 ]
|
||||
[ lin16u_gen::max#3 ]
|
||||
@ -4261,7 +4273,7 @@ Complete equivalence classes
|
||||
[ print_word::w#10 print_word::w#3 print_word::w#4 print_word::w#5 ]
|
||||
[ print_byte::b#3 print_byte::b#2 print_byte::b#0 print_byte::b#1 ]
|
||||
[ print_char::ch#2 print_char::ch#0 print_char::ch#1 ]
|
||||
[ print_char_cursor#86 print_char_cursor#50 print_char_cursor#81 print_char_cursor#90 print_char_cursor#2 print_char_cursor#11 print_char_cursor#99 print_char_cursor#1 ]
|
||||
[ print_char_cursor#86 print_char_cursor#50 print_char_cursor#81 print_char_cursor#91 print_char_cursor#2 print_char_cursor#11 print_char_cursor#100 print_char_cursor#1 ]
|
||||
[ print_str::str#10 print_str::str#12 print_str::str#0 ]
|
||||
[ print_cls::sc#2 print_cls::sc#1 ]
|
||||
[ lin16u_gen::max#3 ]
|
||||
@ -4292,7 +4304,7 @@ Allocated zp ZP_WORD:3 [ print_line_cursor#11 print_line_cursor#21 print_line_cu
|
||||
Allocated zp ZP_WORD:5 [ print_word::w#10 print_word::w#3 print_word::w#4 print_word::w#5 ]
|
||||
Allocated zp ZP_BYTE:7 [ print_byte::b#3 print_byte::b#2 print_byte::b#0 print_byte::b#1 ]
|
||||
Allocated zp ZP_BYTE:8 [ print_char::ch#2 print_char::ch#0 print_char::ch#1 ]
|
||||
Allocated zp ZP_WORD:9 [ print_char_cursor#86 print_char_cursor#50 print_char_cursor#81 print_char_cursor#90 print_char_cursor#2 print_char_cursor#11 print_char_cursor#99 print_char_cursor#1 ]
|
||||
Allocated zp ZP_WORD:9 [ print_char_cursor#86 print_char_cursor#50 print_char_cursor#81 print_char_cursor#91 print_char_cursor#2 print_char_cursor#11 print_char_cursor#100 print_char_cursor#1 ]
|
||||
Allocated zp ZP_WORD:11 [ print_str::str#10 print_str::str#12 print_str::str#0 ]
|
||||
Allocated zp ZP_WORD:13 [ print_cls::sc#2 print_cls::sc#1 ]
|
||||
Allocated zp ZP_WORD:15 [ lin16u_gen::max#3 ]
|
||||
@ -4558,7 +4570,7 @@ main: {
|
||||
//SEG79 [27] (byte) print_byte::b#2 ← (byte) main::i#10 [ main::i#10 print_byte::b#2 print_line_cursor#1 ] ( main:2 [ main::i#10 print_byte::b#2 print_line_cursor#1 ] ) -- vbuz1=vbuz2
|
||||
lda i
|
||||
sta print_byte.b
|
||||
//SEG80 [28] (byte*~) print_char_cursor#90 ← (byte*) print_line_cursor#1 [ main::i#10 print_byte::b#2 print_char_cursor#90 print_line_cursor#1 ] ( main:2 [ main::i#10 print_byte::b#2 print_char_cursor#90 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
//SEG80 [28] (byte*~) print_char_cursor#91 ← (byte*) print_line_cursor#1 [ main::i#10 print_byte::b#2 print_char_cursor#91 print_line_cursor#1 ] ( main:2 [ main::i#10 print_byte::b#2 print_char_cursor#91 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
lda print_line_cursor
|
||||
sta print_char_cursor
|
||||
lda print_line_cursor+1
|
||||
@ -4566,7 +4578,7 @@ main: {
|
||||
//SEG81 [29] call print_byte param-assignment [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] ( main:2 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] )
|
||||
//SEG82 [72] phi from main::@1 to print_byte [phi:main::@1->print_byte]
|
||||
print_byte_from_b1:
|
||||
//SEG83 [72] phi (byte*) print_char_cursor#81 = (byte*~) print_char_cursor#90 [phi:main::@1->print_byte#0] -- register_copy
|
||||
//SEG83 [72] phi (byte*) print_char_cursor#81 = (byte*~) print_char_cursor#91 [phi:main::@1->print_byte#0] -- register_copy
|
||||
//SEG84 [72] phi (byte) print_byte::b#3 = (byte) print_byte::b#2 [phi:main::@1->print_byte#1] -- register_copy
|
||||
jsr print_byte
|
||||
//SEG85 [30] phi from main::@1 to main::@14 [phi:main::@1->main::@14]
|
||||
@ -4681,7 +4693,7 @@ main: {
|
||||
jmp b2
|
||||
//SEG126 main::@2
|
||||
b2:
|
||||
//SEG127 [46] (byte*~) print_char_cursor#99 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#99 ] ( main:2 [ print_line_cursor#1 print_char_cursor#99 ] ) -- pbuz1=pbuz2
|
||||
//SEG127 [46] (byte*~) print_char_cursor#100 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#100 ] ( main:2 [ print_line_cursor#1 print_char_cursor#100 ] ) -- pbuz1=pbuz2
|
||||
lda print_line_cursor
|
||||
sta print_char_cursor
|
||||
lda print_line_cursor+1
|
||||
@ -4689,7 +4701,7 @@ main: {
|
||||
//SEG128 [47] call print_str param-assignment [ print_line_cursor#1 print_char_cursor#2 ] ( main:2 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
//SEG129 [84] phi from main::@2 to print_str [phi:main::@2->print_str]
|
||||
print_str_from_b2:
|
||||
//SEG130 [84] phi (byte*) print_char_cursor#86 = (byte*~) print_char_cursor#99 [phi:main::@2->print_str#0] -- register_copy
|
||||
//SEG130 [84] phi (byte*) print_char_cursor#86 = (byte*~) print_char_cursor#100 [phi:main::@2->print_str#0] -- register_copy
|
||||
//SEG131 [84] phi (byte*) print_str::str#12 = (const string) main::str6 [phi:main::@2->print_str#1] -- pbuz1=pbuc1
|
||||
lda #<str6
|
||||
sta print_str.str
|
||||
@ -4870,9 +4882,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
sta _0
|
||||
//SEG190 [74] (byte) print_char::ch#0 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:15::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:19::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:23::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
//SEG190 [74] (byte) print_char::ch#0 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:15::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:19::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:23::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
ldy _0
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
sta print_char.ch
|
||||
//SEG191 [75] call print_char param-assignment [ print_char_cursor#11 print_byte::b#3 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 print_byte::b#3 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 print_byte::b#3 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 print_byte::b#3 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] )
|
||||
//SEG192 [80] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
@ -4887,9 +4899,9 @@ print_byte: {
|
||||
lda #$f
|
||||
and b
|
||||
sta _2
|
||||
//SEG197 [77] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#11 print_char::ch#1 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
//SEG197 [77] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#11 print_char::ch#1 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
ldy _2
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
sta print_char.ch
|
||||
//SEG198 [78] call print_char param-assignment [ print_char_cursor#11 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] )
|
||||
//SEG199 [80] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
@ -4902,7 +4914,6 @@ print_byte: {
|
||||
breturn:
|
||||
//SEG203 [79] return [ print_char_cursor#11 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG204 print_char
|
||||
print_char: {
|
||||
@ -5306,16 +5317,17 @@ divr16u: {
|
||||
//SEG309 [136] return [ divr16u::return#0 rem16u#1 ] ( main:2::lin16u_gen:5::divr16u:101 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 divr16u::return#0 rem16u#1 ] main:2::lin16u_gen:7::divr16u:101 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 divr16u::return#0 rem16u#1 ] main:2::lin16u_gen:9::divr16u:101 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 divr16u::return#0 rem16u#1 ] main:2::lin16u_gen:5::divr16u:106 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 lin16u_gen::stepi#0 divr16u::return#0 rem16u#1 ] main:2::lin16u_gen:7::divr16u:106 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 lin16u_gen::stepi#0 divr16u::return#0 rem16u#1 ] main:2::lin16u_gen:9::divr16u:106 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 lin16u_gen::stepi#0 divr16u::return#0 rem16u#1 ] )
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
REGISTER UPLIFT POTENTIAL REGISTERS
|
||||
Statement [28] (byte*~) print_char_cursor#90 ← (byte*) print_line_cursor#1 [ main::i#10 print_byte::b#2 print_char_cursor#90 print_line_cursor#1 ] ( main:2 [ main::i#10 print_byte::b#2 print_char_cursor#90 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [28] (byte*~) print_char_cursor#91 ← (byte*) print_line_cursor#1 [ main::i#10 print_byte::b#2 print_char_cursor#91 print_line_cursor#1 ] ( main:2 [ main::i#10 print_byte::b#2 print_char_cursor#91 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ main::i#10 main::i#1 ]
|
||||
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:7 [ print_byte::b#3 print_byte::b#2 print_byte::b#0 print_byte::b#1 ]
|
||||
Statement [32] (word) print_word::w#3 ← *((const word[20]) main::lintab1#0 + (byte) main::i#10) [ main::i#10 print_line_cursor#1 print_word::w#3 print_char_cursor#2 ] ( main:2 [ main::i#10 print_line_cursor#1 print_word::w#3 print_char_cursor#2 ] ) always clobbers reg byte a
|
||||
Statement [36] (word) print_word::w#4 ← *((const word[20]) main::lintab2#0 + (byte) main::i#10) [ main::i#10 print_line_cursor#1 print_word::w#4 print_char_cursor#2 ] ( main:2 [ main::i#10 print_line_cursor#1 print_word::w#4 print_char_cursor#2 ] ) always clobbers reg byte a
|
||||
Statement [40] (word) print_word::w#5 ← *((const word[20]) main::lintab3#0 + (byte) main::i#10) [ main::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#2 ] ( main:2 [ main::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#2 ] ) always clobbers reg byte a
|
||||
Statement [44] (byte) main::i#1 ← (byte) main::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ main::i#1 print_line_cursor#1 ] ( main:2 [ main::i#1 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [46] (byte*~) print_char_cursor#99 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#99 ] ( main:2 [ print_line_cursor#1 print_char_cursor#99 ] ) always clobbers reg byte a
|
||||
Statement [46] (byte*~) print_char_cursor#100 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#100 ] ( main:2 [ print_line_cursor#1 print_char_cursor#100 ] ) always clobbers reg byte a
|
||||
Statement [63] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#11 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#1 print_char_cursor#11 ] ( main:2::print_ln:25 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_ln:43 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_ln:59 [ print_line_cursor#1 print_char_cursor#11 ] ) always clobbers reg byte a
|
||||
Statement [64] if((byte*) print_line_cursor#1<(byte*) print_char_cursor#11) goto print_ln::@1 [ print_line_cursor#1 print_char_cursor#11 ] ( main:2::print_ln:25 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_ln:43 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_ln:59 [ print_line_cursor#1 print_char_cursor#11 ] ) always clobbers reg byte a
|
||||
Statement [67] (byte) print_byte::b#0 ← > (word) print_word::w#10 [ print_word::w#10 print_byte::b#0 print_char_cursor#2 ] ( main:2::print_word:15 [ print_word::w#10 print_byte::b#0 print_char_cursor#2 ] main:2::print_word:19 [ print_word::w#10 print_byte::b#0 print_char_cursor#2 ] main:2::print_word:23 [ print_word::w#10 print_byte::b#0 print_char_cursor#2 ] main:2::print_word:33 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#0 print_char_cursor#2 ] main:2::print_word:37 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#0 print_char_cursor#2 ] main:2::print_word:41 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#0 print_char_cursor#2 ] main:2::print_word:49 [ print_line_cursor#1 print_word::w#10 print_byte::b#0 print_char_cursor#2 ] main:2::print_word:53 [ print_line_cursor#1 print_word::w#10 print_byte::b#0 print_char_cursor#2 ] main:2::print_word:57 [ print_line_cursor#1 print_word::w#10 print_byte::b#0 print_char_cursor#2 ] ) always clobbers reg byte a
|
||||
@ -5352,12 +5364,12 @@ Statement [125] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed b
|
||||
Statement [129] if((word) divr16u::rem#6<(word) divr16u::divisor#6) goto divr16u::@3 [ divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ( main:2::lin16u_gen:5::divr16u:101 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:2::lin16u_gen:7::divr16u:101 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:2::lin16u_gen:9::divr16u:101 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:2::lin16u_gen:5::divr16u:106 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 lin16u_gen::stepi#0 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:2::lin16u_gen:7::divr16u:106 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 lin16u_gen::stepi#0 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:2::lin16u_gen:9::divr16u:106 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 lin16u_gen::stepi#0 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ) always clobbers reg byte a
|
||||
Statement [131] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (word) divr16u::divisor#6 [ divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::lin16u_gen:5::divr16u:101 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::lin16u_gen:7::divr16u:101 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::lin16u_gen:9::divr16u:101 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::lin16u_gen:5::divr16u:106 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 lin16u_gen::stepi#0 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::lin16u_gen:7::divr16u:106 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 lin16u_gen::stepi#0 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::lin16u_gen:9::divr16u:106 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 lin16u_gen::stepi#0 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a
|
||||
Statement [135] (word) rem16u#1 ← (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:2::lin16u_gen:5::divr16u:101 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 divr16u::return#0 rem16u#1 ] main:2::lin16u_gen:7::divr16u:101 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 divr16u::return#0 rem16u#1 ] main:2::lin16u_gen:9::divr16u:101 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 divr16u::return#0 rem16u#1 ] main:2::lin16u_gen:5::divr16u:106 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 lin16u_gen::stepi#0 divr16u::return#0 rem16u#1 ] main:2::lin16u_gen:7::divr16u:106 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 lin16u_gen::stepi#0 divr16u::return#0 rem16u#1 ] main:2::lin16u_gen:9::divr16u:106 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 lin16u_gen::stepi#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a
|
||||
Statement [28] (byte*~) print_char_cursor#90 ← (byte*) print_line_cursor#1 [ main::i#10 print_byte::b#2 print_char_cursor#90 print_line_cursor#1 ] ( main:2 [ main::i#10 print_byte::b#2 print_char_cursor#90 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [28] (byte*~) print_char_cursor#91 ← (byte*) print_line_cursor#1 [ main::i#10 print_byte::b#2 print_char_cursor#91 print_line_cursor#1 ] ( main:2 [ main::i#10 print_byte::b#2 print_char_cursor#91 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [32] (word) print_word::w#3 ← *((const word[20]) main::lintab1#0 + (byte) main::i#10) [ main::i#10 print_line_cursor#1 print_word::w#3 print_char_cursor#2 ] ( main:2 [ main::i#10 print_line_cursor#1 print_word::w#3 print_char_cursor#2 ] ) always clobbers reg byte a
|
||||
Statement [36] (word) print_word::w#4 ← *((const word[20]) main::lintab2#0 + (byte) main::i#10) [ main::i#10 print_line_cursor#1 print_word::w#4 print_char_cursor#2 ] ( main:2 [ main::i#10 print_line_cursor#1 print_word::w#4 print_char_cursor#2 ] ) always clobbers reg byte a
|
||||
Statement [40] (word) print_word::w#5 ← *((const word[20]) main::lintab3#0 + (byte) main::i#10) [ main::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#2 ] ( main:2 [ main::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#2 ] ) always clobbers reg byte a
|
||||
Statement [44] (byte) main::i#1 ← (byte) main::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ main::i#1 print_line_cursor#1 ] ( main:2 [ main::i#1 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [46] (byte*~) print_char_cursor#99 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#99 ] ( main:2 [ print_line_cursor#1 print_char_cursor#99 ] ) always clobbers reg byte a
|
||||
Statement [46] (byte*~) print_char_cursor#100 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#100 ] ( main:2 [ print_line_cursor#1 print_char_cursor#100 ] ) always clobbers reg byte a
|
||||
Statement [63] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#11 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#1 print_char_cursor#11 ] ( main:2::print_ln:25 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_ln:43 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_ln:59 [ print_line_cursor#1 print_char_cursor#11 ] ) always clobbers reg byte a
|
||||
Statement [64] if((byte*) print_line_cursor#1<(byte*) print_char_cursor#11) goto print_ln::@1 [ print_line_cursor#1 print_char_cursor#11 ] ( main:2::print_ln:25 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_ln:43 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_ln:59 [ print_line_cursor#1 print_char_cursor#11 ] ) always clobbers reg byte a
|
||||
Statement [67] (byte) print_byte::b#0 ← > (word) print_word::w#10 [ print_word::w#10 print_byte::b#0 print_char_cursor#2 ] ( main:2::print_word:15 [ print_word::w#10 print_byte::b#0 print_char_cursor#2 ] main:2::print_word:19 [ print_word::w#10 print_byte::b#0 print_char_cursor#2 ] main:2::print_word:23 [ print_word::w#10 print_byte::b#0 print_char_cursor#2 ] main:2::print_word:33 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#0 print_char_cursor#2 ] main:2::print_word:37 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#0 print_char_cursor#2 ] main:2::print_word:41 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#0 print_char_cursor#2 ] main:2::print_word:49 [ print_line_cursor#1 print_word::w#10 print_byte::b#0 print_char_cursor#2 ] main:2::print_word:53 [ print_line_cursor#1 print_word::w#10 print_byte::b#0 print_char_cursor#2 ] main:2::print_word:57 [ print_line_cursor#1 print_word::w#10 print_byte::b#0 print_char_cursor#2 ] ) always clobbers reg byte a
|
||||
@ -5396,7 +5408,7 @@ Potential registers zp ZP_WORD:3 [ print_line_cursor#11 print_line_cursor#21 pri
|
||||
Potential registers zp ZP_WORD:5 [ print_word::w#10 print_word::w#3 print_word::w#4 print_word::w#5 ] : zp ZP_WORD:5 ,
|
||||
Potential registers zp ZP_BYTE:7 [ print_byte::b#3 print_byte::b#2 print_byte::b#0 print_byte::b#1 ] : zp ZP_BYTE:7 , reg byte x ,
|
||||
Potential registers zp ZP_BYTE:8 [ print_char::ch#2 print_char::ch#0 print_char::ch#1 ] : zp ZP_BYTE:8 , reg byte a , reg byte x , reg byte y ,
|
||||
Potential registers zp ZP_WORD:9 [ print_char_cursor#86 print_char_cursor#50 print_char_cursor#81 print_char_cursor#90 print_char_cursor#2 print_char_cursor#11 print_char_cursor#99 print_char_cursor#1 ] : zp ZP_WORD:9 ,
|
||||
Potential registers zp ZP_WORD:9 [ print_char_cursor#86 print_char_cursor#50 print_char_cursor#81 print_char_cursor#91 print_char_cursor#2 print_char_cursor#11 print_char_cursor#100 print_char_cursor#1 ] : zp ZP_WORD:9 ,
|
||||
Potential registers zp ZP_WORD:11 [ print_str::str#10 print_str::str#12 print_str::str#0 ] : zp ZP_WORD:11 ,
|
||||
Potential registers zp ZP_WORD:13 [ print_cls::sc#2 print_cls::sc#1 ] : zp ZP_WORD:13 ,
|
||||
Potential registers zp ZP_WORD:15 [ lin16u_gen::max#3 ] : zp ZP_WORD:15 ,
|
||||
@ -5424,7 +5436,7 @@ Potential registers zp ZP_BYTE:57 [ divr16u::$2 ] : zp ZP_BYTE:57 , reg byte a ,
|
||||
Potential registers zp ZP_WORD:58 [ rem16u#1 ] : zp ZP_WORD:58 ,
|
||||
|
||||
REGISTER UPLIFT SCOPES
|
||||
Uplift Scope [] 227.89: zp ZP_WORD:3 [ print_line_cursor#11 print_line_cursor#21 print_line_cursor#1 ] 198.69: zp ZP_WORD:9 [ print_char_cursor#86 print_char_cursor#50 print_char_cursor#81 print_char_cursor#90 print_char_cursor#2 print_char_cursor#11 print_char_cursor#99 print_char_cursor#1 ] 0.67: zp ZP_WORD:58 [ rem16u#1 ]
|
||||
Uplift Scope [] 227.89: zp ZP_WORD:3 [ print_line_cursor#11 print_line_cursor#21 print_line_cursor#1 ] 198.69: zp ZP_WORD:9 [ print_char_cursor#86 print_char_cursor#50 print_char_cursor#81 print_char_cursor#91 print_char_cursor#2 print_char_cursor#11 print_char_cursor#100 print_char_cursor#1 ] 0.67: zp ZP_WORD:58 [ rem16u#1 ]
|
||||
Uplift Scope [print_str] 305.5: zp ZP_WORD:11 [ print_str::str#10 print_str::str#12 print_str::str#0 ]
|
||||
Uplift Scope [divr16u] 106.92: zp ZP_WORD:31 [ divr16u::rem#5 divr16u::rem#10 divr16u::rem#4 divr16u::rem#11 divr16u::rem#6 divr16u::rem#0 divr16u::rem#1 divr16u::rem#2 ] 35.54: zp ZP_WORD:35 [ divr16u::quotient#3 divr16u::return#0 divr16u::quotient#1 divr16u::quotient#2 ] 22: zp ZP_BYTE:56 [ divr16u::$1 ] 22: zp ZP_BYTE:57 [ divr16u::$2 ] 18.19: zp ZP_BYTE:37 [ divr16u::i#2 divr16u::i#1 ] 15.75: zp ZP_WORD:33 [ divr16u::dividend#3 divr16u::dividend#5 divr16u::dividend#1 divr16u::dividend#0 ] 5.62: zp ZP_WORD:29 [ divr16u::divisor#6 divr16u::divisor#0 divr16u::divisor#1 ] 4: zp ZP_WORD:42 [ divr16u::return#2 ] 4: zp ZP_WORD:46 [ divr16u::return#3 ]
|
||||
Uplift Scope [lin16u_gen] 22: zp ZP_WORD:54 [ lin16u_gen::$5 ] 21.17: zp ZP_DWORD:21 [ lin16u_gen::val#2 lin16u_gen::val#1 lin16u_gen::val#0 ] 20.9: zp ZP_WORD:27 [ lin16u_gen::i#2 lin16u_gen::i#1 ] 16.23: zp ZP_WORD:25 [ lin16u_gen::lintab#4 lin16u_gen::lintab#3 lin16u_gen::lintab#5 ] 4: zp ZP_WORD:48 [ lin16u_gen::stepf#0 ] 2: zp ZP_WORD:15 [ lin16u_gen::max#3 ] 2: zp ZP_WORD:40 [ lin16u_gen::ampl#0 ] 1.44: zp ZP_DWORD:50 [ lin16u_gen::step#0 ] 0.71: zp ZP_WORD:19 [ lin16u_gen::length#3 ] 0.67: zp ZP_WORD:44 [ lin16u_gen::stepi#0 ] 0.31: zp ZP_WORD:17 [ lin16u_gen::min#3 ]
|
||||
@ -5435,7 +5447,7 @@ Uplift Scope [main] 20.17: zp ZP_BYTE:2 [ main::i#10 main::i#1 ]
|
||||
Uplift Scope [print_char] 14: zp ZP_BYTE:8 [ print_char::ch#2 print_char::ch#0 print_char::ch#1 ]
|
||||
Uplift Scope [print_ln]
|
||||
|
||||
Uplifting [] best 16090 combination zp ZP_WORD:3 [ print_line_cursor#11 print_line_cursor#21 print_line_cursor#1 ] zp ZP_WORD:9 [ print_char_cursor#86 print_char_cursor#50 print_char_cursor#81 print_char_cursor#90 print_char_cursor#2 print_char_cursor#11 print_char_cursor#99 print_char_cursor#1 ] zp ZP_WORD:58 [ rem16u#1 ]
|
||||
Uplifting [] best 16090 combination zp ZP_WORD:3 [ print_line_cursor#11 print_line_cursor#21 print_line_cursor#1 ] zp ZP_WORD:9 [ print_char_cursor#86 print_char_cursor#50 print_char_cursor#81 print_char_cursor#91 print_char_cursor#2 print_char_cursor#11 print_char_cursor#100 print_char_cursor#1 ] zp ZP_WORD:58 [ rem16u#1 ]
|
||||
Uplifting [print_str] best 16090 combination zp ZP_WORD:11 [ print_str::str#10 print_str::str#12 print_str::str#0 ]
|
||||
Uplifting [divr16u] best 15900 combination zp ZP_WORD:31 [ divr16u::rem#5 divr16u::rem#10 divr16u::rem#4 divr16u::rem#11 divr16u::rem#6 divr16u::rem#0 divr16u::rem#1 divr16u::rem#2 ] zp ZP_WORD:35 [ divr16u::quotient#3 divr16u::return#0 divr16u::quotient#1 divr16u::quotient#2 ] reg byte a [ divr16u::$1 ] reg byte a [ divr16u::$2 ] reg byte x [ divr16u::i#2 divr16u::i#1 ] zp ZP_WORD:33 [ divr16u::dividend#3 divr16u::dividend#5 divr16u::dividend#1 divr16u::dividend#0 ] zp ZP_WORD:29 [ divr16u::divisor#6 divr16u::divisor#0 divr16u::divisor#1 ] zp ZP_WORD:42 [ divr16u::return#2 ] zp ZP_WORD:46 [ divr16u::return#3 ]
|
||||
Uplifting [lin16u_gen] best 15900 combination zp ZP_WORD:54 [ lin16u_gen::$5 ] zp ZP_DWORD:21 [ lin16u_gen::val#2 lin16u_gen::val#1 lin16u_gen::val#0 ] zp ZP_WORD:27 [ lin16u_gen::i#2 lin16u_gen::i#1 ] zp ZP_WORD:25 [ lin16u_gen::lintab#4 lin16u_gen::lintab#3 lin16u_gen::lintab#5 ] zp ZP_WORD:48 [ lin16u_gen::stepf#0 ] zp ZP_WORD:15 [ lin16u_gen::max#3 ] zp ZP_WORD:40 [ lin16u_gen::ampl#0 ] zp ZP_DWORD:50 [ lin16u_gen::step#0 ] zp ZP_WORD:19 [ lin16u_gen::length#3 ] zp ZP_WORD:44 [ lin16u_gen::stepi#0 ] zp ZP_WORD:17 [ lin16u_gen::min#3 ]
|
||||
@ -5459,8 +5471,8 @@ Coalescing zero page register [ zp ZP_WORD:3 [ print_line_cursor#11 print_line_c
|
||||
Coalescing zero page register [ zp ZP_WORD:5 [ print_word::w#10 print_word::w#3 print_word::w#4 print_word::w#5 ] ] with [ zp ZP_WORD:11 [ print_str::str#10 print_str::str#12 print_str::str#0 ] ]
|
||||
Coalescing zero page register [ zp ZP_WORD:5 [ print_word::w#10 print_word::w#3 print_word::w#4 print_word::w#5 print_str::str#10 print_str::str#12 print_str::str#0 ] ] with [ zp ZP_WORD:17 [ lin16u_gen::min#3 ] ]
|
||||
Coalescing zero page register [ zp ZP_WORD:5 [ print_word::w#10 print_word::w#3 print_word::w#4 print_word::w#5 print_str::str#10 print_str::str#12 print_str::str#0 lin16u_gen::min#3 ] ] with [ zp ZP_WORD:54 [ lin16u_gen::$5 ] ]
|
||||
Coalescing zero page register [ zp ZP_WORD:9 [ print_char_cursor#86 print_char_cursor#50 print_char_cursor#81 print_char_cursor#90 print_char_cursor#2 print_char_cursor#11 print_char_cursor#99 print_char_cursor#1 ] ] with [ zp ZP_WORD:19 [ lin16u_gen::length#3 ] ]
|
||||
Allocated (was zp ZP_WORD:9) zp ZP_WORD:7 [ print_char_cursor#86 print_char_cursor#50 print_char_cursor#81 print_char_cursor#90 print_char_cursor#2 print_char_cursor#11 print_char_cursor#99 print_char_cursor#1 lin16u_gen::length#3 ]
|
||||
Coalescing zero page register [ zp ZP_WORD:9 [ print_char_cursor#86 print_char_cursor#50 print_char_cursor#81 print_char_cursor#91 print_char_cursor#2 print_char_cursor#11 print_char_cursor#100 print_char_cursor#1 ] ] with [ zp ZP_WORD:19 [ lin16u_gen::length#3 ] ]
|
||||
Allocated (was zp ZP_WORD:9) zp ZP_WORD:7 [ print_char_cursor#86 print_char_cursor#50 print_char_cursor#81 print_char_cursor#91 print_char_cursor#2 print_char_cursor#11 print_char_cursor#100 print_char_cursor#1 lin16u_gen::length#3 ]
|
||||
Allocated (was zp ZP_DWORD:21) zp ZP_DWORD:9 [ lin16u_gen::val#2 lin16u_gen::val#1 lin16u_gen::val#0 ]
|
||||
Allocated (was zp ZP_WORD:25) zp ZP_WORD:13 [ lin16u_gen::lintab#4 lin16u_gen::lintab#3 lin16u_gen::lintab#5 ]
|
||||
Allocated (was zp ZP_WORD:29) zp ZP_WORD:15 [ divr16u::divisor#6 divr16u::divisor#0 divr16u::divisor#1 ]
|
||||
@ -5707,7 +5719,7 @@ main: {
|
||||
b1:
|
||||
//SEG79 [27] (byte) print_byte::b#2 ← (byte) main::i#10 [ main::i#10 print_byte::b#2 print_line_cursor#1 ] ( main:2 [ main::i#10 print_byte::b#2 print_line_cursor#1 ] ) -- vbuxx=vbuz1
|
||||
ldx i
|
||||
//SEG80 [28] (byte*~) print_char_cursor#90 ← (byte*) print_line_cursor#1 [ main::i#10 print_byte::b#2 print_char_cursor#90 print_line_cursor#1 ] ( main:2 [ main::i#10 print_byte::b#2 print_char_cursor#90 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
//SEG80 [28] (byte*~) print_char_cursor#91 ← (byte*) print_line_cursor#1 [ main::i#10 print_byte::b#2 print_char_cursor#91 print_line_cursor#1 ] ( main:2 [ main::i#10 print_byte::b#2 print_char_cursor#91 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
lda print_line_cursor
|
||||
sta print_char_cursor
|
||||
lda print_line_cursor+1
|
||||
@ -5715,7 +5727,7 @@ main: {
|
||||
//SEG81 [29] call print_byte param-assignment [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] ( main:2 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] )
|
||||
//SEG82 [72] phi from main::@1 to print_byte [phi:main::@1->print_byte]
|
||||
print_byte_from_b1:
|
||||
//SEG83 [72] phi (byte*) print_char_cursor#81 = (byte*~) print_char_cursor#90 [phi:main::@1->print_byte#0] -- register_copy
|
||||
//SEG83 [72] phi (byte*) print_char_cursor#81 = (byte*~) print_char_cursor#91 [phi:main::@1->print_byte#0] -- register_copy
|
||||
//SEG84 [72] phi (byte) print_byte::b#3 = (byte) print_byte::b#2 [phi:main::@1->print_byte#1] -- register_copy
|
||||
jsr print_byte
|
||||
//SEG85 [30] phi from main::@1 to main::@14 [phi:main::@1->main::@14]
|
||||
@ -5830,7 +5842,7 @@ main: {
|
||||
jmp b2
|
||||
//SEG126 main::@2
|
||||
b2:
|
||||
//SEG127 [46] (byte*~) print_char_cursor#99 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#99 ] ( main:2 [ print_line_cursor#1 print_char_cursor#99 ] ) -- pbuz1=pbuz2
|
||||
//SEG127 [46] (byte*~) print_char_cursor#100 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#100 ] ( main:2 [ print_line_cursor#1 print_char_cursor#100 ] ) -- pbuz1=pbuz2
|
||||
lda print_line_cursor
|
||||
sta print_char_cursor
|
||||
lda print_line_cursor+1
|
||||
@ -5838,7 +5850,7 @@ main: {
|
||||
//SEG128 [47] call print_str param-assignment [ print_line_cursor#1 print_char_cursor#2 ] ( main:2 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
//SEG129 [84] phi from main::@2 to print_str [phi:main::@2->print_str]
|
||||
print_str_from_b2:
|
||||
//SEG130 [84] phi (byte*) print_char_cursor#86 = (byte*~) print_char_cursor#99 [phi:main::@2->print_str#0] -- register_copy
|
||||
//SEG130 [84] phi (byte*) print_char_cursor#86 = (byte*~) print_char_cursor#100 [phi:main::@2->print_str#0] -- register_copy
|
||||
//SEG131 [84] phi (byte*) print_str::str#12 = (const string) main::str6 [phi:main::@2->print_str#1] -- pbuz1=pbuc1
|
||||
lda #<str6
|
||||
sta print_str.str
|
||||
@ -6015,9 +6027,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
//SEG190 [74] (byte) print_char::ch#0 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:15::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:19::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:23::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG190 [74] (byte) print_char::ch#0 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:15::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:19::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:23::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG191 [75] call print_char param-assignment [ print_char_cursor#11 print_byte::b#3 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 print_byte::b#3 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 print_byte::b#3 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 print_byte::b#3 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] )
|
||||
//SEG192 [80] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
print_char_from_print_byte:
|
||||
@ -6030,9 +6042,9 @@ print_byte: {
|
||||
//SEG196 [76] (byte~) print_byte::$2 ← (byte) print_byte::b#3 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#11 print_byte::$2 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 print_byte::$2 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 print_byte::$2 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 print_byte::$2 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] ) -- vbuaa=vbuxx_band_vbuc1
|
||||
txa
|
||||
and #$f
|
||||
//SEG197 [77] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#11 print_char::ch#1 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG197 [77] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#11 print_char::ch#1 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG198 [78] call print_char param-assignment [ print_char_cursor#11 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] )
|
||||
//SEG199 [80] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
print_char_from_b1:
|
||||
@ -6044,7 +6056,6 @@ print_byte: {
|
||||
breturn:
|
||||
//SEG203 [79] return [ print_char_cursor#11 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG204 print_char
|
||||
print_char: {
|
||||
@ -6418,6 +6429,7 @@ divr16u: {
|
||||
//SEG309 [136] return [ divr16u::return#0 rem16u#1 ] ( main:2::lin16u_gen:5::divr16u:101 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 divr16u::return#0 rem16u#1 ] main:2::lin16u_gen:7::divr16u:101 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 divr16u::return#0 rem16u#1 ] main:2::lin16u_gen:9::divr16u:101 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 divr16u::return#0 rem16u#1 ] main:2::lin16u_gen:5::divr16u:106 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 lin16u_gen::stepi#0 divr16u::return#0 rem16u#1 ] main:2::lin16u_gen:7::divr16u:106 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 lin16u_gen::stepi#0 divr16u::return#0 rem16u#1 ] main:2::lin16u_gen:9::divr16u:106 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 lin16u_gen::stepi#0 divr16u::return#0 rem16u#1 ] )
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
ASSEMBLER OPTIMIZATIONS
|
||||
Removing instruction jmp b23
|
||||
@ -6748,8 +6760,6 @@ FINAL SYMBOL TABLE
|
||||
(byte) print_byte::b#1 reg byte x 4.0
|
||||
(byte) print_byte::b#2 reg byte x 11.0
|
||||
(byte) print_byte::b#3 reg byte x 4.75
|
||||
(byte[]) print_byte::hextab
|
||||
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -6758,19 +6768,21 @@ FINAL SYMBOL TABLE
|
||||
(byte) print_char::ch#2 reg byte a 6.0
|
||||
(byte*) print_char_cursor
|
||||
(byte*) print_char_cursor#1 print_char_cursor zp ZP_WORD:7 101.0
|
||||
(byte*~) print_char_cursor#100 print_char_cursor zp ZP_WORD:7 4.0
|
||||
(byte*) print_char_cursor#11 print_char_cursor zp ZP_WORD:7 4.228571428571427
|
||||
(byte*) print_char_cursor#2 print_char_cursor zp ZP_WORD:7 12.791666666666664
|
||||
(byte*) print_char_cursor#50 print_char_cursor zp ZP_WORD:7 4.0
|
||||
(byte*) print_char_cursor#81 print_char_cursor zp ZP_WORD:7 5.666666666666667
|
||||
(byte*) print_char_cursor#86 print_char_cursor zp ZP_WORD:7 45.0
|
||||
(byte*~) print_char_cursor#90 print_char_cursor zp ZP_WORD:7 22.0
|
||||
(byte*~) print_char_cursor#99 print_char_cursor zp ZP_WORD:7 4.0
|
||||
(byte*~) print_char_cursor#91 print_char_cursor zp ZP_WORD:7 22.0
|
||||
(void()) print_cls()
|
||||
(label) print_cls::@1
|
||||
(label) print_cls::@return
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 sc zp ZP_WORD:3 16.5
|
||||
(byte*) print_cls::sc#2 sc zp ZP_WORD:3 16.5
|
||||
(byte[]) print_hextab
|
||||
(const string) print_hextab#0 print_hextab = (string) "0123456789abcdef"
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#1 print_line_cursor zp ZP_WORD:3 8.891891891891891
|
||||
(byte*) print_line_cursor#11 print_line_cursor zp ZP_WORD:3 204.0
|
||||
@ -6803,7 +6815,7 @@ zp ZP_WORD:3 [ print_line_cursor#11 print_line_cursor#21 print_line_cursor#1 pri
|
||||
zp ZP_WORD:5 [ print_word::w#10 print_word::w#3 print_word::w#4 print_word::w#5 print_str::str#10 print_str::str#12 print_str::str#0 lin16u_gen::min#3 lin16u_gen::$5 ]
|
||||
reg byte x [ print_byte::b#3 print_byte::b#2 print_byte::b#0 print_byte::b#1 ]
|
||||
reg byte a [ print_char::ch#2 print_char::ch#0 print_char::ch#1 ]
|
||||
zp ZP_WORD:7 [ print_char_cursor#86 print_char_cursor#50 print_char_cursor#81 print_char_cursor#90 print_char_cursor#2 print_char_cursor#11 print_char_cursor#99 print_char_cursor#1 lin16u_gen::length#3 ]
|
||||
zp ZP_WORD:7 [ print_char_cursor#86 print_char_cursor#50 print_char_cursor#81 print_char_cursor#91 print_char_cursor#2 print_char_cursor#11 print_char_cursor#100 print_char_cursor#1 lin16u_gen::length#3 ]
|
||||
zp ZP_DWORD:9 [ lin16u_gen::val#2 lin16u_gen::val#1 lin16u_gen::val#0 ]
|
||||
zp ZP_WORD:13 [ lin16u_gen::lintab#4 lin16u_gen::lintab#3 lin16u_gen::lintab#5 ]
|
||||
zp ZP_WORD:15 [ divr16u::divisor#6 divr16u::divisor#0 divr16u::divisor#1 ]
|
||||
@ -7003,14 +7015,14 @@ main: {
|
||||
b1:
|
||||
//SEG79 [27] (byte) print_byte::b#2 ← (byte) main::i#10 [ main::i#10 print_byte::b#2 print_line_cursor#1 ] ( main:2 [ main::i#10 print_byte::b#2 print_line_cursor#1 ] ) -- vbuxx=vbuz1
|
||||
ldx i
|
||||
//SEG80 [28] (byte*~) print_char_cursor#90 ← (byte*) print_line_cursor#1 [ main::i#10 print_byte::b#2 print_char_cursor#90 print_line_cursor#1 ] ( main:2 [ main::i#10 print_byte::b#2 print_char_cursor#90 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
//SEG80 [28] (byte*~) print_char_cursor#91 ← (byte*) print_line_cursor#1 [ main::i#10 print_byte::b#2 print_char_cursor#91 print_line_cursor#1 ] ( main:2 [ main::i#10 print_byte::b#2 print_char_cursor#91 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
lda print_line_cursor
|
||||
sta print_char_cursor
|
||||
lda print_line_cursor+1
|
||||
sta print_char_cursor+1
|
||||
//SEG81 [29] call print_byte param-assignment [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] ( main:2 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] )
|
||||
//SEG82 [72] phi from main::@1 to print_byte [phi:main::@1->print_byte]
|
||||
//SEG83 [72] phi (byte*) print_char_cursor#81 = (byte*~) print_char_cursor#90 [phi:main::@1->print_byte#0] -- register_copy
|
||||
//SEG83 [72] phi (byte*) print_char_cursor#81 = (byte*~) print_char_cursor#91 [phi:main::@1->print_byte#0] -- register_copy
|
||||
//SEG84 [72] phi (byte) print_byte::b#3 = (byte) print_byte::b#2 [phi:main::@1->print_byte#1] -- register_copy
|
||||
jsr print_byte
|
||||
//SEG85 [30] phi from main::@1 to main::@14 [phi:main::@1->main::@14]
|
||||
@ -7095,14 +7107,14 @@ main: {
|
||||
cmp #$14*2
|
||||
bcc b1
|
||||
//SEG126 main::@2
|
||||
//SEG127 [46] (byte*~) print_char_cursor#99 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#99 ] ( main:2 [ print_line_cursor#1 print_char_cursor#99 ] ) -- pbuz1=pbuz2
|
||||
//SEG127 [46] (byte*~) print_char_cursor#100 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#100 ] ( main:2 [ print_line_cursor#1 print_char_cursor#100 ] ) -- pbuz1=pbuz2
|
||||
lda print_line_cursor
|
||||
sta print_char_cursor
|
||||
lda print_line_cursor+1
|
||||
sta print_char_cursor+1
|
||||
//SEG128 [47] call print_str param-assignment [ print_line_cursor#1 print_char_cursor#2 ] ( main:2 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
//SEG129 [84] phi from main::@2 to print_str [phi:main::@2->print_str]
|
||||
//SEG130 [84] phi (byte*) print_char_cursor#86 = (byte*~) print_char_cursor#99 [phi:main::@2->print_str#0] -- register_copy
|
||||
//SEG130 [84] phi (byte*) print_char_cursor#86 = (byte*~) print_char_cursor#100 [phi:main::@2->print_str#0] -- register_copy
|
||||
//SEG131 [84] phi (byte*) print_str::str#12 = (const string) main::str6 [phi:main::@2->print_str#1] -- pbuz1=pbuc1
|
||||
lda #<str6
|
||||
sta print_str.str
|
||||
@ -7242,9 +7254,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
//SEG190 [74] (byte) print_char::ch#0 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:15::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:19::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:23::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG190 [74] (byte) print_char::ch#0 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:15::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:19::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:23::print_byte:70 [ print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_byte::b#3 print_char_cursor#81 print_char::ch#0 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG191 [75] call print_char param-assignment [ print_char_cursor#11 print_byte::b#3 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 print_byte::b#3 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 print_byte::b#3 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 print_byte::b#3 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::b#3 ] )
|
||||
//SEG192 [80] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
//SEG193 [80] phi (byte*) print_char_cursor#50 = (byte*) print_char_cursor#81 [phi:print_byte->print_char#0] -- register_copy
|
||||
@ -7254,9 +7266,9 @@ print_byte: {
|
||||
//SEG196 [76] (byte~) print_byte::$2 ← (byte) print_byte::b#3 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#11 print_byte::$2 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_byte::$2 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 print_byte::$2 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 print_byte::$2 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 print_byte::$2 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_byte::$2 ] ) -- vbuaa=vbuxx_band_vbuc1
|
||||
txa
|
||||
and #$f
|
||||
//SEG197 [77] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#11 print_char::ch#1 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG197 [77] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#11 print_char::ch#1 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 print_char::ch#1 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG198 [78] call print_char param-assignment [ print_char_cursor#11 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] )
|
||||
//SEG199 [80] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
//SEG200 [80] phi (byte*) print_char_cursor#50 = (byte*) print_char_cursor#11 [phi:print_byte::@1->print_char#0] -- register_copy
|
||||
@ -7265,7 +7277,6 @@ print_byte: {
|
||||
//SEG202 print_byte::@return
|
||||
//SEG203 [79] return [ print_char_cursor#11 ] ( main:2::print_byte:29 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:15::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:19::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:23::print_byte:68 [ print_word::w#10 print_char_cursor#11 ] main:2::print_word:33::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:37::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:41::print_byte:68 [ main::i#10 print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:49::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:53::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:57::print_byte:68 [ print_line_cursor#1 print_word::w#10 print_char_cursor#11 ] main:2::print_word:15::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:19::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:23::print_byte:70 [ print_char_cursor#11 ] main:2::print_word:33::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:37::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:41::print_byte:70 [ main::i#10 print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:49::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:53::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] main:2::print_word:57::print_byte:70 [ print_line_cursor#1 print_char_cursor#11 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG204 print_char
|
||||
print_char: {
|
||||
@ -7590,4 +7601,5 @@ divr16u: {
|
||||
//SEG309 [136] return [ divr16u::return#0 rem16u#1 ] ( main:2::lin16u_gen:5::divr16u:101 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 divr16u::return#0 rem16u#1 ] main:2::lin16u_gen:7::divr16u:101 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 divr16u::return#0 rem16u#1 ] main:2::lin16u_gen:9::divr16u:101 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 divr16u::return#0 rem16u#1 ] main:2::lin16u_gen:5::divr16u:106 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 lin16u_gen::stepi#0 divr16u::return#0 rem16u#1 ] main:2::lin16u_gen:7::divr16u:106 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 lin16u_gen::stepi#0 divr16u::return#0 rem16u#1 ] main:2::lin16u_gen:9::divr16u:106 [ lin16u_gen::min#3 lin16u_gen::length#3 lin16u_gen::lintab#5 lin16u_gen::stepi#0 divr16u::return#0 rem16u#1 ] )
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
|
@ -127,8 +127,6 @@
|
||||
(byte) print_byte::b#1 reg byte x 4.0
|
||||
(byte) print_byte::b#2 reg byte x 11.0
|
||||
(byte) print_byte::b#3 reg byte x 4.75
|
||||
(byte[]) print_byte::hextab
|
||||
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -137,19 +135,21 @@
|
||||
(byte) print_char::ch#2 reg byte a 6.0
|
||||
(byte*) print_char_cursor
|
||||
(byte*) print_char_cursor#1 print_char_cursor zp ZP_WORD:7 101.0
|
||||
(byte*~) print_char_cursor#100 print_char_cursor zp ZP_WORD:7 4.0
|
||||
(byte*) print_char_cursor#11 print_char_cursor zp ZP_WORD:7 4.228571428571427
|
||||
(byte*) print_char_cursor#2 print_char_cursor zp ZP_WORD:7 12.791666666666664
|
||||
(byte*) print_char_cursor#50 print_char_cursor zp ZP_WORD:7 4.0
|
||||
(byte*) print_char_cursor#81 print_char_cursor zp ZP_WORD:7 5.666666666666667
|
||||
(byte*) print_char_cursor#86 print_char_cursor zp ZP_WORD:7 45.0
|
||||
(byte*~) print_char_cursor#90 print_char_cursor zp ZP_WORD:7 22.0
|
||||
(byte*~) print_char_cursor#99 print_char_cursor zp ZP_WORD:7 4.0
|
||||
(byte*~) print_char_cursor#91 print_char_cursor zp ZP_WORD:7 22.0
|
||||
(void()) print_cls()
|
||||
(label) print_cls::@1
|
||||
(label) print_cls::@return
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 sc zp ZP_WORD:3 16.5
|
||||
(byte*) print_cls::sc#2 sc zp ZP_WORD:3 16.5
|
||||
(byte[]) print_hextab
|
||||
(const string) print_hextab#0 print_hextab = (string) "0123456789abcdef"
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#1 print_line_cursor zp ZP_WORD:3 8.891891891891891
|
||||
(byte*) print_line_cursor#11 print_line_cursor zp ZP_WORD:3 204.0
|
||||
@ -182,7 +182,7 @@ zp ZP_WORD:3 [ print_line_cursor#11 print_line_cursor#21 print_line_cursor#1 pri
|
||||
zp ZP_WORD:5 [ print_word::w#10 print_word::w#3 print_word::w#4 print_word::w#5 print_str::str#10 print_str::str#12 print_str::str#0 lin16u_gen::min#3 lin16u_gen::$5 ]
|
||||
reg byte x [ print_byte::b#3 print_byte::b#2 print_byte::b#0 print_byte::b#1 ]
|
||||
reg byte a [ print_char::ch#2 print_char::ch#0 print_char::ch#1 ]
|
||||
zp ZP_WORD:7 [ print_char_cursor#86 print_char_cursor#50 print_char_cursor#81 print_char_cursor#90 print_char_cursor#2 print_char_cursor#11 print_char_cursor#99 print_char_cursor#1 lin16u_gen::length#3 ]
|
||||
zp ZP_WORD:7 [ print_char_cursor#86 print_char_cursor#50 print_char_cursor#81 print_char_cursor#91 print_char_cursor#2 print_char_cursor#11 print_char_cursor#100 print_char_cursor#1 lin16u_gen::length#3 ]
|
||||
zp ZP_DWORD:9 [ lin16u_gen::val#2 lin16u_gen::val#1 lin16u_gen::val#0 ]
|
||||
zp ZP_WORD:13 [ lin16u_gen::lintab#4 lin16u_gen::lintab#3 lin16u_gen::lintab#5 ]
|
||||
zp ZP_WORD:15 [ divr16u::divisor#6 divr16u::divisor#0 divr16u::divisor#1 ]
|
||||
|
@ -102,12 +102,13 @@ void print_sdword(signed dword dw) {
|
||||
print_dword((dword)dw);
|
||||
}
|
||||
|
||||
const byte[] print_hextab = "0123456789abcdef";
|
||||
|
||||
// Print a byte as HEX
|
||||
void print_byte(byte b) {
|
||||
// Table of hexadecimal digits
|
||||
const byte[] hextab = "0123456789abcdef";
|
||||
print_char(hextab[b>>4]);
|
||||
print_char(hextab[b&$f]);
|
||||
print_char(print_hextab[b>>4]);
|
||||
print_char(print_hextab[b&$f]);
|
||||
}
|
||||
|
||||
// Print a single char
|
||||
@ -266,12 +267,12 @@ print_sdword::@1:
|
||||
print_sdword::@return:
|
||||
return
|
||||
endproc // print_sdword()
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
proc (void()) print_byte((byte) print_byte::b)
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
print_byte::@return:
|
||||
return
|
||||
endproc // print_byte()
|
||||
@ -335,7 +336,6 @@ SYMBOLS
|
||||
(void~) print_byte::$3
|
||||
(label) print_byte::@return
|
||||
(byte) print_byte::b
|
||||
(byte[]) print_byte::hextab
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -353,6 +353,7 @@ SYMBOLS
|
||||
(void~) print_dword::$3
|
||||
(label) print_dword::@return
|
||||
(dword) print_dword::dw
|
||||
(byte[]) print_hextab
|
||||
(byte*) print_line_cursor
|
||||
(void()) print_ln()
|
||||
(byte*~) print_ln::$0
|
||||
@ -632,13 +633,13 @@ print_sdword::@return: scope:[print_sdword] from print_sdword::@1
|
||||
return
|
||||
to:@return
|
||||
@10: scope:[] from @9
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
to:@11
|
||||
print_byte: scope:[print_byte] from
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte
|
||||
return
|
||||
@ -714,6 +715,7 @@ Removing unused procedure print_dword
|
||||
Removing unused procedure print_word
|
||||
Removing unused procedure print_byte
|
||||
Removing unused procedure print_char
|
||||
Eliminating unused variable (byte[]) print_hextab and assignment [15] (byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
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
|
||||
|
@ -112,15 +112,14 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
txa
|
||||
and #$f
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
print_char: {
|
||||
ldy #0
|
||||
@ -204,3 +203,4 @@ divFACby10: {
|
||||
jsr $bafe
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
@ -21,7 +21,7 @@ main::@4: scope:[main] from main::@3
|
||||
to:main::@1
|
||||
main::@1: scope:[main] from main::@17 main::@4
|
||||
[10] (byte*) print_line_cursor#13 ← phi( main::@17/(byte*) print_line_cursor#1 main::@4/((byte*))(word/signed word/dword/signed dword) 1024 ) [ main::i#10 print_char_cursor#32 print_line_cursor#13 ] ( main:2 [ main::i#10 print_char_cursor#32 print_line_cursor#13 ] )
|
||||
[10] (byte*) print_char_cursor#32 ← phi( main::@17/(byte*~) print_char_cursor#48 main::@4/((byte*))(word/signed word/dword/signed dword) 1024 ) [ main::i#10 print_char_cursor#32 print_line_cursor#13 ] ( main:2 [ main::i#10 print_char_cursor#32 print_line_cursor#13 ] )
|
||||
[10] (byte*) print_char_cursor#32 ← phi( main::@17/(byte*~) print_char_cursor#49 main::@4/((byte*))(word/signed word/dword/signed dword) 1024 ) [ main::i#10 print_char_cursor#32 print_line_cursor#13 ] ( main:2 [ main::i#10 print_char_cursor#32 print_line_cursor#13 ] )
|
||||
[10] (byte) main::i#10 ← phi( main::@17/(byte) main::i#1 main::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ main::i#10 print_char_cursor#32 print_line_cursor#13 ] ( main:2 [ main::i#10 print_char_cursor#32 print_line_cursor#13 ] )
|
||||
[11] (word) setFAC::w#1 ← ((word)) (byte) main::i#10 [ main::i#10 print_char_cursor#32 print_line_cursor#13 setFAC::w#1 ] ( main:2 [ main::i#10 print_char_cursor#32 print_line_cursor#13 setFAC::w#1 ] )
|
||||
[12] call setFAC param-assignment [ main::i#10 print_char_cursor#32 print_line_cursor#13 ] ( main:2 [ main::i#10 print_char_cursor#32 print_line_cursor#13 ] )
|
||||
@ -75,7 +75,7 @@ main::@return: scope:[main] from main::@16
|
||||
[36] return [ ] ( main:2 [ ] )
|
||||
to:@return
|
||||
main::@17: scope:[main] from main::@16
|
||||
[37] (byte*~) print_char_cursor#48 ← (byte*) print_line_cursor#1 [ main::i#1 print_char_cursor#48 print_line_cursor#1 ] ( main:2 [ main::i#1 print_char_cursor#48 print_line_cursor#1 ] )
|
||||
[37] (byte*~) print_char_cursor#49 ← (byte*) print_line_cursor#1 [ main::i#1 print_char_cursor#49 print_line_cursor#1 ] ( main:2 [ main::i#1 print_char_cursor#49 print_line_cursor#1 ] )
|
||||
to:main::@1
|
||||
print_ln: scope:[print_ln] from main::@15
|
||||
[38] phi() [ print_line_cursor#13 print_char_cursor#10 ] ( main:2::print_ln:33 [ main::i#10 print_line_cursor#13 print_char_cursor#10 ] )
|
||||
@ -103,12 +103,12 @@ print_byte: scope:[print_byte] from print_word print_word::@1
|
||||
[48] (byte*) print_char_cursor#31 ← phi( print_word/(byte*) print_char_cursor#32 print_word::@1/(byte*) print_char_cursor#10 ) [ print_byte::b#2 print_char_cursor#31 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_byte::b#2 print_char_cursor#31 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_byte::b#2 print_char_cursor#31 ] )
|
||||
[48] (byte) print_byte::b#2 ← phi( print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) [ print_byte::b#2 print_char_cursor#31 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_byte::b#2 print_char_cursor#31 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_byte::b#2 print_char_cursor#31 ] )
|
||||
[49] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#2 print_char_cursor#31 print_byte::$0 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_byte::b#2 print_char_cursor#31 print_byte::$0 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_byte::b#2 print_char_cursor#31 print_byte::$0 ] )
|
||||
[50] (byte) print_char::ch#0 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] )
|
||||
[50] (byte) print_char::ch#0 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] )
|
||||
[51] call print_char param-assignment [ print_char_cursor#10 print_byte::b#2 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 print_byte::b#2 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 print_byte::b#2 ] )
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
[52] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#10 print_byte::$2 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 print_byte::$2 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 print_byte::$2 ] )
|
||||
[53] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#1 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 print_char::ch#1 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 print_char::ch#1 ] )
|
||||
[53] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#1 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 print_char::ch#1 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 print_char::ch#1 ] )
|
||||
[54] call print_char param-assignment [ print_char_cursor#10 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 ] )
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte::@1
|
||||
|
@ -111,12 +111,13 @@ void print_sdword(signed dword dw) {
|
||||
print_dword((dword)dw);
|
||||
}
|
||||
|
||||
const byte[] print_hextab = "0123456789abcdef";
|
||||
|
||||
// Print a byte as HEX
|
||||
void print_byte(byte b) {
|
||||
// Table of hexadecimal digits
|
||||
const byte[] hextab = "0123456789abcdef";
|
||||
print_char(hextab[b>>4]);
|
||||
print_char(hextab[b&$f]);
|
||||
print_char(print_hextab[b>>4]);
|
||||
print_char(print_hextab[b&$f]);
|
||||
}
|
||||
|
||||
// Print a single char
|
||||
@ -554,12 +555,12 @@ print_sdword::@1:
|
||||
print_sdword::@return:
|
||||
return
|
||||
endproc // print_sdword()
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
proc (void()) print_byte((byte) print_byte::b)
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
print_byte::@return:
|
||||
return
|
||||
endproc // print_byte()
|
||||
@ -842,7 +843,6 @@ SYMBOLS
|
||||
(void~) print_byte::$3
|
||||
(label) print_byte::@return
|
||||
(byte) print_byte::b
|
||||
(byte[]) print_byte::hextab
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -860,6 +860,7 @@ SYMBOLS
|
||||
(void~) print_dword::$3
|
||||
(label) print_dword::@return
|
||||
(dword) print_dword::dw
|
||||
(byte[]) print_hextab
|
||||
(byte*) print_line_cursor
|
||||
(void()) print_ln()
|
||||
(byte*~) print_ln::$0
|
||||
@ -1183,13 +1184,13 @@ print_sdword::@return: scope:[print_sdword] from print_sdword::@1
|
||||
return
|
||||
to:@return
|
||||
@10: scope:[] from @9
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
to:@11
|
||||
print_byte: scope:[print_byte] from
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte
|
||||
return
|
||||
@ -1556,7 +1557,7 @@ Eliminating unused variable - keeping the call (void~) main::$10
|
||||
Eliminating unused variable - keeping the call (void~) main::$11
|
||||
Eliminating unused variable - keeping the call (void~) main::$13
|
||||
Eliminating unused variable - keeping the call (void~) main::$14
|
||||
Creating constant string variable for inline (const string) print_byte::$4 "0123456789abcdef"
|
||||
Creating constant string variable for inline (const string) $0 "0123456789abcdef"
|
||||
Removing empty block @1
|
||||
Removing empty block @2
|
||||
Removing empty block @3
|
||||
@ -1566,7 +1567,6 @@ Removing empty block @6
|
||||
Removing empty block @7
|
||||
Removing empty block @8
|
||||
Removing empty block @9
|
||||
Removing empty block @10
|
||||
Removing empty block @11
|
||||
Removing empty block @12
|
||||
Removing empty block @13
|
||||
@ -1630,7 +1630,7 @@ CONTROL FLOW GRAPH SSA WITH ASSIGNMENT CALL & RETURN
|
||||
(byte*) print_screen#0 ← ((byte*)) (word/signed word/dword/signed dword) 1024
|
||||
(byte*) print_line_cursor#0 ← (byte*) print_screen#0
|
||||
(byte*) print_char_cursor#0 ← (byte*) print_line_cursor#0
|
||||
to:@14
|
||||
to:@10
|
||||
print_ln: scope:[print_ln] from main::@15
|
||||
(byte*) print_char_cursor#29 ← phi( main::@15/(byte*) print_char_cursor#11 )
|
||||
(byte*) print_line_cursor#12 ← phi( main::@15/(byte*) print_line_cursor#13 )
|
||||
@ -1678,12 +1678,16 @@ print_word::@return: scope:[print_word] from print_word::@2
|
||||
(byte*) print_char_cursor#5 ← (byte*) print_char_cursor#19
|
||||
return
|
||||
to:@return
|
||||
@10: scope:[] from @begin
|
||||
(byte*) print_line_cursor#17 ← phi( @begin/(byte*) print_line_cursor#0 )
|
||||
(byte*) print_char_cursor#36 ← phi( @begin/(byte*) print_char_cursor#0 )
|
||||
(byte[]) print_hextab#0 ← (const string) $0
|
||||
to:@14
|
||||
print_byte: scope:[print_byte] from print_word print_word::@1
|
||||
(byte*) print_char_cursor#31 ← phi( print_word/(byte*) print_char_cursor#30 print_word::@1/(byte*) print_char_cursor#3 )
|
||||
(byte) print_byte::b#2 ← phi( print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 )
|
||||
(byte[]) print_byte::hextab#0 ← (const string) print_byte::$4
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(byte) print_char::ch#0 ← *((byte[]) print_byte::hextab#0 + (byte~) print_byte::$0)
|
||||
(byte) print_char::ch#0 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$0)
|
||||
call print_char param-assignment
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
@ -1691,7 +1695,7 @@ print_byte::@1: scope:[print_byte] from print_byte
|
||||
(byte*) print_char_cursor#20 ← phi( print_byte/(byte*) print_char_cursor#10 )
|
||||
(byte*) print_char_cursor#6 ← (byte*) print_char_cursor#20
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b#3 & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(byte) print_char::ch#1 ← *((byte[]) print_byte::hextab#0 + (byte~) print_byte::$2)
|
||||
(byte) print_char::ch#1 ← *((byte[]) print_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
|
||||
@ -1714,9 +1718,9 @@ print_char::@return: scope:[print_char] from print_char
|
||||
(byte*) print_char_cursor#10 ← (byte*) print_char_cursor#24
|
||||
return
|
||||
to:@return
|
||||
@14: scope:[] from @begin
|
||||
(byte*) print_line_cursor#16 ← phi( @begin/(byte*) print_line_cursor#0 )
|
||||
(byte*) print_char_cursor#35 ← phi( @begin/(byte*) print_char_cursor#0 )
|
||||
@14: scope:[] from @10
|
||||
(byte*) print_line_cursor#16 ← phi( @10/(byte*) print_line_cursor#17 )
|
||||
(byte*) print_char_cursor#35 ← phi( @10/(byte*) print_char_cursor#36 )
|
||||
(byte*) memLo#0 ← ((byte*)) (byte/word/signed word/dword/signed dword) 254
|
||||
(byte*) memHi#0 ← ((byte*)) (byte/word/signed word/dword/signed dword) 255
|
||||
to:@42
|
||||
@ -1809,8 +1813,8 @@ divFACby10::@return: scope:[divFACby10] from divFACby10
|
||||
return
|
||||
to:@return
|
||||
main: scope:[main] from @42
|
||||
(byte*) print_line_cursor#29 ← phi( @42/(byte*) print_line_cursor#14 )
|
||||
(byte*) print_char_cursor#47 ← phi( @42/(byte*) print_char_cursor#33 )
|
||||
(byte*) print_line_cursor#30 ← phi( @42/(byte*) print_line_cursor#14 )
|
||||
(byte*) print_char_cursor#48 ← phi( @42/(byte*) print_char_cursor#33 )
|
||||
(byte[]) main::f_i#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 }
|
||||
(byte[]) main::f_127#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 }
|
||||
(byte*) main::f_2pi#0 ← ((byte*)) (word/dword/signed dword) 58085
|
||||
@ -1818,24 +1822,24 @@ main: scope:[main] from @42
|
||||
call setFAC param-assignment
|
||||
to:main::@3
|
||||
main::@3: scope:[main] from main
|
||||
(byte*) print_line_cursor#28 ← phi( main/(byte*) print_line_cursor#29 )
|
||||
(byte*) print_char_cursor#46 ← phi( main/(byte*) print_char_cursor#47 )
|
||||
(byte*) print_line_cursor#29 ← phi( main/(byte*) print_line_cursor#30 )
|
||||
(byte*) print_char_cursor#47 ← phi( main/(byte*) print_char_cursor#48 )
|
||||
call divFACby10 param-assignment
|
||||
to:main::@4
|
||||
main::@4: scope:[main] from main::@3
|
||||
(byte*) print_line_cursor#27 ← phi( main::@3/(byte*) print_line_cursor#28 )
|
||||
(byte*) print_char_cursor#45 ← phi( main::@3/(byte*) print_char_cursor#46 )
|
||||
(byte*) print_line_cursor#28 ← phi( main::@3/(byte*) print_line_cursor#29 )
|
||||
(byte*) print_char_cursor#46 ← phi( main::@3/(byte*) print_char_cursor#47 )
|
||||
(byte*) setMEMtoFAC::mem#0 ← (byte[]) main::f_127#0
|
||||
call setMEMtoFAC param-assignment
|
||||
to:main::@5
|
||||
main::@5: scope:[main] from main::@4
|
||||
(byte*) print_line_cursor#26 ← phi( main::@4/(byte*) print_line_cursor#27 )
|
||||
(byte*) print_char_cursor#44 ← phi( main::@4/(byte*) print_char_cursor#45 )
|
||||
(byte*) print_line_cursor#27 ← phi( main::@4/(byte*) print_line_cursor#28 )
|
||||
(byte*) print_char_cursor#45 ← phi( main::@4/(byte*) print_char_cursor#46 )
|
||||
(byte) main::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
to:main::@1
|
||||
main::@1: scope:[main] from main::@16 main::@5
|
||||
(byte*) print_line_cursor#25 ← phi( main::@16/(byte*) print_line_cursor#3 main::@5/(byte*) print_line_cursor#26 )
|
||||
(byte*) print_char_cursor#43 ← phi( main::@16/(byte*) print_char_cursor#12 main::@5/(byte*) print_char_cursor#44 )
|
||||
(byte*) print_line_cursor#26 ← phi( main::@16/(byte*) print_line_cursor#3 main::@5/(byte*) print_line_cursor#27 )
|
||||
(byte*) print_char_cursor#44 ← phi( main::@16/(byte*) print_char_cursor#12 main::@5/(byte*) print_char_cursor#45 )
|
||||
(byte) main::i#2 ← phi( main::@16/(byte) main::i#1 main::@5/(byte) main::i#0 )
|
||||
(word~) main::$3 ← ((word)) (byte) main::i#2
|
||||
(word) setFAC::w#1 ← (word~) main::$3
|
||||
@ -1843,62 +1847,62 @@ main::@1: scope:[main] from main::@16 main::@5
|
||||
to:main::@6
|
||||
main::@6: scope:[main] from main::@1
|
||||
(byte) main::i#13 ← phi( main::@1/(byte) main::i#2 )
|
||||
(byte*) print_line_cursor#24 ← phi( main::@1/(byte*) print_line_cursor#25 )
|
||||
(byte*) print_char_cursor#42 ← phi( main::@1/(byte*) print_char_cursor#43 )
|
||||
(byte*) print_line_cursor#25 ← phi( main::@1/(byte*) print_line_cursor#26 )
|
||||
(byte*) print_char_cursor#43 ← phi( main::@1/(byte*) print_char_cursor#44 )
|
||||
(byte*) mulFACbyMEM::mem#0 ← (byte*) main::f_2pi#0
|
||||
call mulFACbyMEM param-assignment
|
||||
to:main::@7
|
||||
main::@7: scope:[main] from main::@6
|
||||
(byte) main::i#12 ← phi( main::@6/(byte) main::i#13 )
|
||||
(byte*) print_line_cursor#23 ← phi( main::@6/(byte*) print_line_cursor#24 )
|
||||
(byte*) print_char_cursor#41 ← phi( main::@6/(byte*) print_char_cursor#42 )
|
||||
(byte*) print_line_cursor#24 ← phi( main::@6/(byte*) print_line_cursor#25 )
|
||||
(byte*) print_char_cursor#42 ← phi( main::@6/(byte*) print_char_cursor#43 )
|
||||
(byte*) setMEMtoFAC::mem#1 ← (byte[]) main::f_i#0
|
||||
call setMEMtoFAC param-assignment
|
||||
to:main::@8
|
||||
main::@8: scope:[main] from main::@7
|
||||
(byte) main::i#11 ← phi( main::@7/(byte) main::i#12 )
|
||||
(byte*) print_line_cursor#22 ← phi( main::@7/(byte*) print_line_cursor#23 )
|
||||
(byte*) print_char_cursor#40 ← phi( main::@7/(byte*) print_char_cursor#41 )
|
||||
(byte*) print_line_cursor#23 ← phi( main::@7/(byte*) print_line_cursor#24 )
|
||||
(byte*) print_char_cursor#41 ← phi( main::@7/(byte*) print_char_cursor#42 )
|
||||
(word) setFAC::w#2 ← (byte/signed byte/word/signed word/dword/signed dword) 25
|
||||
call setFAC param-assignment
|
||||
to:main::@9
|
||||
main::@9: scope:[main] from main::@8
|
||||
(byte) main::i#10 ← phi( main::@8/(byte) main::i#11 )
|
||||
(byte*) print_line_cursor#21 ← phi( main::@8/(byte*) print_line_cursor#22 )
|
||||
(byte*) print_char_cursor#39 ← phi( main::@8/(byte*) print_char_cursor#40 )
|
||||
(byte*) print_line_cursor#22 ← phi( main::@8/(byte*) print_line_cursor#23 )
|
||||
(byte*) print_char_cursor#40 ← phi( main::@8/(byte*) print_char_cursor#41 )
|
||||
(byte*) divMEMbyFAC::mem#0 ← (byte[]) main::f_i#0
|
||||
call divMEMbyFAC param-assignment
|
||||
to:main::@10
|
||||
main::@10: scope:[main] from main::@9
|
||||
(byte) main::i#9 ← phi( main::@9/(byte) main::i#10 )
|
||||
(byte*) print_line_cursor#20 ← phi( main::@9/(byte*) print_line_cursor#21 )
|
||||
(byte*) print_char_cursor#38 ← phi( main::@9/(byte*) print_char_cursor#39 )
|
||||
(byte*) print_line_cursor#21 ← phi( main::@9/(byte*) print_line_cursor#22 )
|
||||
(byte*) print_char_cursor#39 ← phi( main::@9/(byte*) print_char_cursor#40 )
|
||||
call sinFAC param-assignment
|
||||
to:main::@11
|
||||
main::@11: scope:[main] from main::@10
|
||||
(byte) main::i#8 ← phi( main::@10/(byte) main::i#9 )
|
||||
(byte*) print_line_cursor#19 ← phi( main::@10/(byte*) print_line_cursor#20 )
|
||||
(byte*) print_char_cursor#37 ← phi( main::@10/(byte*) print_char_cursor#38 )
|
||||
(byte*) print_line_cursor#20 ← phi( main::@10/(byte*) print_line_cursor#21 )
|
||||
(byte*) print_char_cursor#38 ← phi( main::@10/(byte*) print_char_cursor#39 )
|
||||
(byte*) mulFACbyMEM::mem#1 ← (byte[]) main::f_127#0
|
||||
call mulFACbyMEM param-assignment
|
||||
to:main::@12
|
||||
main::@12: scope:[main] from main::@11
|
||||
(byte) main::i#7 ← phi( main::@11/(byte) main::i#8 )
|
||||
(byte*) print_line_cursor#18 ← phi( main::@11/(byte*) print_line_cursor#19 )
|
||||
(byte*) print_char_cursor#36 ← phi( main::@11/(byte*) print_char_cursor#37 )
|
||||
(byte*) print_line_cursor#19 ← phi( main::@11/(byte*) print_line_cursor#20 )
|
||||
(byte*) print_char_cursor#37 ← phi( main::@11/(byte*) print_char_cursor#38 )
|
||||
(byte*) addMEMtoFAC::mem#0 ← (byte[]) main::f_127#0
|
||||
call addMEMtoFAC param-assignment
|
||||
to:main::@13
|
||||
main::@13: scope:[main] from main::@12
|
||||
(byte) main::i#6 ← phi( main::@12/(byte) main::i#7 )
|
||||
(byte*) print_line_cursor#17 ← phi( main::@12/(byte*) print_line_cursor#18 )
|
||||
(byte*) print_char_cursor#34 ← phi( main::@12/(byte*) print_char_cursor#36 )
|
||||
(byte*) print_line_cursor#18 ← phi( main::@12/(byte*) print_line_cursor#19 )
|
||||
(byte*) print_char_cursor#34 ← phi( main::@12/(byte*) print_char_cursor#37 )
|
||||
call getFAC param-assignment
|
||||
(word) getFAC::return#2 ← (word) getFAC::return#1
|
||||
to:main::@14
|
||||
main::@14: scope:[main] from main::@13
|
||||
(byte) main::i#5 ← phi( main::@13/(byte) main::i#6 )
|
||||
(byte*) print_line_cursor#15 ← phi( main::@13/(byte*) print_line_cursor#17 )
|
||||
(byte*) print_line_cursor#15 ← phi( main::@13/(byte*) print_line_cursor#18 )
|
||||
(byte*) print_char_cursor#32 ← phi( main::@13/(byte*) print_char_cursor#34 )
|
||||
(word) getFAC::return#4 ← phi( main::@13/(word) getFAC::return#2 )
|
||||
(word~) main::$12 ← (word) getFAC::return#4
|
||||
@ -1943,6 +1947,8 @@ main::@return: scope:[main] from main::@16
|
||||
@end: scope:[] from @43
|
||||
|
||||
SYMBOL TABLE SSA
|
||||
(const string) $0 = (string) "0123456789abcdef"
|
||||
(label) @10
|
||||
(label) @14
|
||||
(label) @42
|
||||
(label) @43
|
||||
@ -2038,7 +2044,6 @@ SYMBOL TABLE SSA
|
||||
(void()) print_byte((byte) print_byte::b)
|
||||
(byte~) print_byte::$0
|
||||
(byte~) print_byte::$2
|
||||
(const string) print_byte::$4 = (string) "0123456789abcdef"
|
||||
(label) print_byte::@1
|
||||
(label) print_byte::@2
|
||||
(label) print_byte::@return
|
||||
@ -2047,8 +2052,6 @@ SYMBOL TABLE SSA
|
||||
(byte) print_byte::b#1
|
||||
(byte) print_byte::b#2
|
||||
(byte) print_byte::b#3
|
||||
(byte[]) print_byte::hextab
|
||||
(byte[]) print_byte::hextab#0
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -2099,11 +2102,14 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_char_cursor#45
|
||||
(byte*) print_char_cursor#46
|
||||
(byte*) print_char_cursor#47
|
||||
(byte*) print_char_cursor#48
|
||||
(byte*) print_char_cursor#5
|
||||
(byte*) print_char_cursor#6
|
||||
(byte*) print_char_cursor#7
|
||||
(byte*) print_char_cursor#8
|
||||
(byte*) print_char_cursor#9
|
||||
(byte[]) print_hextab
|
||||
(byte[]) print_hextab#0
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#0
|
||||
(byte*) print_line_cursor#1
|
||||
@ -2129,6 +2135,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_line_cursor#28
|
||||
(byte*) print_line_cursor#29
|
||||
(byte*) print_line_cursor#3
|
||||
(byte*) print_line_cursor#30
|
||||
(byte*) print_line_cursor#4
|
||||
(byte*) print_line_cursor#5
|
||||
(byte*) print_line_cursor#6
|
||||
@ -2195,8 +2202,8 @@ Not aliassing across scopes: divMEMbyFAC::mem#1 divMEMbyFAC::mem#0
|
||||
Not aliassing across scopes: prepareMEM::mem#3 divMEMbyFAC::mem#1
|
||||
Not aliassing across scopes: mulFACbyMEM::mem#2 mulFACbyMEM::mem#1
|
||||
Not aliassing across scopes: prepareMEM::mem#4 mulFACbyMEM::mem#2
|
||||
Not aliassing across scopes: print_char_cursor#47 print_char_cursor#33
|
||||
Not aliassing across scopes: print_line_cursor#29 print_line_cursor#14
|
||||
Not aliassing across scopes: print_char_cursor#48 print_char_cursor#33
|
||||
Not aliassing across scopes: print_line_cursor#30 print_line_cursor#14
|
||||
Not aliassing across scopes: setMEMtoFAC::mem#0 main::f_127#0
|
||||
Not aliassing across scopes: mulFACbyMEM::mem#0 main::f_2pi#0
|
||||
Not aliassing across scopes: setMEMtoFAC::mem#1 main::f_i#0
|
||||
@ -2210,7 +2217,7 @@ Not aliassing across scopes: print_line_cursor#9 print_line_cursor#2
|
||||
Not aliassing across scopes: print_char_cursor#26 print_char_cursor#2
|
||||
Not aliassing across scopes: print_char_cursor#28 print_char_cursor#13
|
||||
Not aliassing across scopes: print_line_cursor#11 print_line_cursor#4
|
||||
Alias (byte*) print_char_cursor#0 = (byte*) print_line_cursor#0 (byte*) print_screen#0 (byte*) print_char_cursor#35 (byte*) print_line_cursor#16 (byte*) print_char_cursor#33 (byte*) print_line_cursor#14
|
||||
Alias (byte*) print_char_cursor#0 = (byte*) print_line_cursor#0 (byte*) print_screen#0 (byte*) print_char_cursor#36 (byte*) print_line_cursor#17 (byte*) print_char_cursor#35 (byte*) print_line_cursor#16 (byte*) print_char_cursor#33 (byte*) print_line_cursor#14
|
||||
Alias (byte*) print_line_cursor#1 = (byte*~) print_ln::$0 (byte*) print_line_cursor#7 (byte*) print_char_cursor#1 (byte*) print_line_cursor#8 (byte*) print_char_cursor#16 (byte*) print_line_cursor#2 (byte*) print_char_cursor#2
|
||||
Alias (byte) print_byte::b#0 = (byte~) print_word::$0
|
||||
Alias (word) print_word::w#1 = (word) print_word::w#2
|
||||
@ -2223,11 +2230,11 @@ Alias (byte*) print_char_cursor#21 = (byte*) print_char_cursor#7 (byte*) print_c
|
||||
Alias (byte*) print_char_cursor#10 = (byte*) print_char_cursor#24 (byte*) print_char_cursor#9
|
||||
Alias (byte*) prepareMEM::mem#0 = (byte*~) setFAC::$0
|
||||
Alias (word) getFAC::return#0 = (word) getFAC::w#0 (word) getFAC::return#3 (word) getFAC::return#1
|
||||
Alias (byte*) print_char_cursor#44 = (byte*) print_char_cursor#46 (byte*) print_char_cursor#47 (byte*) print_char_cursor#45
|
||||
Alias (byte*) print_line_cursor#26 = (byte*) print_line_cursor#28 (byte*) print_line_cursor#29 (byte*) print_line_cursor#27
|
||||
Alias (byte*) print_char_cursor#45 = (byte*) print_char_cursor#47 (byte*) print_char_cursor#48 (byte*) print_char_cursor#46
|
||||
Alias (byte*) print_line_cursor#27 = (byte*) print_line_cursor#29 (byte*) print_line_cursor#30 (byte*) print_line_cursor#28
|
||||
Alias (word) setFAC::w#1 = (word~) main::$3
|
||||
Alias (byte*) print_char_cursor#32 = (byte*) print_char_cursor#42 (byte*) print_char_cursor#43 (byte*) print_char_cursor#41 (byte*) print_char_cursor#40 (byte*) print_char_cursor#39 (byte*) print_char_cursor#38 (byte*) print_char_cursor#37 (byte*) print_char_cursor#36 (byte*) print_char_cursor#34
|
||||
Alias (byte*) print_line_cursor#13 = (byte*) print_line_cursor#24 (byte*) print_line_cursor#25 (byte*) print_line_cursor#23 (byte*) print_line_cursor#22 (byte*) print_line_cursor#21 (byte*) print_line_cursor#20 (byte*) print_line_cursor#19 (byte*) print_line_cursor#18 (byte*) print_line_cursor#17 (byte*) print_line_cursor#15
|
||||
Alias (byte*) print_char_cursor#32 = (byte*) print_char_cursor#43 (byte*) print_char_cursor#44 (byte*) print_char_cursor#42 (byte*) print_char_cursor#41 (byte*) print_char_cursor#40 (byte*) print_char_cursor#39 (byte*) print_char_cursor#38 (byte*) print_char_cursor#37 (byte*) print_char_cursor#34
|
||||
Alias (byte*) print_line_cursor#13 = (byte*) print_line_cursor#25 (byte*) print_line_cursor#26 (byte*) print_line_cursor#24 (byte*) print_line_cursor#23 (byte*) print_line_cursor#22 (byte*) print_line_cursor#21 (byte*) print_line_cursor#20 (byte*) print_line_cursor#19 (byte*) print_line_cursor#18 (byte*) print_line_cursor#15
|
||||
Alias (byte) main::i#10 = (byte) main::i#13 (byte) main::i#2 (byte) main::i#12 (byte) main::i#11 (byte) main::i#9 (byte) main::i#8 (byte) main::i#7 (byte) main::i#6 (byte) main::i#5 (byte) main::i#4 (byte) main::i#3
|
||||
Alias (word) getFAC::return#2 = (word) getFAC::return#4
|
||||
Alias (word) print_word::w#0 = (word~) main::$12
|
||||
@ -2259,8 +2266,8 @@ Not aliassing across scopes: divMEMbyFAC::mem#1 divMEMbyFAC::mem#0
|
||||
Not aliassing across scopes: prepareMEM::mem#3 divMEMbyFAC::mem#1
|
||||
Not aliassing across scopes: mulFACbyMEM::mem#2 mulFACbyMEM::mem#1
|
||||
Not aliassing across scopes: prepareMEM::mem#4 mulFACbyMEM::mem#2
|
||||
Not aliassing across scopes: print_char_cursor#44 print_char_cursor#0
|
||||
Not aliassing across scopes: print_line_cursor#26 print_char_cursor#0
|
||||
Not aliassing across scopes: print_char_cursor#45 print_char_cursor#0
|
||||
Not aliassing across scopes: print_line_cursor#27 print_char_cursor#0
|
||||
Not aliassing across scopes: setMEMtoFAC::mem#0 main::f_127#0
|
||||
Not aliassing across scopes: mulFACbyMEM::mem#0 main::f_2pi#0
|
||||
Not aliassing across scopes: setMEMtoFAC::mem#1 main::f_i#0
|
||||
@ -2287,8 +2294,8 @@ Redundant Phi (byte*) print_char_cursor#20 (byte*) print_char_cursor#10
|
||||
Redundant Phi (byte*) print_char_cursor#21 (byte*) print_char_cursor#10
|
||||
Redundant Phi (byte*) addMEMtoFAC::mem#1 (byte*) addMEMtoFAC::mem#0
|
||||
Redundant Phi (byte*) divMEMbyFAC::mem#1 (byte*) divMEMbyFAC::mem#0
|
||||
Redundant Phi (byte*) print_char_cursor#44 (byte*) print_char_cursor#0
|
||||
Redundant Phi (byte*) print_line_cursor#26 (byte*) print_char_cursor#0
|
||||
Redundant Phi (byte*) print_char_cursor#45 (byte*) print_char_cursor#0
|
||||
Redundant Phi (byte*) print_line_cursor#27 (byte*) print_char_cursor#0
|
||||
Redundant Phi (byte*) print_char_cursor#11 (byte*) print_char_cursor#18
|
||||
Redundant Phi (byte*) print_line_cursor#10 (byte*) print_line_cursor#1
|
||||
Redundant Phi (byte*) print_char_cursor#12 (byte*) print_line_cursor#1
|
||||
@ -2299,7 +2306,7 @@ Simple Condition (boolean~) print_ln::$1 if((byte*) print_line_cursor#1<(byte*)
|
||||
Simple Condition (boolean~) main::$15 if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 26) goto main::@1
|
||||
Succesful SSA optimization Pass2ConditionalJumpSimplification
|
||||
Constant (const byte*) print_char_cursor#0 = ((byte*))1024
|
||||
Constant (const string) print_byte::hextab#0 = print_byte::$4
|
||||
Constant (const string) print_hextab#0 = $0
|
||||
Constant (const byte*) memLo#0 = ((byte*))254
|
||||
Constant (const byte*) memHi#0 = ((byte*))255
|
||||
Constant (const byte[]) main::f_i#0 = { 0, 0, 0, 0, 0 }
|
||||
@ -2325,6 +2332,7 @@ Eliminating Noop Cast (byte*) prepareMEM::mem#0 ← ((byte*)) (word) setFAC::w#3
|
||||
Succesful SSA optimization Pass2NopCastElimination
|
||||
Culled Empty Block (label) print_ln::@2
|
||||
Culled Empty Block (label) print_word::@2
|
||||
Culled Empty Block (label) @10
|
||||
Culled Empty Block (label) print_byte::@2
|
||||
Culled Empty Block (label) @14
|
||||
Culled Empty Block (label) main::@5
|
||||
@ -2392,12 +2400,12 @@ Constant inlined addMEMtoFAC::mem#0 = (const byte[]) main::f_127#0
|
||||
Constant inlined setFAC::w#2 = (byte/signed byte/word/signed word/dword/signed dword) 25
|
||||
Constant inlined prepareMEM::mem#2 = (const byte[]) main::f_127#0
|
||||
Constant inlined prepareMEM::mem#3 = (const byte[]) main::f_i#0
|
||||
Constant inlined $0 = (const string) print_hextab#0
|
||||
Constant inlined print_char_cursor#0 = ((byte*))(word/signed word/dword/signed dword) 1024
|
||||
Constant inlined divMEMbyFAC::mem#0 = (const byte[]) main::f_i#0
|
||||
Constant inlined main::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
Constant inlined setMEMtoFAC::mem#1 = (const byte[]) main::f_i#0
|
||||
Constant inlined mulFACbyMEM::mem#0 = (const byte*) main::f_2pi#0
|
||||
Constant inlined print_byte::$4 = (const string) print_byte::hextab#0
|
||||
Constant inlined setMEMtoFAC::mem#0 = (const byte[]) main::f_127#0
|
||||
Constant inlined mulFACbyMEM::mem#1 = (const byte[]) main::f_127#0
|
||||
Constant inlined setFAC::w#0 = (word/signed word/dword/signed dword) 1275
|
||||
@ -2462,18 +2470,18 @@ Propagating live ranges...
|
||||
Created 12 initial phi equivalence classes
|
||||
Coalesced [12] setFAC::w#4 ← setFAC::w#1
|
||||
Coalesced [38] main::i#14 ← main::i#1
|
||||
Not coalescing [39] print_char_cursor#48 ← print_line_cursor#1
|
||||
Coalesced [40] print_line_cursor#30 ← print_line_cursor#1
|
||||
Coalesced [41] print_line_cursor#31 ← print_line_cursor#13
|
||||
Coalesced (already) [46] print_line_cursor#32 ← print_line_cursor#1
|
||||
Not coalescing [39] print_char_cursor#49 ← print_line_cursor#1
|
||||
Coalesced [40] print_line_cursor#31 ← print_line_cursor#1
|
||||
Coalesced [41] print_line_cursor#32 ← print_line_cursor#13
|
||||
Coalesced (already) [46] print_line_cursor#33 ← print_line_cursor#1
|
||||
Coalesced [48] print_byte::b#4 ← print_byte::b#0
|
||||
Coalesced [49] print_char_cursor#49 ← print_char_cursor#32
|
||||
Coalesced [49] print_char_cursor#50 ← print_char_cursor#32
|
||||
Coalesced [52] print_byte::b#5 ← print_byte::b#1
|
||||
Coalesced [53] print_char_cursor#50 ← print_char_cursor#10
|
||||
Coalesced [53] print_char_cursor#51 ← print_char_cursor#10
|
||||
Coalesced [59] print_char::ch#3 ← print_char::ch#0
|
||||
Coalesced [60] print_char_cursor#51 ← print_char_cursor#31
|
||||
Coalesced [60] print_char_cursor#52 ← print_char_cursor#31
|
||||
Coalesced [64] print_char::ch#4 ← print_char::ch#1
|
||||
Coalesced (already) [65] print_char_cursor#52 ← print_char_cursor#10
|
||||
Coalesced (already) [65] print_char_cursor#53 ← print_char_cursor#10
|
||||
Coalesced [87] prepareMEM::mem#6 ← prepareMEM::mem#4
|
||||
Coalesced [104] prepareMEM::mem#8 ← prepareMEM::mem#1
|
||||
Coalesced down to 9 phi equivalence classes
|
||||
@ -2547,7 +2555,7 @@ main::@4: scope:[main] from main::@3
|
||||
to:main::@1
|
||||
main::@1: scope:[main] from main::@17 main::@4
|
||||
[10] (byte*) print_line_cursor#13 ← phi( main::@17/(byte*) print_line_cursor#1 main::@4/((byte*))(word/signed word/dword/signed dword) 1024 ) [ main::i#10 print_char_cursor#32 print_line_cursor#13 ] ( main:2 [ main::i#10 print_char_cursor#32 print_line_cursor#13 ] )
|
||||
[10] (byte*) print_char_cursor#32 ← phi( main::@17/(byte*~) print_char_cursor#48 main::@4/((byte*))(word/signed word/dword/signed dword) 1024 ) [ main::i#10 print_char_cursor#32 print_line_cursor#13 ] ( main:2 [ main::i#10 print_char_cursor#32 print_line_cursor#13 ] )
|
||||
[10] (byte*) print_char_cursor#32 ← phi( main::@17/(byte*~) print_char_cursor#49 main::@4/((byte*))(word/signed word/dword/signed dword) 1024 ) [ main::i#10 print_char_cursor#32 print_line_cursor#13 ] ( main:2 [ main::i#10 print_char_cursor#32 print_line_cursor#13 ] )
|
||||
[10] (byte) main::i#10 ← phi( main::@17/(byte) main::i#1 main::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ main::i#10 print_char_cursor#32 print_line_cursor#13 ] ( main:2 [ main::i#10 print_char_cursor#32 print_line_cursor#13 ] )
|
||||
[11] (word) setFAC::w#1 ← ((word)) (byte) main::i#10 [ main::i#10 print_char_cursor#32 print_line_cursor#13 setFAC::w#1 ] ( main:2 [ main::i#10 print_char_cursor#32 print_line_cursor#13 setFAC::w#1 ] )
|
||||
[12] call setFAC param-assignment [ main::i#10 print_char_cursor#32 print_line_cursor#13 ] ( main:2 [ main::i#10 print_char_cursor#32 print_line_cursor#13 ] )
|
||||
@ -2601,7 +2609,7 @@ main::@return: scope:[main] from main::@16
|
||||
[36] return [ ] ( main:2 [ ] )
|
||||
to:@return
|
||||
main::@17: scope:[main] from main::@16
|
||||
[37] (byte*~) print_char_cursor#48 ← (byte*) print_line_cursor#1 [ main::i#1 print_char_cursor#48 print_line_cursor#1 ] ( main:2 [ main::i#1 print_char_cursor#48 print_line_cursor#1 ] )
|
||||
[37] (byte*~) print_char_cursor#49 ← (byte*) print_line_cursor#1 [ main::i#1 print_char_cursor#49 print_line_cursor#1 ] ( main:2 [ main::i#1 print_char_cursor#49 print_line_cursor#1 ] )
|
||||
to:main::@1
|
||||
print_ln: scope:[print_ln] from main::@15
|
||||
[38] phi() [ print_line_cursor#13 print_char_cursor#10 ] ( main:2::print_ln:33 [ main::i#10 print_line_cursor#13 print_char_cursor#10 ] )
|
||||
@ -2629,12 +2637,12 @@ print_byte: scope:[print_byte] from print_word print_word::@1
|
||||
[48] (byte*) print_char_cursor#31 ← phi( print_word/(byte*) print_char_cursor#32 print_word::@1/(byte*) print_char_cursor#10 ) [ print_byte::b#2 print_char_cursor#31 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_byte::b#2 print_char_cursor#31 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_byte::b#2 print_char_cursor#31 ] )
|
||||
[48] (byte) print_byte::b#2 ← phi( print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) [ print_byte::b#2 print_char_cursor#31 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_byte::b#2 print_char_cursor#31 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_byte::b#2 print_char_cursor#31 ] )
|
||||
[49] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#2 print_char_cursor#31 print_byte::$0 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_byte::b#2 print_char_cursor#31 print_byte::$0 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_byte::b#2 print_char_cursor#31 print_byte::$0 ] )
|
||||
[50] (byte) print_char::ch#0 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] )
|
||||
[50] (byte) print_char::ch#0 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] )
|
||||
[51] call print_char param-assignment [ print_char_cursor#10 print_byte::b#2 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 print_byte::b#2 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 print_byte::b#2 ] )
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
[52] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#10 print_byte::$2 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 print_byte::$2 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 print_byte::$2 ] )
|
||||
[53] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#1 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 print_char::ch#1 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 print_char::ch#1 ] )
|
||||
[53] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#1 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 print_char::ch#1 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 print_char::ch#1 ] )
|
||||
[54] call print_char param-assignment [ print_char_cursor#10 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 ] )
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte::@1
|
||||
@ -2856,7 +2864,6 @@ VARIABLE REGISTER WEIGHTS
|
||||
(byte) print_byte::b#0 4.0
|
||||
(byte) print_byte::b#1 4.0
|
||||
(byte) print_byte::b#2 2.0
|
||||
(byte[]) print_byte::hextab
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(byte) print_char::ch
|
||||
(byte) print_char::ch#0 4.0
|
||||
@ -2867,7 +2874,8 @@ VARIABLE REGISTER WEIGHTS
|
||||
(byte*) print_char_cursor#23 4.0
|
||||
(byte*) print_char_cursor#31 2.0
|
||||
(byte*) print_char_cursor#32 0.5909090909090909
|
||||
(byte*~) print_char_cursor#48 22.0
|
||||
(byte*~) print_char_cursor#49 22.0
|
||||
(byte[]) print_hextab
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#1 46.42857142857143
|
||||
(byte*) print_line_cursor#13 0.5416666666666666
|
||||
@ -2891,7 +2899,7 @@ Initial phi equivalence classes
|
||||
[ print_line_cursor#6 print_line_cursor#13 print_line_cursor#1 ]
|
||||
[ print_byte::b#2 print_byte::b#0 print_byte::b#1 ]
|
||||
[ print_char::ch#2 print_char::ch#0 print_char::ch#1 ]
|
||||
[ print_char_cursor#23 print_char_cursor#31 print_char_cursor#32 print_char_cursor#48 print_char_cursor#10 ]
|
||||
[ print_char_cursor#23 print_char_cursor#31 print_char_cursor#32 print_char_cursor#49 print_char_cursor#10 ]
|
||||
[ prepareMEM::mem#5 prepareMEM::mem#4 prepareMEM::mem#7 prepareMEM::mem#1 ]
|
||||
[ mulFACbyMEM::mem#2 ]
|
||||
[ setFAC::w#3 setFAC::w#1 ]
|
||||
@ -2908,7 +2916,7 @@ Complete equivalence classes
|
||||
[ print_line_cursor#6 print_line_cursor#13 print_line_cursor#1 ]
|
||||
[ print_byte::b#2 print_byte::b#0 print_byte::b#1 ]
|
||||
[ print_char::ch#2 print_char::ch#0 print_char::ch#1 ]
|
||||
[ print_char_cursor#23 print_char_cursor#31 print_char_cursor#32 print_char_cursor#48 print_char_cursor#10 ]
|
||||
[ print_char_cursor#23 print_char_cursor#31 print_char_cursor#32 print_char_cursor#49 print_char_cursor#10 ]
|
||||
[ prepareMEM::mem#5 prepareMEM::mem#4 prepareMEM::mem#7 prepareMEM::mem#1 ]
|
||||
[ mulFACbyMEM::mem#2 ]
|
||||
[ setFAC::w#3 setFAC::w#1 ]
|
||||
@ -2924,7 +2932,7 @@ Allocated zp ZP_BYTE:2 [ main::i#10 main::i#1 ]
|
||||
Allocated zp ZP_WORD:3 [ print_line_cursor#6 print_line_cursor#13 print_line_cursor#1 ]
|
||||
Allocated zp ZP_BYTE:5 [ print_byte::b#2 print_byte::b#0 print_byte::b#1 ]
|
||||
Allocated zp ZP_BYTE:6 [ print_char::ch#2 print_char::ch#0 print_char::ch#1 ]
|
||||
Allocated zp ZP_WORD:7 [ print_char_cursor#23 print_char_cursor#31 print_char_cursor#32 print_char_cursor#48 print_char_cursor#10 ]
|
||||
Allocated zp ZP_WORD:7 [ print_char_cursor#23 print_char_cursor#31 print_char_cursor#32 print_char_cursor#49 print_char_cursor#10 ]
|
||||
Allocated zp ZP_WORD:9 [ prepareMEM::mem#5 prepareMEM::mem#4 prepareMEM::mem#7 prepareMEM::mem#1 ]
|
||||
Allocated zp ZP_WORD:11 [ mulFACbyMEM::mem#2 ]
|
||||
Allocated zp ZP_WORD:13 [ setFAC::w#3 setFAC::w#1 ]
|
||||
@ -3153,7 +3161,7 @@ main: {
|
||||
rts
|
||||
//SEG77 main::@17
|
||||
b17:
|
||||
//SEG78 [37] (byte*~) print_char_cursor#48 ← (byte*) print_line_cursor#1 [ main::i#1 print_char_cursor#48 print_line_cursor#1 ] ( main:2 [ main::i#1 print_char_cursor#48 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
//SEG78 [37] (byte*~) print_char_cursor#49 ← (byte*) print_line_cursor#1 [ main::i#1 print_char_cursor#49 print_line_cursor#1 ] ( main:2 [ main::i#1 print_char_cursor#49 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
lda print_line_cursor
|
||||
sta print_char_cursor
|
||||
lda print_line_cursor+1
|
||||
@ -3161,7 +3169,7 @@ main: {
|
||||
//SEG79 [10] phi from main::@17 to main::@1 [phi:main::@17->main::@1]
|
||||
b1_from_b17:
|
||||
//SEG80 [10] phi (byte*) print_line_cursor#13 = (byte*) print_line_cursor#1 [phi:main::@17->main::@1#0] -- register_copy
|
||||
//SEG81 [10] phi (byte*) print_char_cursor#32 = (byte*~) print_char_cursor#48 [phi:main::@17->main::@1#1] -- register_copy
|
||||
//SEG81 [10] phi (byte*) print_char_cursor#32 = (byte*~) print_char_cursor#49 [phi:main::@17->main::@1#1] -- register_copy
|
||||
//SEG82 [10] phi (byte) main::i#10 = (byte) main::i#1 [phi:main::@17->main::@1#2] -- register_copy
|
||||
jmp b1
|
||||
f_i: .byte 0, 0, 0, 0, 0
|
||||
@ -3241,9 +3249,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
sta _0
|
||||
//SEG107 [50] (byte) print_char::ch#0 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
//SEG107 [50] (byte) print_char::ch#0 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
ldy _0
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
sta print_char.ch
|
||||
//SEG108 [51] call print_char param-assignment [ print_char_cursor#10 print_byte::b#2 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 print_byte::b#2 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 print_byte::b#2 ] )
|
||||
//SEG109 [56] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
@ -3258,9 +3266,9 @@ print_byte: {
|
||||
lda #$f
|
||||
and b
|
||||
sta _2
|
||||
//SEG114 [53] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#1 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 print_char::ch#1 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 print_char::ch#1 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
//SEG114 [53] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#1 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 print_char::ch#1 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 print_char::ch#1 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
ldy _2
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
sta print_char.ch
|
||||
//SEG115 [54] call print_char param-assignment [ print_char_cursor#10 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 ] )
|
||||
//SEG116 [56] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
@ -3273,7 +3281,6 @@ print_byte: {
|
||||
breturn:
|
||||
//SEG120 [55] return [ print_char_cursor#10 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG121 print_char
|
||||
print_char: {
|
||||
@ -3481,13 +3488,14 @@ divFACby10: {
|
||||
//SEG188 [95] return [ ] ( main:2::divFACby10:7 [ ] )
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
REGISTER UPLIFT POTENTIAL REGISTERS
|
||||
Statement [11] (word) setFAC::w#1 ← ((word)) (byte) main::i#10 [ main::i#10 print_char_cursor#32 print_line_cursor#13 setFAC::w#1 ] ( main:2 [ main::i#10 print_char_cursor#32 print_line_cursor#13 setFAC::w#1 ] ) always clobbers reg byte a
|
||||
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ main::i#10 main::i#1 ]
|
||||
Statement [29] (word) getFAC::return#2 ← (word) getFAC::return#0 [ main::i#10 print_char_cursor#32 print_line_cursor#13 getFAC::return#2 ] ( main:2 [ main::i#10 print_char_cursor#32 print_line_cursor#13 getFAC::return#2 ] ) always clobbers reg byte a
|
||||
Statement [30] (word) print_word::w#0 ← (word) getFAC::return#2 [ main::i#10 print_char_cursor#32 print_line_cursor#13 print_word::w#0 ] ( main:2 [ main::i#10 print_char_cursor#32 print_line_cursor#13 print_word::w#0 ] ) always clobbers reg byte a
|
||||
Statement [37] (byte*~) print_char_cursor#48 ← (byte*) print_line_cursor#1 [ main::i#1 print_char_cursor#48 print_line_cursor#1 ] ( main:2 [ main::i#1 print_char_cursor#48 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [37] (byte*~) print_char_cursor#49 ← (byte*) print_line_cursor#1 [ main::i#1 print_char_cursor#49 print_line_cursor#1 ] ( main:2 [ main::i#1 print_char_cursor#49 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [40] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#6 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#1 print_char_cursor#10 ] ( main:2::print_ln:33 [ main::i#10 print_line_cursor#1 print_char_cursor#10 ] ) always clobbers reg byte a
|
||||
Statement [41] if((byte*) print_line_cursor#1<(byte*) print_char_cursor#10) goto print_ln::@1 [ print_line_cursor#1 print_char_cursor#10 ] ( main:2::print_ln:33 [ main::i#10 print_line_cursor#1 print_char_cursor#10 ] ) always clobbers reg byte a
|
||||
Statement [43] (byte) print_byte::b#0 ← > (word) print_word::w#0 [ print_char_cursor#32 print_word::w#0 print_byte::b#0 ] ( main:2::print_word:31 [ main::i#10 print_line_cursor#13 print_char_cursor#32 print_word::w#0 print_byte::b#0 ] ) always clobbers reg byte a
|
||||
@ -3510,7 +3518,7 @@ Statement [11] (word) setFAC::w#1 ← ((word)) (byte) main::i#10 [ main::i#10 pr
|
||||
Statement [29] (word) getFAC::return#2 ← (word) getFAC::return#0 [ main::i#10 print_char_cursor#32 print_line_cursor#13 getFAC::return#2 ] ( main:2 [ main::i#10 print_char_cursor#32 print_line_cursor#13 getFAC::return#2 ] ) always clobbers reg byte a
|
||||
Statement [30] (word) print_word::w#0 ← (word) getFAC::return#2 [ main::i#10 print_char_cursor#32 print_line_cursor#13 print_word::w#0 ] ( main:2 [ main::i#10 print_char_cursor#32 print_line_cursor#13 print_word::w#0 ] ) always clobbers reg byte a
|
||||
Statement [35] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 26) goto main::@17 [ main::i#1 print_line_cursor#1 ] ( main:2 [ main::i#1 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [37] (byte*~) print_char_cursor#48 ← (byte*) print_line_cursor#1 [ main::i#1 print_char_cursor#48 print_line_cursor#1 ] ( main:2 [ main::i#1 print_char_cursor#48 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [37] (byte*~) print_char_cursor#49 ← (byte*) print_line_cursor#1 [ main::i#1 print_char_cursor#49 print_line_cursor#1 ] ( main:2 [ main::i#1 print_char_cursor#49 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [40] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#6 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#1 print_char_cursor#10 ] ( main:2::print_ln:33 [ main::i#10 print_line_cursor#1 print_char_cursor#10 ] ) always clobbers reg byte a
|
||||
Statement [41] if((byte*) print_line_cursor#1<(byte*) print_char_cursor#10) goto print_ln::@1 [ print_line_cursor#1 print_char_cursor#10 ] ( main:2::print_ln:33 [ main::i#10 print_line_cursor#1 print_char_cursor#10 ] ) always clobbers reg byte a
|
||||
Statement [43] (byte) print_byte::b#0 ← > (word) print_word::w#0 [ print_char_cursor#32 print_word::w#0 print_byte::b#0 ] ( main:2::print_word:31 [ main::i#10 print_line_cursor#13 print_char_cursor#32 print_word::w#0 print_byte::b#0 ] ) always clobbers reg byte a
|
||||
@ -3530,7 +3538,7 @@ Potential registers zp ZP_BYTE:2 [ main::i#10 main::i#1 ] : zp ZP_BYTE:2 ,
|
||||
Potential registers zp ZP_WORD:3 [ print_line_cursor#6 print_line_cursor#13 print_line_cursor#1 ] : zp ZP_WORD:3 ,
|
||||
Potential registers zp ZP_BYTE:5 [ print_byte::b#2 print_byte::b#0 print_byte::b#1 ] : zp ZP_BYTE:5 , reg byte a , reg byte x ,
|
||||
Potential registers zp ZP_BYTE:6 [ print_char::ch#2 print_char::ch#0 print_char::ch#1 ] : zp ZP_BYTE:6 , reg byte a , reg byte x , reg byte y ,
|
||||
Potential registers zp ZP_WORD:7 [ print_char_cursor#23 print_char_cursor#31 print_char_cursor#32 print_char_cursor#48 print_char_cursor#10 ] : zp ZP_WORD:7 ,
|
||||
Potential registers zp ZP_WORD:7 [ print_char_cursor#23 print_char_cursor#31 print_char_cursor#32 print_char_cursor#49 print_char_cursor#10 ] : zp ZP_WORD:7 ,
|
||||
Potential registers zp ZP_WORD:9 [ prepareMEM::mem#5 prepareMEM::mem#4 prepareMEM::mem#7 prepareMEM::mem#1 ] : zp ZP_WORD:9 ,
|
||||
Potential registers zp ZP_WORD:11 [ mulFACbyMEM::mem#2 ] : zp ZP_WORD:11 ,
|
||||
Potential registers zp ZP_WORD:13 [ setFAC::w#3 setFAC::w#1 ] : zp ZP_WORD:13 ,
|
||||
@ -3544,7 +3552,7 @@ Potential registers zp ZP_BYTE:25 [ prepareMEM::$0 ] : zp ZP_BYTE:25 , reg byte
|
||||
Potential registers zp ZP_BYTE:26 [ prepareMEM::$1 ] : zp ZP_BYTE:26 , reg byte a , reg byte x , reg byte y ,
|
||||
|
||||
REGISTER UPLIFT SCOPES
|
||||
Uplift Scope [] 250.97: zp ZP_WORD:3 [ print_line_cursor#6 print_line_cursor#13 print_line_cursor#1 ] 34.89: zp ZP_WORD:7 [ print_char_cursor#23 print_char_cursor#31 print_char_cursor#32 print_char_cursor#48 print_char_cursor#10 ]
|
||||
Uplift Scope [] 250.97: zp ZP_WORD:3 [ print_line_cursor#6 print_line_cursor#13 print_line_cursor#1 ] 34.89: zp ZP_WORD:7 [ print_char_cursor#23 print_char_cursor#31 print_char_cursor#32 print_char_cursor#49 print_char_cursor#10 ]
|
||||
Uplift Scope [setFAC] 33: zp ZP_WORD:13 [ setFAC::w#3 setFAC::w#1 ]
|
||||
Uplift Scope [getFAC] 22: zp ZP_WORD:17 [ getFAC::return#2 ] 4.33: zp ZP_WORD:23 [ getFAC::return#0 ]
|
||||
Uplift Scope [prepareMEM] 15.33: zp ZP_WORD:9 [ prepareMEM::mem#5 prepareMEM::mem#4 prepareMEM::mem#7 prepareMEM::mem#1 ] 4: zp ZP_BYTE:25 [ prepareMEM::$0 ] 4: zp ZP_BYTE:26 [ prepareMEM::$1 ]
|
||||
@ -3560,7 +3568,7 @@ Uplift Scope [divMEMbyFAC]
|
||||
Uplift Scope [sinFAC]
|
||||
Uplift Scope [divFACby10]
|
||||
|
||||
Uplifting [] best 6314 combination zp ZP_WORD:3 [ print_line_cursor#6 print_line_cursor#13 print_line_cursor#1 ] zp ZP_WORD:7 [ print_char_cursor#23 print_char_cursor#31 print_char_cursor#32 print_char_cursor#48 print_char_cursor#10 ]
|
||||
Uplifting [] best 6314 combination zp ZP_WORD:3 [ print_line_cursor#6 print_line_cursor#13 print_line_cursor#1 ] zp ZP_WORD:7 [ print_char_cursor#23 print_char_cursor#31 print_char_cursor#32 print_char_cursor#49 print_char_cursor#10 ]
|
||||
Uplifting [setFAC] best 6314 combination zp ZP_WORD:13 [ setFAC::w#3 setFAC::w#1 ]
|
||||
Uplifting [getFAC] best 6314 combination zp ZP_WORD:17 [ getFAC::return#2 ] zp ZP_WORD:23 [ getFAC::return#0 ]
|
||||
Uplifting [prepareMEM] best 6302 combination zp ZP_WORD:9 [ prepareMEM::mem#5 prepareMEM::mem#4 prepareMEM::mem#7 prepareMEM::mem#1 ] reg byte a [ prepareMEM::$0 ] reg byte a [ prepareMEM::$1 ]
|
||||
@ -3583,7 +3591,7 @@ Coalescing zero page register with common assignment [ zp ZP_WORD:9 [ prepareMEM
|
||||
Coalescing zero page register with common assignment [ zp ZP_WORD:17 [ getFAC::return#2 ] ] with [ zp ZP_WORD:19 [ print_word::w#0 ] ] - score: 1
|
||||
Coalescing zero page register with common assignment [ zp ZP_WORD:17 [ getFAC::return#2 print_word::w#0 ] ] with [ zp ZP_WORD:23 [ getFAC::return#0 ] ] - score: 1
|
||||
Coalescing zero page register [ zp ZP_WORD:9 [ prepareMEM::mem#5 prepareMEM::mem#4 prepareMEM::mem#7 prepareMEM::mem#1 mulFACbyMEM::mem#2 setFAC::w#3 setFAC::w#1 setMEMtoFAC::mem#2 ] ] with [ zp ZP_WORD:17 [ getFAC::return#2 print_word::w#0 getFAC::return#0 ] ]
|
||||
Allocated (was zp ZP_WORD:7) zp ZP_WORD:5 [ print_char_cursor#23 print_char_cursor#31 print_char_cursor#32 print_char_cursor#48 print_char_cursor#10 ]
|
||||
Allocated (was zp ZP_WORD:7) zp ZP_WORD:5 [ print_char_cursor#23 print_char_cursor#31 print_char_cursor#32 print_char_cursor#49 print_char_cursor#10 ]
|
||||
Allocated (was zp ZP_WORD:9) zp ZP_WORD:7 [ prepareMEM::mem#5 prepareMEM::mem#4 prepareMEM::mem#7 prepareMEM::mem#1 mulFACbyMEM::mem#2 setFAC::w#3 setFAC::w#1 setMEMtoFAC::mem#2 getFAC::return#2 print_word::w#0 getFAC::return#0 ]
|
||||
|
||||
ASSEMBLER BEFORE OPTIMIZATION
|
||||
@ -3796,7 +3804,7 @@ main: {
|
||||
rts
|
||||
//SEG77 main::@17
|
||||
b17:
|
||||
//SEG78 [37] (byte*~) print_char_cursor#48 ← (byte*) print_line_cursor#1 [ main::i#1 print_char_cursor#48 print_line_cursor#1 ] ( main:2 [ main::i#1 print_char_cursor#48 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
//SEG78 [37] (byte*~) print_char_cursor#49 ← (byte*) print_line_cursor#1 [ main::i#1 print_char_cursor#49 print_line_cursor#1 ] ( main:2 [ main::i#1 print_char_cursor#49 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
lda print_line_cursor
|
||||
sta print_char_cursor
|
||||
lda print_line_cursor+1
|
||||
@ -3804,7 +3812,7 @@ main: {
|
||||
//SEG79 [10] phi from main::@17 to main::@1 [phi:main::@17->main::@1]
|
||||
b1_from_b17:
|
||||
//SEG80 [10] phi (byte*) print_line_cursor#13 = (byte*) print_line_cursor#1 [phi:main::@17->main::@1#0] -- register_copy
|
||||
//SEG81 [10] phi (byte*) print_char_cursor#32 = (byte*~) print_char_cursor#48 [phi:main::@17->main::@1#1] -- register_copy
|
||||
//SEG81 [10] phi (byte*) print_char_cursor#32 = (byte*~) print_char_cursor#49 [phi:main::@17->main::@1#1] -- register_copy
|
||||
//SEG82 [10] phi (byte) main::i#10 = (byte) main::i#1 [phi:main::@17->main::@1#2] -- register_copy
|
||||
jmp b1
|
||||
f_i: .byte 0, 0, 0, 0, 0
|
||||
@ -3880,9 +3888,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
//SEG107 [50] (byte) print_char::ch#0 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG107 [50] (byte) print_char::ch#0 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG108 [51] call print_char param-assignment [ print_char_cursor#10 print_byte::b#2 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 print_byte::b#2 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 print_byte::b#2 ] )
|
||||
//SEG109 [56] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
print_char_from_print_byte:
|
||||
@ -3895,9 +3903,9 @@ print_byte: {
|
||||
//SEG113 [52] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#10 print_byte::$2 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 print_byte::$2 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 print_byte::$2 ] ) -- vbuaa=vbuxx_band_vbuc1
|
||||
txa
|
||||
and #$f
|
||||
//SEG114 [53] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#1 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 print_char::ch#1 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG114 [53] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#1 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 print_char::ch#1 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG115 [54] call print_char param-assignment [ print_char_cursor#10 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 ] )
|
||||
//SEG116 [56] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
print_char_from_b1:
|
||||
@ -3909,7 +3917,6 @@ print_byte: {
|
||||
breturn:
|
||||
//SEG120 [55] return [ print_char_cursor#10 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG121 print_char
|
||||
print_char: {
|
||||
@ -4099,6 +4106,7 @@ divFACby10: {
|
||||
//SEG188 [95] return [ ] ( main:2::divFACby10:7 [ ] )
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
ASSEMBLER OPTIMIZATIONS
|
||||
Removing instruction jmp b42
|
||||
@ -4292,8 +4300,6 @@ FINAL SYMBOL TABLE
|
||||
(byte) print_byte::b#0 reg byte x 4.0
|
||||
(byte) print_byte::b#1 reg byte x 4.0
|
||||
(byte) print_byte::b#2 reg byte x 2.0
|
||||
(byte[]) print_byte::hextab
|
||||
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -4305,7 +4311,9 @@ FINAL SYMBOL TABLE
|
||||
(byte*) print_char_cursor#23 print_char_cursor zp ZP_WORD:5 4.0
|
||||
(byte*) print_char_cursor#31 print_char_cursor zp ZP_WORD:5 2.0
|
||||
(byte*) print_char_cursor#32 print_char_cursor zp ZP_WORD:5 0.5909090909090909
|
||||
(byte*~) print_char_cursor#48 print_char_cursor zp ZP_WORD:5 22.0
|
||||
(byte*~) print_char_cursor#49 print_char_cursor zp ZP_WORD:5 22.0
|
||||
(byte[]) print_hextab
|
||||
(const string) print_hextab#0 print_hextab = (string) "0123456789abcdef"
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#1 print_line_cursor zp ZP_WORD:3 46.42857142857143
|
||||
(byte*) print_line_cursor#13 print_line_cursor zp ZP_WORD:3 0.5416666666666666
|
||||
@ -4337,7 +4345,7 @@ zp ZP_BYTE:2 [ main::i#10 main::i#1 ]
|
||||
zp ZP_WORD:3 [ print_line_cursor#6 print_line_cursor#13 print_line_cursor#1 ]
|
||||
reg byte x [ print_byte::b#2 print_byte::b#0 print_byte::b#1 ]
|
||||
reg byte a [ print_char::ch#2 print_char::ch#0 print_char::ch#1 ]
|
||||
zp ZP_WORD:5 [ print_char_cursor#23 print_char_cursor#31 print_char_cursor#32 print_char_cursor#48 print_char_cursor#10 ]
|
||||
zp ZP_WORD:5 [ print_char_cursor#23 print_char_cursor#31 print_char_cursor#32 print_char_cursor#49 print_char_cursor#10 ]
|
||||
zp ZP_WORD:7 [ prepareMEM::mem#5 prepareMEM::mem#4 prepareMEM::mem#7 prepareMEM::mem#1 mulFACbyMEM::mem#2 setFAC::w#3 setFAC::w#1 setMEMtoFAC::mem#2 getFAC::return#2 print_word::w#0 getFAC::return#0 ]
|
||||
reg byte a [ print_byte::$0 ]
|
||||
reg byte a [ print_byte::$2 ]
|
||||
@ -4498,14 +4506,14 @@ main: {
|
||||
rts
|
||||
//SEG77 main::@17
|
||||
b17:
|
||||
//SEG78 [37] (byte*~) print_char_cursor#48 ← (byte*) print_line_cursor#1 [ main::i#1 print_char_cursor#48 print_line_cursor#1 ] ( main:2 [ main::i#1 print_char_cursor#48 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
//SEG78 [37] (byte*~) print_char_cursor#49 ← (byte*) print_line_cursor#1 [ main::i#1 print_char_cursor#49 print_line_cursor#1 ] ( main:2 [ main::i#1 print_char_cursor#49 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
lda print_line_cursor
|
||||
sta print_char_cursor
|
||||
lda print_line_cursor+1
|
||||
sta print_char_cursor+1
|
||||
//SEG79 [10] phi from main::@17 to main::@1 [phi:main::@17->main::@1]
|
||||
//SEG80 [10] phi (byte*) print_line_cursor#13 = (byte*) print_line_cursor#1 [phi:main::@17->main::@1#0] -- register_copy
|
||||
//SEG81 [10] phi (byte*) print_char_cursor#32 = (byte*~) print_char_cursor#48 [phi:main::@17->main::@1#1] -- register_copy
|
||||
//SEG81 [10] phi (byte*) print_char_cursor#32 = (byte*~) print_char_cursor#49 [phi:main::@17->main::@1#1] -- register_copy
|
||||
//SEG82 [10] phi (byte) main::i#10 = (byte) main::i#1 [phi:main::@17->main::@1#2] -- register_copy
|
||||
jmp b1
|
||||
f_i: .byte 0, 0, 0, 0, 0
|
||||
@ -4570,9 +4578,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
//SEG107 [50] (byte) print_char::ch#0 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG107 [50] (byte) print_char::ch#0 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_byte::b#2 print_char_cursor#31 print_char::ch#0 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG108 [51] call print_char param-assignment [ print_char_cursor#10 print_byte::b#2 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 print_byte::b#2 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 print_byte::b#2 ] )
|
||||
//SEG109 [56] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
//SEG110 [56] phi (byte*) print_char_cursor#23 = (byte*) print_char_cursor#31 [phi:print_byte->print_char#0] -- register_copy
|
||||
@ -4582,9 +4590,9 @@ print_byte: {
|
||||
//SEG113 [52] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#10 print_byte::$2 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 print_byte::$2 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 print_byte::$2 ] ) -- vbuaa=vbuxx_band_vbuc1
|
||||
txa
|
||||
and #$f
|
||||
//SEG114 [53] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#1 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 print_char::ch#1 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG114 [53] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#1 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 print_char::ch#1 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG115 [54] call print_char param-assignment [ print_char_cursor#10 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 ] )
|
||||
//SEG116 [56] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
//SEG117 [56] phi (byte*) print_char_cursor#23 = (byte*) print_char_cursor#10 [phi:print_byte::@1->print_char#0] -- register_copy
|
||||
@ -4593,7 +4601,6 @@ print_byte: {
|
||||
//SEG119 print_byte::@return
|
||||
//SEG120 [55] return [ print_char_cursor#10 ] ( main:2::print_word:31::print_byte:44 [ main::i#10 print_line_cursor#13 print_word::w#0 print_char_cursor#10 ] main:2::print_word:31::print_byte:46 [ main::i#10 print_line_cursor#13 print_char_cursor#10 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG121 print_char
|
||||
print_char: {
|
||||
@ -4748,4 +4755,5 @@ divFACby10: {
|
||||
//SEG188 [95] return [ ] ( main:2::divFACby10:7 [ ] )
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
|
@ -70,8 +70,6 @@
|
||||
(byte) print_byte::b#0 reg byte x 4.0
|
||||
(byte) print_byte::b#1 reg byte x 4.0
|
||||
(byte) print_byte::b#2 reg byte x 2.0
|
||||
(byte[]) print_byte::hextab
|
||||
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -83,7 +81,9 @@
|
||||
(byte*) print_char_cursor#23 print_char_cursor zp ZP_WORD:5 4.0
|
||||
(byte*) print_char_cursor#31 print_char_cursor zp ZP_WORD:5 2.0
|
||||
(byte*) print_char_cursor#32 print_char_cursor zp ZP_WORD:5 0.5909090909090909
|
||||
(byte*~) print_char_cursor#48 print_char_cursor zp ZP_WORD:5 22.0
|
||||
(byte*~) print_char_cursor#49 print_char_cursor zp ZP_WORD:5 22.0
|
||||
(byte[]) print_hextab
|
||||
(const string) print_hextab#0 print_hextab = (string) "0123456789abcdef"
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#1 print_line_cursor zp ZP_WORD:3 46.42857142857143
|
||||
(byte*) print_line_cursor#13 print_line_cursor zp ZP_WORD:3 0.5416666666666666
|
||||
@ -115,7 +115,7 @@ zp ZP_BYTE:2 [ main::i#10 main::i#1 ]
|
||||
zp ZP_WORD:3 [ print_line_cursor#6 print_line_cursor#13 print_line_cursor#1 ]
|
||||
reg byte x [ print_byte::b#2 print_byte::b#0 print_byte::b#1 ]
|
||||
reg byte a [ print_char::ch#2 print_char::ch#0 print_char::ch#1 ]
|
||||
zp ZP_WORD:5 [ print_char_cursor#23 print_char_cursor#31 print_char_cursor#32 print_char_cursor#48 print_char_cursor#10 ]
|
||||
zp ZP_WORD:5 [ print_char_cursor#23 print_char_cursor#31 print_char_cursor#32 print_char_cursor#49 print_char_cursor#10 ]
|
||||
zp ZP_WORD:7 [ prepareMEM::mem#5 prepareMEM::mem#4 prepareMEM::mem#7 prepareMEM::mem#1 mulFACbyMEM::mem#2 setFAC::w#3 setFAC::w#1 setMEMtoFAC::mem#2 getFAC::return#2 print_word::w#0 getFAC::return#0 ]
|
||||
reg byte a [ print_byte::$0 ]
|
||||
reg byte a [ print_byte::$2 ]
|
||||
|
@ -677,12 +677,13 @@ void print_sdword(signed dword dw) {
|
||||
print_dword((dword)dw);
|
||||
}
|
||||
|
||||
const byte[] print_hextab = "0123456789abcdef";
|
||||
|
||||
// Print a byte as HEX
|
||||
void print_byte(byte b) {
|
||||
// Table of hexadecimal digits
|
||||
const byte[] hextab = "0123456789abcdef";
|
||||
print_char(hextab[b>>4]);
|
||||
print_char(hextab[b&$f]);
|
||||
print_char(print_hextab[b>>4]);
|
||||
print_char(print_hextab[b&$f]);
|
||||
}
|
||||
|
||||
// Print a single char
|
||||
@ -1073,12 +1074,12 @@ print_sdword::@1:
|
||||
print_sdword::@return:
|
||||
return
|
||||
endproc // print_sdword()
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
proc (void()) print_byte((byte) print_byte::b)
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
print_byte::@return:
|
||||
return
|
||||
endproc // print_byte()
|
||||
@ -1651,7 +1652,6 @@ SYMBOLS
|
||||
(void~) print_byte::$3
|
||||
(label) print_byte::@return
|
||||
(byte) print_byte::b
|
||||
(byte[]) print_byte::hextab
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -1669,6 +1669,7 @@ SYMBOLS
|
||||
(void~) print_dword::$3
|
||||
(label) print_dword::@return
|
||||
(dword) print_dword::dw
|
||||
(byte[]) print_hextab
|
||||
(byte*) print_line_cursor
|
||||
(void()) print_ln()
|
||||
(byte*~) print_ln::$0
|
||||
@ -2349,13 +2350,13 @@ print_sdword::@return: scope:[print_sdword] from print_sdword::@1
|
||||
return
|
||||
to:@return
|
||||
@37: scope:[] from @36
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
to:@38
|
||||
print_byte: scope:[print_byte] from
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte
|
||||
return
|
||||
@ -2848,6 +2849,7 @@ Eliminating unused variable - keeping the call (void~) addMEMtoFAC::$0
|
||||
Eliminating unused variable - keeping the call (void~) divMEMbyFAC::$0
|
||||
Eliminating unused variable - keeping the call (void~) mulFACbyMEM::$0
|
||||
Eliminating unused variable (byte*) print_char_cursor and assignment [101] (byte*) print_char_cursor ← (byte*) print_line_cursor
|
||||
Eliminating unused variable (byte[]) print_hextab and assignment [102] (byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
Eliminating unused variable - keeping the call (void~) main::$0
|
||||
Eliminating unused variable - keeping the call (void~) main::$2
|
||||
Eliminating unused variable - keeping the call (void~) init::$0
|
||||
|
@ -118,15 +118,14 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
txa
|
||||
and #$f
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
print_char: {
|
||||
ldy #0
|
||||
@ -569,3 +568,4 @@ divr16u: {
|
||||
bne b1
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
@ -91,12 +91,12 @@ print_byte: scope:[print_byte] from print_word print_word::@1
|
||||
[40] (byte*) print_char_cursor#46 ← phi( print_word/(byte*) print_char_cursor#43 print_word::@1/(byte*) print_char_cursor#12 ) [ print_byte::b#2 print_char_cursor#46 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_byte::b#2 print_char_cursor#46 ] )
|
||||
[40] (byte) print_byte::b#2 ← phi( print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) [ print_byte::b#2 print_char_cursor#46 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_byte::b#2 print_char_cursor#46 ] )
|
||||
[41] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#2 print_char_cursor#46 print_byte::$0 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] )
|
||||
[42] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] )
|
||||
[42] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] )
|
||||
[43] call print_char param-assignment [ print_char_cursor#12 print_byte::b#2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_byte::b#2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_byte::b#2 ] )
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
[44] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#12 print_byte::$2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_byte::$2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_byte::$2 ] )
|
||||
[45] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_char::ch#2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_char::ch#2 ] )
|
||||
[45] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_char::ch#2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_char::ch#2 ] )
|
||||
[46] call print_char param-assignment [ print_char_cursor#12 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 ] )
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte::@1
|
||||
|
@ -459,12 +459,13 @@ void print_sdword(signed dword dw) {
|
||||
print_dword((dword)dw);
|
||||
}
|
||||
|
||||
const byte[] print_hextab = "0123456789abcdef";
|
||||
|
||||
// Print a byte as HEX
|
||||
void print_byte(byte b) {
|
||||
// Table of hexadecimal digits
|
||||
const byte[] hextab = "0123456789abcdef";
|
||||
print_char(hextab[b>>4]);
|
||||
print_char(hextab[b&$f]);
|
||||
print_char(print_hextab[b>>4]);
|
||||
print_char(print_hextab[b&$f]);
|
||||
}
|
||||
|
||||
// Print a single char
|
||||
@ -1133,12 +1134,12 @@ print_sdword::@1:
|
||||
print_sdword::@return:
|
||||
return
|
||||
endproc // print_sdword()
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
proc (void()) print_byte((byte) print_byte::b)
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
print_byte::@return:
|
||||
return
|
||||
endproc // print_byte()
|
||||
@ -1485,7 +1486,6 @@ SYMBOLS
|
||||
(void~) print_byte::$3
|
||||
(label) print_byte::@return
|
||||
(byte) print_byte::b
|
||||
(byte[]) print_byte::hextab
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -1503,6 +1503,7 @@ SYMBOLS
|
||||
(void~) print_dword::$3
|
||||
(label) print_dword::@return
|
||||
(dword) print_dword::dw
|
||||
(byte[]) print_hextab
|
||||
(byte*) print_line_cursor
|
||||
(void()) print_ln()
|
||||
(byte*~) print_ln::$0
|
||||
@ -2596,13 +2597,13 @@ print_sdword::@return: scope:[print_sdword] from print_sdword::@1
|
||||
return
|
||||
to:@return
|
||||
@28: scope:[] from @27
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
to:@29
|
||||
print_byte: scope:[print_byte] from
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte
|
||||
return
|
||||
@ -2720,7 +2721,7 @@ Eliminating unused variable - keeping the call (void~) main::$1
|
||||
Eliminating unused variable - keeping the call (void~) main::$5
|
||||
Eliminating unused variable - keeping the call (void~) main::$6
|
||||
Eliminating unused variable - keeping the call (void~) main::$4
|
||||
Creating constant string variable for inline (const string) print_byte::$4 "0123456789abcdef"
|
||||
Creating constant string variable for inline (const string) $0 "0123456789abcdef"
|
||||
Creating constant string variable for inline (const string) main::str " @"
|
||||
Creating constant string variable for inline (const string) main::str1 " @"
|
||||
Removing empty block @1
|
||||
@ -2760,7 +2761,6 @@ Removing empty block @24
|
||||
Removing empty block @25
|
||||
Removing empty block @26
|
||||
Removing empty block @27
|
||||
Removing empty block @28
|
||||
Removing empty block @29
|
||||
Removing empty block @30
|
||||
Removing empty block @31
|
||||
@ -2963,7 +2963,7 @@ mul16u::@return: scope:[mul16u] from mul16u::@3
|
||||
return
|
||||
to:@return
|
||||
@12: scope:[] from @2
|
||||
(word) rem16u#29 ← phi( @2/(word) rem16u#0 )
|
||||
(word) rem16u#31 ← phi( @2/(word) rem16u#0 )
|
||||
(dword) PI2_u4f28#0 ← (dword/signed dword) 1686629713
|
||||
(dword) PI_u4f28#0 ← (dword/signed dword) 843314857
|
||||
(dword) PI_HALF_u4f28#0 ← (dword/signed dword) 421657428
|
||||
@ -3167,11 +3167,11 @@ mulu16_sel::@return: scope:[mulu16_sel] from mulu16_sel::@2
|
||||
return
|
||||
to:@return
|
||||
@18: scope:[] from @12
|
||||
(word) rem16u#28 ← phi( @12/(word) rem16u#29 )
|
||||
(word) rem16u#29 ← phi( @12/(word) rem16u#31 )
|
||||
(byte*) print_screen#0 ← ((byte*)) (word/signed word/dword/signed dword) 1024
|
||||
(byte*) print_line_cursor#0 ← (byte*) print_screen#0
|
||||
(byte*) print_char_cursor#0 ← (byte*) print_line_cursor#0
|
||||
to:@33
|
||||
to:@28
|
||||
print_str: scope:[print_str] from main::@3 main::@7
|
||||
(byte*) print_char_cursor#51 ← phi( main::@3/(byte*) print_char_cursor#49 main::@7/(byte*) print_char_cursor#17 )
|
||||
(byte*) print_str::str#5 ← phi( main::@3/(byte*) print_str::str#2 main::@7/(byte*) print_str::str#1 )
|
||||
@ -3254,12 +3254,18 @@ print_word::@return: scope:[print_word] from print_word::@2
|
||||
(byte*) print_char_cursor#8 ← (byte*) print_char_cursor#29
|
||||
return
|
||||
to:@return
|
||||
@28: scope:[] from @18
|
||||
(byte*) print_screen#7 ← phi( @18/(byte*) print_screen#0 )
|
||||
(byte*) print_char_cursor#55 ← phi( @18/(byte*) print_char_cursor#0 )
|
||||
(byte*) print_line_cursor#15 ← phi( @18/(byte*) print_line_cursor#0 )
|
||||
(word) rem16u#28 ← phi( @18/(word) rem16u#29 )
|
||||
(byte[]) print_hextab#0 ← (const string) $0
|
||||
to:@33
|
||||
print_byte: scope:[print_byte] from print_word print_word::@1
|
||||
(byte*) print_char_cursor#46 ← phi( print_word/(byte*) print_char_cursor#45 print_word::@1/(byte*) print_char_cursor#6 )
|
||||
(byte) print_byte::b#2 ← phi( print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 )
|
||||
(byte[]) print_byte::hextab#0 ← (const string) print_byte::$4
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(byte) print_char::ch#1 ← *((byte[]) print_byte::hextab#0 + (byte~) print_byte::$0)
|
||||
(byte) print_char::ch#1 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$0)
|
||||
call print_char param-assignment
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
@ -3267,7 +3273,7 @@ print_byte::@1: scope:[print_byte] from print_byte
|
||||
(byte*) print_char_cursor#30 ← phi( print_byte/(byte*) print_char_cursor#13 )
|
||||
(byte*) print_char_cursor#9 ← (byte*) print_char_cursor#30
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b#3 & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(byte) print_char::ch#2 ← *((byte[]) print_byte::hextab#0 + (byte~) print_byte::$2)
|
||||
(byte) print_char::ch#2 ← *((byte[]) print_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
|
||||
@ -3336,7 +3342,7 @@ main::@5: scope:[main] from main
|
||||
call print_cls param-assignment
|
||||
to:main::@6
|
||||
main::@6: scope:[main] from main::@5
|
||||
(word) rem16u#33 ← phi( main::@5/(word) rem16u#8 )
|
||||
(word) rem16u#34 ← phi( main::@5/(word) rem16u#8 )
|
||||
(word) main::wavelength#6 ← phi( main::@5/(word) main::wavelength#8 )
|
||||
(byte*) print_char_cursor#36 ← phi( main::@5/(byte*) print_char_cursor#15 )
|
||||
(byte*) print_line_cursor#7 ← phi( main::@5/(byte*) print_line_cursor#2 )
|
||||
@ -3345,8 +3351,8 @@ main::@6: scope:[main] from main::@5
|
||||
(signed word*) main::st1#0 ← (signed word[120]) main::sintab1#0
|
||||
to:main::@1
|
||||
main::@1: scope:[main] from main::@6 main::@8
|
||||
(byte*) print_line_cursor#16 ← phi( main::@6/(byte*) print_line_cursor#3 main::@8/(byte*) print_line_cursor#11 )
|
||||
(word) rem16u#31 ← phi( main::@6/(word) rem16u#33 main::@8/(word) rem16u#24 )
|
||||
(byte*) print_line_cursor#17 ← phi( main::@6/(byte*) print_line_cursor#3 main::@8/(byte*) print_line_cursor#11 )
|
||||
(word) rem16u#32 ← phi( main::@6/(word) rem16u#34 main::@8/(word) rem16u#24 )
|
||||
(word) main::wavelength#4 ← phi( main::@6/(word) main::wavelength#6 main::@8/(word) main::wavelength#1 )
|
||||
(byte*) print_char_cursor#54 ← phi( main::@6/(byte*) print_char_cursor#16 main::@8/(byte*) print_char_cursor#18 )
|
||||
(signed word*) main::st1#2 ← phi( main::@6/(signed word*) main::st1#0 main::@8/(signed word*) main::st1#1 )
|
||||
@ -3356,8 +3362,8 @@ main::@1: scope:[main] from main::@6 main::@8
|
||||
if((boolean~) main::$3) goto main::@2
|
||||
to:main::@3
|
||||
main::@2: scope:[main] from main::@1 main::@9
|
||||
(byte*) print_line_cursor#15 ← phi( main::@1/(byte*) print_line_cursor#16 main::@9/(byte*) print_line_cursor#17 )
|
||||
(word) rem16u#30 ← phi( main::@1/(word) rem16u#31 main::@9/(word) rem16u#32 )
|
||||
(byte*) print_line_cursor#16 ← phi( main::@1/(byte*) print_line_cursor#17 main::@9/(byte*) print_line_cursor#18 )
|
||||
(word) rem16u#30 ← phi( main::@1/(word) rem16u#32 main::@9/(word) rem16u#33 )
|
||||
(word) main::wavelength#3 ← phi( main::@1/(word) main::wavelength#4 main::@9/(word) main::wavelength#5 )
|
||||
(signed word*) main::st1#5 ← phi( main::@1/(signed word*) main::st1#2 main::@9/(signed word*) main::st1#6 )
|
||||
(byte*) print_char_cursor#48 ← phi( main::@1/(byte*) print_char_cursor#54 main::@9/(byte*) print_char_cursor#19 )
|
||||
@ -3366,7 +3372,7 @@ main::@2: scope:[main] from main::@1 main::@9
|
||||
call print_sword param-assignment
|
||||
to:main::@7
|
||||
main::@7: scope:[main] from main::@2
|
||||
(byte*) print_line_cursor#14 ← phi( main::@2/(byte*) print_line_cursor#15 )
|
||||
(byte*) print_line_cursor#14 ← phi( main::@2/(byte*) print_line_cursor#16 )
|
||||
(word) rem16u#27 ← phi( main::@2/(word) rem16u#30 )
|
||||
(word) main::wavelength#2 ← phi( main::@2/(word) main::wavelength#3 )
|
||||
(signed word*) main::st1#4 ← phi( main::@2/(signed word*) main::st1#5 )
|
||||
@ -3390,8 +3396,8 @@ main::@8: scope:[main] from main::@7
|
||||
if((boolean~) main::$10) goto main::@1
|
||||
to:main::@return
|
||||
main::@3: scope:[main] from main::@1
|
||||
(byte*) print_line_cursor#18 ← phi( main::@1/(byte*) print_line_cursor#16 )
|
||||
(word) rem16u#34 ← phi( main::@1/(word) rem16u#31 )
|
||||
(byte*) print_line_cursor#19 ← phi( main::@1/(byte*) print_line_cursor#17 )
|
||||
(word) rem16u#35 ← phi( main::@1/(word) rem16u#32 )
|
||||
(word) main::wavelength#7 ← phi( main::@1/(word) main::wavelength#4 )
|
||||
(signed word*) main::st1#7 ← phi( main::@1/(signed word*) main::st1#2 )
|
||||
(signed word) main::sw#3 ← phi( main::@1/(signed word) main::sw#0 )
|
||||
@ -3400,8 +3406,8 @@ main::@3: scope:[main] from main::@1
|
||||
call print_str param-assignment
|
||||
to:main::@9
|
||||
main::@9: scope:[main] from main::@3
|
||||
(byte*) print_line_cursor#17 ← phi( main::@3/(byte*) print_line_cursor#18 )
|
||||
(word) rem16u#32 ← phi( main::@3/(word) rem16u#34 )
|
||||
(byte*) print_line_cursor#18 ← phi( main::@3/(byte*) print_line_cursor#19 )
|
||||
(word) rem16u#33 ← phi( main::@3/(word) rem16u#35 )
|
||||
(word) main::wavelength#5 ← phi( main::@3/(word) main::wavelength#7 )
|
||||
(signed word*) main::st1#6 ← phi( main::@3/(signed word*) main::st1#7 )
|
||||
(signed word) main::sw#2 ← phi( main::@3/(signed word) main::sw#3 )
|
||||
@ -3417,11 +3423,11 @@ main::@return: scope:[main] from main::@8
|
||||
(byte*) print_char_cursor#20 ← (byte*) print_char_cursor#40
|
||||
return
|
||||
to:@return
|
||||
@33: scope:[] from @18
|
||||
(byte*) print_screen#6 ← phi( @18/(byte*) print_screen#0 )
|
||||
(byte*) print_char_cursor#50 ← phi( @18/(byte*) print_char_cursor#0 )
|
||||
(byte*) print_line_cursor#12 ← phi( @18/(byte*) print_line_cursor#0 )
|
||||
(word) rem16u#25 ← phi( @18/(word) rem16u#28 )
|
||||
@33: scope:[] from @28
|
||||
(byte*) print_screen#6 ← phi( @28/(byte*) print_screen#7 )
|
||||
(byte*) print_char_cursor#50 ← phi( @28/(byte*) print_char_cursor#55 )
|
||||
(byte*) print_line_cursor#12 ← phi( @28/(byte*) print_line_cursor#15 )
|
||||
(word) rem16u#25 ← phi( @28/(word) rem16u#28 )
|
||||
call main param-assignment
|
||||
to:@34
|
||||
@34: scope:[] from @33
|
||||
@ -3435,9 +3441,11 @@ main::@return: scope:[main] from main::@8
|
||||
@end: scope:[] from @34
|
||||
|
||||
SYMBOL TABLE SSA
|
||||
(const string) $0 = (string) "0123456789abcdef"
|
||||
(label) @12
|
||||
(label) @18
|
||||
(label) @2
|
||||
(label) @28
|
||||
(label) @33
|
||||
(label) @34
|
||||
(label) @begin
|
||||
@ -3690,7 +3698,6 @@ SYMBOL TABLE SSA
|
||||
(void()) print_byte((byte) print_byte::b)
|
||||
(byte~) print_byte::$0
|
||||
(byte~) print_byte::$2
|
||||
(const string) print_byte::$4 = (string) "0123456789abcdef"
|
||||
(label) print_byte::@1
|
||||
(label) print_byte::@2
|
||||
(label) print_byte::@return
|
||||
@ -3699,8 +3706,6 @@ SYMBOL TABLE SSA
|
||||
(byte) print_byte::b#1
|
||||
(byte) print_byte::b#2
|
||||
(byte) print_byte::b#3
|
||||
(byte[]) print_byte::hextab
|
||||
(byte[]) print_byte::hextab#0
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -3760,6 +3765,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_char_cursor#52
|
||||
(byte*) print_char_cursor#53
|
||||
(byte*) print_char_cursor#54
|
||||
(byte*) print_char_cursor#55
|
||||
(byte*) print_char_cursor#6
|
||||
(byte*) print_char_cursor#7
|
||||
(byte*) print_char_cursor#8
|
||||
@ -3774,6 +3780,8 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_cls::sc#0
|
||||
(byte*) print_cls::sc#1
|
||||
(byte*) print_cls::sc#2
|
||||
(byte[]) print_hextab
|
||||
(byte[]) print_hextab#0
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#0
|
||||
(byte*) print_line_cursor#1
|
||||
@ -3786,6 +3794,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_line_cursor#16
|
||||
(byte*) print_line_cursor#17
|
||||
(byte*) print_line_cursor#18
|
||||
(byte*) print_line_cursor#19
|
||||
(byte*) print_line_cursor#2
|
||||
(byte*) print_line_cursor#3
|
||||
(byte*) print_line_cursor#4
|
||||
@ -3802,6 +3811,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_screen#4
|
||||
(byte*) print_screen#5
|
||||
(byte*) print_screen#6
|
||||
(byte*) print_screen#7
|
||||
(void()) print_str((byte*) print_str::str)
|
||||
(boolean~) print_str::$0
|
||||
(label) print_str::@1
|
||||
@ -3871,6 +3881,7 @@ SYMBOL TABLE SSA
|
||||
(word) rem16u#32
|
||||
(word) rem16u#33
|
||||
(word) rem16u#34
|
||||
(word) rem16u#35
|
||||
(word) rem16u#4
|
||||
(word) rem16u#5
|
||||
(word) rem16u#6
|
||||
@ -4137,7 +4148,7 @@ Alias (dword) mul16u::res#2 = (dword) mul16u::res#5 (dword) mul16u::res#4 (dword
|
||||
Alias (word) mul16u::a#0 = (word~) mul16u::$5
|
||||
Alias (dword) mul16u::mb#1 = (dword~) mul16u::$6
|
||||
Alias (dword) mul16u::res#1 = (dword~) mul16u::$4
|
||||
Alias (word) rem16u#0 = (word) rem16u#29 (word) rem16u#28 (word) rem16u#25
|
||||
Alias (word) rem16u#0 = (word) rem16u#31 (word) rem16u#29 (word) rem16u#28 (word) rem16u#25
|
||||
Alias (dword) div32u16u::return#2 = (dword) div32u16u::return#4
|
||||
Alias (signed word*) sin16s_gen::sintab#4 = (signed word*) sin16s_gen::sintab#5
|
||||
Alias (word) sin16s_gen::wavelength#1 = (word) sin16s_gen::wavelength#4
|
||||
@ -4179,7 +4190,7 @@ Alias (signed word) sin16s::sinx#1 = (signed word~) sin16s::$21
|
||||
Alias (dword) mul16u::return#2 = (dword) mul16u::return#4
|
||||
Alias (byte) mulu16_sel::select#5 = (byte) mulu16_sel::select#6
|
||||
Alias (word) mulu16_sel::return#12 = (word) mulu16_sel::return#5 (word~) mulu16_sel::$2 (word) mulu16_sel::return#6
|
||||
Alias (byte*) print_line_cursor#0 = (byte*) print_screen#0 (byte*) print_char_cursor#0 (byte*) print_line_cursor#12 (byte*) print_char_cursor#50 (byte*) print_screen#6
|
||||
Alias (byte*) print_line_cursor#0 = (byte*) print_screen#0 (byte*) print_char_cursor#0 (byte*) print_line_cursor#15 (byte*) print_char_cursor#55 (byte*) print_screen#7 (byte*) print_line_cursor#12 (byte*) print_char_cursor#50 (byte*) print_screen#6
|
||||
Alias (byte*) print_str::str#3 = (byte*) print_str::str#4
|
||||
Alias (byte*) print_char_cursor#2 = (byte*) print_char_cursor#22 (byte*) print_char_cursor#42 (byte*) print_char_cursor#23
|
||||
Alias (word) print_word::w#0 = (word~) print_sword::$4
|
||||
@ -4202,14 +4213,14 @@ Alias (byte*) print_screen#4 = (byte*) print_screen#5
|
||||
Alias (byte*) print_line_cursor#10 = (byte*) print_line_cursor#13
|
||||
Alias (byte*) print_char_cursor#47 = (byte*) print_char_cursor#53
|
||||
Alias (word) main::wavelength#0 = (word) main::wavelength#8 (word) main::wavelength#6
|
||||
Alias (word) rem16u#17 = (word) rem16u#8 (word) rem16u#33
|
||||
Alias (word) rem16u#17 = (word) rem16u#8 (word) rem16u#34
|
||||
Alias (byte*) print_line_cursor#3 = (byte*) print_line_cursor#7
|
||||
Alias (byte*) print_char_cursor#16 = (byte*) print_char_cursor#36
|
||||
Alias (signed word[120]) main::sintab1#0 = (signed word*) main::st1#0
|
||||
Alias (signed word*) main::st1#3 = (signed word*) main::st1#4 (signed word*) main::st1#5
|
||||
Alias (word) main::wavelength#1 = (word) main::wavelength#2 (word) main::wavelength#3
|
||||
Alias (word) rem16u#18 = (word) rem16u#27 (word) rem16u#30 (word) rem16u#24 (word) rem16u#9
|
||||
Alias (byte*) print_line_cursor#11 = (byte*) print_line_cursor#14 (byte*) print_line_cursor#15 (byte*) print_line_cursor#8 (byte*) print_line_cursor#4
|
||||
Alias (byte*) print_line_cursor#11 = (byte*) print_line_cursor#14 (byte*) print_line_cursor#16 (byte*) print_line_cursor#8 (byte*) print_line_cursor#4
|
||||
Alias (byte*) print_char_cursor#17 = (byte*) print_char_cursor#37
|
||||
Alias (byte*) print_char_cursor#18 = (byte*) print_char_cursor#38 (byte*) print_char_cursor#40 (byte*) print_char_cursor#20
|
||||
Alias (signed word*) main::st1#1 = (signed word*~) main::$7
|
||||
@ -4217,8 +4228,8 @@ Alias (byte*) print_char_cursor#49 = (byte*) print_char_cursor#54
|
||||
Alias (signed word) main::sw#0 = (signed word) main::sw#3 (signed word) main::sw#2
|
||||
Alias (signed word*) main::st1#2 = (signed word*) main::st1#7 (signed word*) main::st1#6
|
||||
Alias (word) main::wavelength#4 = (word) main::wavelength#7 (word) main::wavelength#5
|
||||
Alias (word) rem16u#31 = (word) rem16u#34 (word) rem16u#32
|
||||
Alias (byte*) print_line_cursor#16 = (byte*) print_line_cursor#18 (byte*) print_line_cursor#17
|
||||
Alias (word) rem16u#32 = (word) rem16u#35 (word) rem16u#33
|
||||
Alias (byte*) print_line_cursor#17 = (byte*) print_line_cursor#19 (byte*) print_line_cursor#18
|
||||
Alias (byte*) print_char_cursor#19 = (byte*) print_char_cursor#39
|
||||
Alias (word) rem16u#10 = (word) rem16u#19
|
||||
Alias (byte*) print_line_cursor#5 = (byte*) print_line_cursor#9
|
||||
@ -4325,8 +4336,8 @@ Alias (byte) sin16s::isUpper#2 = (byte) sin16s::isUpper#8
|
||||
Alias (signed word) main::sw#0 = (signed word) main::sw#1
|
||||
Alias (signed word*) main::st1#2 = (signed word*) main::st1#3
|
||||
Alias (word) main::wavelength#1 = (word) main::wavelength#4
|
||||
Alias (word) rem16u#18 = (word) rem16u#31
|
||||
Alias (byte*) print_line_cursor#11 = (byte*) print_line_cursor#16
|
||||
Alias (word) rem16u#18 = (word) rem16u#32
|
||||
Alias (byte*) print_line_cursor#11 = (byte*) print_line_cursor#17
|
||||
Succesful SSA optimization Pass2AliasElimination
|
||||
Not aliassing across scopes: divr16u::rem#10 divr16u::rem#3
|
||||
Not aliassing across scopes: divr16u::dividend#5 divr16u::dividend#1
|
||||
@ -4507,7 +4518,7 @@ Constant (const byte) mulu16_sel::select#3 = 0
|
||||
Constant (const byte) mulu16_sel::select#4 = 0
|
||||
Constant (const byte*) print_line_cursor#0 = ((byte*))1024
|
||||
Constant (const byte) print_char::ch#0 = '-'
|
||||
Constant (const string) print_byte::hextab#0 = print_byte::$4
|
||||
Constant (const string) print_hextab#0 = $0
|
||||
Constant (const word) main::wavelength#0 = 120
|
||||
Constant (const signed word[120]) main::sintab1#0 = { fill( 120, 0) }
|
||||
Constant (const string) print_str::str#1 = main::str
|
||||
@ -4543,6 +4554,7 @@ Culled Empty Block (label) @12
|
||||
Culled Empty Block (label) @18
|
||||
Culled Empty Block (label) print_sword::@3
|
||||
Culled Empty Block (label) print_word::@2
|
||||
Culled Empty Block (label) @28
|
||||
Culled Empty Block (label) print_byte::@2
|
||||
Culled Empty Block (label) print_cls::@2
|
||||
Culled Empty Block (label) main::@6
|
||||
@ -4767,6 +4779,7 @@ Constant inlined divr16u::i#0 = (byte/signed byte/word/signed word/dword/signed
|
||||
Constant inlined sin16s_gen::wavelength#0 = (const word) main::wavelength#0
|
||||
Constant inlined div32u16u::dividend#0 = (const dword) PI2_u4f28#0
|
||||
Constant inlined sin16s::isUpper#0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Constant inlined $0 = (const string) print_hextab#0
|
||||
Constant inlined mulu16_sel::select#4 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Constant inlined divr16u::quotient#0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Constant inlined mulu16_sel::select#2 = (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
@ -4788,7 +4801,6 @@ Constant inlined sin16s_gen::x#0 = (byte/signed byte/word/signed word/dword/sign
|
||||
Constant inlined print_str::str#2 = (const string) main::str1
|
||||
Constant inlined div32u16u::divisor#0 = (const word) main::wavelength#0
|
||||
Constant inlined print_str::str#1 = (const string) main::str
|
||||
Constant inlined print_byte::$4 = (const string) print_byte::hextab#0
|
||||
Constant inlined main::$9 = (const signed word[120]) main::sintab1#0+(const word) main::wavelength#0*(byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
Constant inlined main::$8 = (const word) main::wavelength#0*(byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
Succesful SSA optimization Pass2ConstantInlining
|
||||
@ -4869,29 +4881,29 @@ Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Created 38 initial phi equivalence classes
|
||||
Coalesced [11] print_char_cursor#58 ← print_char_cursor#49
|
||||
Coalesced [13] print_char_cursor#57 ← print_char_cursor#2
|
||||
Coalesced [17] print_char_cursor#59 ← print_char_cursor#12
|
||||
Coalesced [11] print_char_cursor#59 ← print_char_cursor#49
|
||||
Coalesced [13] print_char_cursor#58 ← print_char_cursor#2
|
||||
Coalesced [17] print_char_cursor#60 ← print_char_cursor#12
|
||||
Coalesced [22] main::st1#8 ← main::st1#1
|
||||
Coalesced [23] print_char_cursor#55 ← print_char_cursor#2
|
||||
Coalesced (already) [24] print_char_cursor#56 ← print_char_cursor#49
|
||||
Coalesced [23] print_char_cursor#56 ← print_char_cursor#2
|
||||
Coalesced (already) [24] print_char_cursor#57 ← print_char_cursor#49
|
||||
Coalesced [26] print_str::str#6 ← print_str::str#5
|
||||
Coalesced (already) [27] print_char_cursor#60 ← print_char_cursor#51
|
||||
Coalesced (already) [27] print_char_cursor#61 ← print_char_cursor#51
|
||||
Coalesced [34] print_str::str#7 ← print_str::str#0
|
||||
Coalesced [35] print_char_cursor#61 ← print_char_cursor#1
|
||||
Coalesced [37] print_char_cursor#68 ← print_char_cursor#48
|
||||
Coalesced [35] print_char_cursor#62 ← print_char_cursor#1
|
||||
Coalesced [37] print_char_cursor#69 ← print_char_cursor#48
|
||||
Coalesced [40] print_sword::w#7 ← print_sword::w#0
|
||||
Coalesced [41] print_char_cursor#63 ← print_char_cursor#12
|
||||
Coalesced [41] print_char_cursor#64 ← print_char_cursor#12
|
||||
Coalesced [45] print_sword::w#6 ← print_sword::w#1
|
||||
Coalesced (already) [46] print_char_cursor#62 ← print_char_cursor#48
|
||||
Coalesced (already) [46] print_char_cursor#63 ← print_char_cursor#48
|
||||
Coalesced [48] print_byte::b#4 ← print_byte::b#0
|
||||
Coalesced [49] print_char_cursor#64 ← print_char_cursor#43
|
||||
Coalesced [49] print_char_cursor#65 ← print_char_cursor#43
|
||||
Coalesced [52] print_byte::b#5 ← print_byte::b#1
|
||||
Coalesced (already) [53] print_char_cursor#65 ← print_char_cursor#12
|
||||
Coalesced (already) [53] print_char_cursor#66 ← print_char_cursor#12
|
||||
Coalesced [59] print_char::ch#4 ← print_char::ch#1
|
||||
Coalesced (already) [60] print_char_cursor#66 ← print_char_cursor#46
|
||||
Coalesced (already) [60] print_char_cursor#67 ← print_char_cursor#46
|
||||
Coalesced [64] print_char::ch#5 ← print_char::ch#2
|
||||
Coalesced (already) [65] print_char_cursor#67 ← print_char_cursor#12
|
||||
Coalesced (already) [65] print_char_cursor#68 ← print_char_cursor#12
|
||||
Coalesced [78] print_cls::sc#3 ← print_cls::sc#1
|
||||
Coalesced [94] sin16s_gen::x#4 ← sin16s_gen::x#1
|
||||
Coalesced [95] sin16s_gen::sintab#6 ← sin16s_gen::sintab#0
|
||||
@ -5082,12 +5094,12 @@ print_byte: scope:[print_byte] from print_word print_word::@1
|
||||
[40] (byte*) print_char_cursor#46 ← phi( print_word/(byte*) print_char_cursor#43 print_word::@1/(byte*) print_char_cursor#12 ) [ print_byte::b#2 print_char_cursor#46 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_byte::b#2 print_char_cursor#46 ] )
|
||||
[40] (byte) print_byte::b#2 ← phi( print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) [ print_byte::b#2 print_char_cursor#46 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_byte::b#2 print_char_cursor#46 ] )
|
||||
[41] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#2 print_char_cursor#46 print_byte::$0 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] )
|
||||
[42] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] )
|
||||
[42] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] )
|
||||
[43] call print_char param-assignment [ print_char_cursor#12 print_byte::b#2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_byte::b#2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_byte::b#2 ] )
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
[44] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#12 print_byte::$2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_byte::$2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_byte::$2 ] )
|
||||
[45] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_char::ch#2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_char::ch#2 ] )
|
||||
[45] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_char::ch#2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_char::ch#2 ] )
|
||||
[46] call print_char param-assignment [ print_char_cursor#12 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 ] )
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte::@1
|
||||
@ -5534,7 +5546,6 @@ VARIABLE REGISTER WEIGHTS
|
||||
(byte) print_byte::b#0 4.0
|
||||
(byte) print_byte::b#1 4.0
|
||||
(byte) print_byte::b#2 2.0
|
||||
(byte[]) print_byte::hextab
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(byte) print_char::ch
|
||||
(byte) print_char::ch#1 4.0
|
||||
@ -5554,6 +5565,7 @@ VARIABLE REGISTER WEIGHTS
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 16.5
|
||||
(byte*) print_cls::sc#2 16.5
|
||||
(byte[]) print_hextab
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_screen
|
||||
(void()) print_str((byte*) print_str::str)
|
||||
@ -6079,9 +6091,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
sta _0
|
||||
//SEG92 [42] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
//SEG92 [42] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
ldy _0
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
sta print_char.ch
|
||||
//SEG93 [43] call print_char param-assignment [ print_char_cursor#12 print_byte::b#2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_byte::b#2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_byte::b#2 ] )
|
||||
//SEG94 [48] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
@ -6096,9 +6108,9 @@ print_byte: {
|
||||
lda #$f
|
||||
and b
|
||||
sta _2
|
||||
//SEG99 [45] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_char::ch#2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_char::ch#2 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
//SEG99 [45] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_char::ch#2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_char::ch#2 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
ldy _2
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
sta print_char.ch
|
||||
//SEG100 [46] call print_char param-assignment [ print_char_cursor#12 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 ] )
|
||||
//SEG101 [48] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
@ -6111,7 +6123,6 @@ print_byte: {
|
||||
breturn:
|
||||
//SEG105 [47] return [ print_char_cursor#12 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG106 print_char
|
||||
print_char: {
|
||||
@ -7028,6 +7039,7 @@ divr16u: {
|
||||
//SEG322 [159] return [ divr16u::return#0 rem16u#1 ] ( main:2::sin16s_gen:5::div32u16u:59::divr16u:133 [ divr16u::return#0 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:59::divr16u:137 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] )
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
REGISTER UPLIFT POTENTIAL REGISTERS
|
||||
Statement [9] (signed word) main::sw#0 ← *((signed word*) main::st1#2) [ main::st1#2 print_char_cursor#49 main::sw#0 ] ( main:2 [ main::st1#2 print_char_cursor#49 main::sw#0 ] ) always clobbers reg byte a reg byte y
|
||||
@ -7599,9 +7611,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
//SEG92 [42] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG92 [42] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG93 [43] call print_char param-assignment [ print_char_cursor#12 print_byte::b#2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_byte::b#2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_byte::b#2 ] )
|
||||
//SEG94 [48] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
print_char_from_print_byte:
|
||||
@ -7614,9 +7626,9 @@ print_byte: {
|
||||
//SEG98 [44] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#12 print_byte::$2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_byte::$2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_byte::$2 ] ) -- vbuaa=vbuxx_band_vbuc1
|
||||
txa
|
||||
and #$f
|
||||
//SEG99 [45] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_char::ch#2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG99 [45] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_char::ch#2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG100 [46] call print_char param-assignment [ print_char_cursor#12 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 ] )
|
||||
//SEG101 [48] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
print_char_from_b1:
|
||||
@ -7628,7 +7640,6 @@ print_byte: {
|
||||
breturn:
|
||||
//SEG105 [47] return [ print_char_cursor#12 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG106 print_char
|
||||
print_char: {
|
||||
@ -8410,6 +8421,7 @@ divr16u: {
|
||||
//SEG322 [159] return [ divr16u::return#0 rem16u#1 ] ( main:2::sin16s_gen:5::div32u16u:59::divr16u:133 [ divr16u::return#0 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:59::divr16u:137 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] )
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
ASSEMBLER OPTIMIZATIONS
|
||||
Removing instruction jmp b33
|
||||
@ -8744,8 +8756,6 @@ FINAL SYMBOL TABLE
|
||||
(byte) print_byte::b#0 reg byte x 4.0
|
||||
(byte) print_byte::b#1 reg byte x 4.0
|
||||
(byte) print_byte::b#2 reg byte x 2.0
|
||||
(byte[]) print_byte::hextab
|
||||
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -8768,6 +8778,8 @@ FINAL SYMBOL TABLE
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 sc zp ZP_WORD:2 16.5
|
||||
(byte*) print_cls::sc#2 sc zp ZP_WORD:2 16.5
|
||||
(byte[]) print_hextab
|
||||
(const string) print_hextab#0 print_hextab = (string) "0123456789abcdef"
|
||||
(byte*) print_line_cursor
|
||||
(const byte*) print_line_cursor#0 print_line_cursor = ((byte*))(word/signed word/dword/signed dword) 1024
|
||||
(byte*) print_screen
|
||||
@ -9097,9 +9109,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
//SEG92 [42] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG92 [42] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG93 [43] call print_char param-assignment [ print_char_cursor#12 print_byte::b#2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_byte::b#2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_byte::b#2 ] )
|
||||
//SEG94 [48] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
//SEG95 [48] phi (byte*) print_char_cursor#33 = (byte*) print_char_cursor#46 [phi:print_byte->print_char#0] -- register_copy
|
||||
@ -9109,9 +9121,9 @@ print_byte: {
|
||||
//SEG98 [44] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#12 print_byte::$2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_byte::$2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_byte::$2 ] ) -- vbuaa=vbuxx_band_vbuc1
|
||||
txa
|
||||
and #$f
|
||||
//SEG99 [45] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_char::ch#2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG99 [45] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_char::ch#2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG100 [46] call print_char param-assignment [ print_char_cursor#12 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 ] )
|
||||
//SEG101 [48] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
//SEG102 [48] phi (byte*) print_char_cursor#33 = (byte*) print_char_cursor#12 [phi:print_byte::@1->print_char#0] -- register_copy
|
||||
@ -9120,7 +9132,6 @@ print_byte: {
|
||||
//SEG104 print_byte::@return
|
||||
//SEG105 [47] return [ print_char_cursor#12 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG106 print_char
|
||||
print_char: {
|
||||
@ -9804,4 +9815,5 @@ divr16u: {
|
||||
//SEG322 [159] return [ divr16u::return#0 rem16u#1 ] ( main:2::sin16s_gen:5::div32u16u:59::divr16u:133 [ divr16u::return#0 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:59::divr16u:137 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] )
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
|
@ -135,8 +135,6 @@
|
||||
(byte) print_byte::b#0 reg byte x 4.0
|
||||
(byte) print_byte::b#1 reg byte x 4.0
|
||||
(byte) print_byte::b#2 reg byte x 2.0
|
||||
(byte[]) print_byte::hextab
|
||||
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -159,6 +157,8 @@
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 sc zp ZP_WORD:2 16.5
|
||||
(byte*) print_cls::sc#2 sc zp ZP_WORD:2 16.5
|
||||
(byte[]) print_hextab
|
||||
(const string) print_hextab#0 print_hextab = (string) "0123456789abcdef"
|
||||
(byte*) print_line_cursor
|
||||
(const byte*) print_line_cursor#0 print_line_cursor = ((byte*))(word/signed word/dword/signed dword) 1024
|
||||
(byte*) print_screen
|
||||
|
@ -135,15 +135,14 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
lda #$f
|
||||
and b
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
print_char: {
|
||||
ldy #0
|
||||
@ -810,3 +809,4 @@ sin16s: {
|
||||
b3:
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
@ -99,12 +99,12 @@ print_byte: scope:[print_byte] from print_word print_word::@1
|
||||
[44] (byte*) print_char_cursor#46 ← phi( print_word/(byte*) print_char_cursor#43 print_word::@1/(byte*) print_char_cursor#12 ) [ print_byte::b#2 print_char_cursor#46 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#46 ] )
|
||||
[44] (byte) print_byte::b#2 ← phi( print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) [ print_byte::b#2 print_char_cursor#46 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#46 ] )
|
||||
[45] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#2 print_char_cursor#46 print_byte::$0 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] )
|
||||
[46] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] )
|
||||
[46] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] )
|
||||
[47] call print_char param-assignment [ print_char_cursor#12 print_byte::b#2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_byte::b#2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_byte::b#2 ] )
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
[48] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#12 print_byte::$2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_byte::$2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_byte::$2 ] )
|
||||
[49] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_char::ch#2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_char::ch#2 ] )
|
||||
[49] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_char::ch#2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_char::ch#2 ] )
|
||||
[50] call print_char param-assignment [ print_char_cursor#12 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 ] )
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte::@1
|
||||
|
@ -523,12 +523,13 @@ void print_sdword(signed dword dw) {
|
||||
print_dword((dword)dw);
|
||||
}
|
||||
|
||||
const byte[] print_hextab = "0123456789abcdef";
|
||||
|
||||
// Print a byte as HEX
|
||||
void print_byte(byte b) {
|
||||
// Table of hexadecimal digits
|
||||
const byte[] hextab = "0123456789abcdef";
|
||||
print_char(hextab[b>>4]);
|
||||
print_char(hextab[b&$f]);
|
||||
print_char(print_hextab[b>>4]);
|
||||
print_char(print_hextab[b&$f]);
|
||||
}
|
||||
|
||||
// Print a single char
|
||||
@ -1265,12 +1266,12 @@ print_sdword::@1:
|
||||
print_sdword::@return:
|
||||
return
|
||||
endproc // print_sdword()
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
proc (void()) print_byte((byte) print_byte::b)
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
print_byte::@return:
|
||||
return
|
||||
endproc // print_byte()
|
||||
@ -1627,7 +1628,6 @@ SYMBOLS
|
||||
(void~) print_byte::$3
|
||||
(label) print_byte::@return
|
||||
(byte) print_byte::b
|
||||
(byte[]) print_byte::hextab
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -1645,6 +1645,7 @@ SYMBOLS
|
||||
(void~) print_dword::$3
|
||||
(label) print_dword::@return
|
||||
(dword) print_dword::dw
|
||||
(byte[]) print_hextab
|
||||
(byte*) print_line_cursor
|
||||
(void()) print_ln()
|
||||
(byte*~) print_ln::$0
|
||||
@ -2877,13 +2878,13 @@ print_sdword::@return: scope:[print_sdword] from print_sdword::@1
|
||||
return
|
||||
to:@return
|
||||
@30: scope:[] from @29
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
to:@31
|
||||
print_byte: scope:[print_byte] from
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte
|
||||
return
|
||||
@ -3006,7 +3007,7 @@ Eliminating unused variable - keeping the call (void~) main::$2
|
||||
Eliminating unused variable - keeping the call (void~) main::$7
|
||||
Eliminating unused variable - keeping the call (void~) main::$8
|
||||
Eliminating unused variable - keeping the call (void~) main::$6
|
||||
Creating constant string variable for inline (const string) print_byte::$4 "0123456789abcdef"
|
||||
Creating constant string variable for inline (const string) $0 "0123456789abcdef"
|
||||
Creating constant string variable for inline (const string) main::str " @"
|
||||
Creating constant string variable for inline (const string) main::str1 " @"
|
||||
Removing empty block @1
|
||||
@ -3050,7 +3051,6 @@ Removing empty block @26
|
||||
Removing empty block @27
|
||||
Removing empty block @28
|
||||
Removing empty block @29
|
||||
Removing empty block @30
|
||||
Removing empty block @31
|
||||
Removing empty block @32
|
||||
Removing empty block @33
|
||||
@ -3254,7 +3254,7 @@ mul16u::@return: scope:[mul16u] from mul16u::@3
|
||||
return
|
||||
to:@return
|
||||
@12: scope:[] from @2
|
||||
(word) rem16u#38 ← phi( @2/(word) rem16u#0 )
|
||||
(word) rem16u#40 ← phi( @2/(word) rem16u#0 )
|
||||
(dword) PI2_u4f28#0 ← (dword/signed dword) 1686629713
|
||||
(dword) PI_u4f28#0 ← (dword/signed dword) 843314857
|
||||
(dword) PI_HALF_u4f28#0 ← (dword/signed dword) 421657428
|
||||
@ -3636,11 +3636,11 @@ sin16sb::@return: scope:[sin16sb] from sin16sb::@3
|
||||
return
|
||||
to:@return
|
||||
@20: scope:[] from @12
|
||||
(word) rem16u#37 ← phi( @12/(word) rem16u#38 )
|
||||
(word) rem16u#38 ← phi( @12/(word) rem16u#40 )
|
||||
(byte*) print_screen#0 ← ((byte*)) (word/signed word/dword/signed dword) 1024
|
||||
(byte*) print_line_cursor#0 ← (byte*) print_screen#0
|
||||
(byte*) print_char_cursor#0 ← (byte*) print_line_cursor#0
|
||||
to:@35
|
||||
to:@30
|
||||
print_str: scope:[print_str] from main::@3 main::@8
|
||||
(byte*) print_char_cursor#51 ← phi( main::@3/(byte*) print_char_cursor#49 main::@8/(byte*) print_char_cursor#17 )
|
||||
(byte*) print_str::str#5 ← phi( main::@3/(byte*) print_str::str#2 main::@8/(byte*) print_str::str#1 )
|
||||
@ -3723,12 +3723,18 @@ print_word::@return: scope:[print_word] from print_word::@2
|
||||
(byte*) print_char_cursor#8 ← (byte*) print_char_cursor#29
|
||||
return
|
||||
to:@return
|
||||
@30: scope:[] from @20
|
||||
(byte*) print_screen#8 ← phi( @20/(byte*) print_screen#0 )
|
||||
(byte*) print_char_cursor#55 ← phi( @20/(byte*) print_char_cursor#0 )
|
||||
(byte*) print_line_cursor#15 ← phi( @20/(byte*) print_line_cursor#0 )
|
||||
(word) rem16u#37 ← phi( @20/(word) rem16u#38 )
|
||||
(byte[]) print_hextab#0 ← (const string) $0
|
||||
to:@35
|
||||
print_byte: scope:[print_byte] from print_word print_word::@1
|
||||
(byte*) print_char_cursor#46 ← phi( print_word/(byte*) print_char_cursor#45 print_word::@1/(byte*) print_char_cursor#6 )
|
||||
(byte) print_byte::b#2 ← phi( print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 )
|
||||
(byte[]) print_byte::hextab#0 ← (const string) print_byte::$4
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(byte) print_char::ch#1 ← *((byte[]) print_byte::hextab#0 + (byte~) print_byte::$0)
|
||||
(byte) print_char::ch#1 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$0)
|
||||
call print_char param-assignment
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
@ -3736,7 +3742,7 @@ print_byte::@1: scope:[print_byte] from print_byte
|
||||
(byte*) print_char_cursor#30 ← phi( print_byte/(byte*) print_char_cursor#13 )
|
||||
(byte*) print_char_cursor#9 ← (byte*) print_char_cursor#30
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b#3 & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(byte) print_char::ch#2 ← *((byte[]) print_byte::hextab#0 + (byte~) print_byte::$2)
|
||||
(byte) print_char::ch#2 ← *((byte[]) print_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
|
||||
@ -3785,8 +3791,8 @@ print_cls::@return: scope:[print_cls] from print_cls::@2
|
||||
return
|
||||
to:@return
|
||||
main: scope:[main] from @35
|
||||
(byte*) print_char_cursor#55 ← phi( @35/(byte*) print_char_cursor#50 )
|
||||
(byte*) print_line_cursor#15 ← phi( @35/(byte*) print_line_cursor#12 )
|
||||
(byte*) print_char_cursor#56 ← phi( @35/(byte*) print_char_cursor#50 )
|
||||
(byte*) print_line_cursor#16 ← phi( @35/(byte*) print_line_cursor#12 )
|
||||
(byte*) print_screen#6 ← phi( @35/(byte*) print_screen#7 )
|
||||
(word) rem16u#31 ← phi( @35/(word) rem16u#33 )
|
||||
(word) main::wavelength#0 ← (byte/signed byte/word/signed word/dword/signed dword) 120
|
||||
@ -3797,8 +3803,8 @@ main: scope:[main] from @35
|
||||
call sin16s_gen param-assignment
|
||||
to:main::@5
|
||||
main::@5: scope:[main] from main
|
||||
(byte*) print_char_cursor#53 ← phi( main/(byte*) print_char_cursor#55 )
|
||||
(byte*) print_line_cursor#13 ← phi( main/(byte*) print_line_cursor#15 )
|
||||
(byte*) print_char_cursor#53 ← phi( main/(byte*) print_char_cursor#56 )
|
||||
(byte*) print_line_cursor#13 ← phi( main/(byte*) print_line_cursor#16 )
|
||||
(byte*) print_screen#5 ← phi( main/(byte*) print_screen#6 )
|
||||
(word) main::wavelength#1 ← phi( main/(word) main::wavelength#0 )
|
||||
(word) rem16u#22 ← phi( main/(word) rem16u#7 )
|
||||
@ -3816,7 +3822,7 @@ main::@6: scope:[main] from main::@5
|
||||
call print_cls param-assignment
|
||||
to:main::@7
|
||||
main::@7: scope:[main] from main::@6
|
||||
(word) rem16u#42 ← phi( main::@6/(word) rem16u#11 )
|
||||
(word) rem16u#43 ← phi( main::@6/(word) rem16u#11 )
|
||||
(byte*) print_char_cursor#36 ← phi( main::@6/(byte*) print_char_cursor#15 )
|
||||
(byte*) print_line_cursor#7 ← phi( main::@6/(byte*) print_line_cursor#2 )
|
||||
(byte*) print_line_cursor#3 ← (byte*) print_line_cursor#7
|
||||
@ -3826,8 +3832,8 @@ main::@7: scope:[main] from main::@6
|
||||
(byte) main::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
to:main::@1
|
||||
main::@1: scope:[main] from main::@7 main::@9
|
||||
(byte*) print_line_cursor#17 ← phi( main::@7/(byte*) print_line_cursor#3 main::@9/(byte*) print_line_cursor#11 )
|
||||
(word) rem16u#40 ← phi( main::@7/(word) rem16u#42 main::@9/(word) rem16u#32 )
|
||||
(byte*) print_line_cursor#18 ← phi( main::@7/(byte*) print_line_cursor#3 main::@9/(byte*) print_line_cursor#11 )
|
||||
(word) rem16u#41 ← phi( main::@7/(word) rem16u#43 main::@9/(word) rem16u#32 )
|
||||
(byte) main::i#5 ← phi( main::@7/(byte) main::i#0 main::@9/(byte) main::i#1 )
|
||||
(byte*) print_char_cursor#54 ← phi( main::@7/(byte*) print_char_cursor#16 main::@9/(byte*) print_char_cursor#18 )
|
||||
(signed word*) main::st2#2 ← phi( main::@7/(signed word*) main::st2#0 main::@9/(signed word*) main::st2#1 )
|
||||
@ -3839,8 +3845,8 @@ main::@1: scope:[main] from main::@7 main::@9
|
||||
if((boolean~) main::$5) goto main::@2
|
||||
to:main::@3
|
||||
main::@2: scope:[main] from main::@1 main::@10
|
||||
(byte*) print_line_cursor#16 ← phi( main::@1/(byte*) print_line_cursor#17 main::@10/(byte*) print_line_cursor#18 )
|
||||
(word) rem16u#39 ← phi( main::@1/(word) rem16u#40 main::@10/(word) rem16u#41 )
|
||||
(byte*) print_line_cursor#17 ← phi( main::@1/(byte*) print_line_cursor#18 main::@10/(byte*) print_line_cursor#19 )
|
||||
(word) rem16u#39 ← phi( main::@1/(word) rem16u#41 main::@10/(word) rem16u#42 )
|
||||
(byte) main::i#4 ← phi( main::@1/(byte) main::i#5 main::@10/(byte) main::i#6 )
|
||||
(signed word*) main::st2#5 ← phi( main::@1/(signed word*) main::st2#2 main::@10/(signed word*) main::st2#6 )
|
||||
(signed word*) main::st1#5 ← phi( main::@1/(signed word*) main::st1#2 main::@10/(signed word*) main::st1#6 )
|
||||
@ -3850,7 +3856,7 @@ main::@2: scope:[main] from main::@1 main::@10
|
||||
call print_sword param-assignment
|
||||
to:main::@8
|
||||
main::@8: scope:[main] from main::@2
|
||||
(byte*) print_line_cursor#14 ← phi( main::@2/(byte*) print_line_cursor#16 )
|
||||
(byte*) print_line_cursor#14 ← phi( main::@2/(byte*) print_line_cursor#17 )
|
||||
(word) rem16u#36 ← phi( main::@2/(word) rem16u#39 )
|
||||
(byte) main::i#3 ← phi( main::@2/(byte) main::i#4 )
|
||||
(signed word*) main::st2#4 ← phi( main::@2/(signed word*) main::st2#5 )
|
||||
@ -3877,8 +3883,8 @@ main::@9: scope:[main] from main::@8
|
||||
if((boolean~) main::$11) goto main::@1
|
||||
to:main::@return
|
||||
main::@3: scope:[main] from main::@1
|
||||
(byte*) print_line_cursor#19 ← phi( main::@1/(byte*) print_line_cursor#17 )
|
||||
(word) rem16u#43 ← phi( main::@1/(word) rem16u#40 )
|
||||
(byte*) print_line_cursor#20 ← phi( main::@1/(byte*) print_line_cursor#18 )
|
||||
(word) rem16u#44 ← phi( main::@1/(word) rem16u#41 )
|
||||
(byte) main::i#7 ← phi( main::@1/(byte) main::i#5 )
|
||||
(signed word*) main::st2#7 ← phi( main::@1/(signed word*) main::st2#2 )
|
||||
(signed word*) main::st1#7 ← phi( main::@1/(signed word*) main::st1#2 )
|
||||
@ -3888,8 +3894,8 @@ main::@3: scope:[main] from main::@1
|
||||
call print_str param-assignment
|
||||
to:main::@10
|
||||
main::@10: scope:[main] from main::@3
|
||||
(byte*) print_line_cursor#18 ← phi( main::@3/(byte*) print_line_cursor#19 )
|
||||
(word) rem16u#41 ← phi( main::@3/(word) rem16u#43 )
|
||||
(byte*) print_line_cursor#19 ← phi( main::@3/(byte*) print_line_cursor#20 )
|
||||
(word) rem16u#42 ← phi( main::@3/(word) rem16u#44 )
|
||||
(byte) main::i#6 ← phi( main::@3/(byte) main::i#7 )
|
||||
(signed word*) main::st2#6 ← phi( main::@3/(signed word*) main::st2#7 )
|
||||
(signed word*) main::st1#6 ← phi( main::@3/(signed word*) main::st1#7 )
|
||||
@ -3906,11 +3912,11 @@ main::@return: scope:[main] from main::@9
|
||||
(byte*) print_char_cursor#20 ← (byte*) print_char_cursor#40
|
||||
return
|
||||
to:@return
|
||||
@35: scope:[] from @20
|
||||
(byte*) print_screen#7 ← phi( @20/(byte*) print_screen#0 )
|
||||
(byte*) print_char_cursor#50 ← phi( @20/(byte*) print_char_cursor#0 )
|
||||
(byte*) print_line_cursor#12 ← phi( @20/(byte*) print_line_cursor#0 )
|
||||
(word) rem16u#33 ← phi( @20/(word) rem16u#37 )
|
||||
@35: scope:[] from @30
|
||||
(byte*) print_screen#7 ← phi( @30/(byte*) print_screen#8 )
|
||||
(byte*) print_char_cursor#50 ← phi( @30/(byte*) print_char_cursor#55 )
|
||||
(byte*) print_line_cursor#12 ← phi( @30/(byte*) print_line_cursor#15 )
|
||||
(word) rem16u#33 ← phi( @30/(word) rem16u#37 )
|
||||
call main param-assignment
|
||||
to:@36
|
||||
@36: scope:[] from @35
|
||||
@ -3924,9 +3930,11 @@ main::@return: scope:[main] from main::@9
|
||||
@end: scope:[] from @36
|
||||
|
||||
SYMBOL TABLE SSA
|
||||
(const string) $0 = (string) "0123456789abcdef"
|
||||
(label) @12
|
||||
(label) @2
|
||||
(label) @20
|
||||
(label) @30
|
||||
(label) @35
|
||||
(label) @36
|
||||
(label) @begin
|
||||
@ -4226,7 +4234,6 @@ SYMBOL TABLE SSA
|
||||
(void()) print_byte((byte) print_byte::b)
|
||||
(byte~) print_byte::$0
|
||||
(byte~) print_byte::$2
|
||||
(const string) print_byte::$4 = (string) "0123456789abcdef"
|
||||
(label) print_byte::@1
|
||||
(label) print_byte::@2
|
||||
(label) print_byte::@return
|
||||
@ -4235,8 +4242,6 @@ SYMBOL TABLE SSA
|
||||
(byte) print_byte::b#1
|
||||
(byte) print_byte::b#2
|
||||
(byte) print_byte::b#3
|
||||
(byte[]) print_byte::hextab
|
||||
(byte[]) print_byte::hextab#0
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -4297,6 +4302,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_char_cursor#53
|
||||
(byte*) print_char_cursor#54
|
||||
(byte*) print_char_cursor#55
|
||||
(byte*) print_char_cursor#56
|
||||
(byte*) print_char_cursor#6
|
||||
(byte*) print_char_cursor#7
|
||||
(byte*) print_char_cursor#8
|
||||
@ -4311,6 +4317,8 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_cls::sc#0
|
||||
(byte*) print_cls::sc#1
|
||||
(byte*) print_cls::sc#2
|
||||
(byte[]) print_hextab
|
||||
(byte[]) print_hextab#0
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#0
|
||||
(byte*) print_line_cursor#1
|
||||
@ -4325,6 +4333,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_line_cursor#18
|
||||
(byte*) print_line_cursor#19
|
||||
(byte*) print_line_cursor#2
|
||||
(byte*) print_line_cursor#20
|
||||
(byte*) print_line_cursor#3
|
||||
(byte*) print_line_cursor#4
|
||||
(byte*) print_line_cursor#5
|
||||
@ -4341,6 +4350,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_screen#5
|
||||
(byte*) print_screen#6
|
||||
(byte*) print_screen#7
|
||||
(byte*) print_screen#8
|
||||
(void()) print_str((byte*) print_str::str)
|
||||
(boolean~) print_str::$0
|
||||
(label) print_str::@1
|
||||
@ -4420,6 +4430,7 @@ SYMBOL TABLE SSA
|
||||
(word) rem16u#41
|
||||
(word) rem16u#42
|
||||
(word) rem16u#43
|
||||
(word) rem16u#44
|
||||
(word) rem16u#5
|
||||
(word) rem16u#6
|
||||
(word) rem16u#7
|
||||
@ -4799,8 +4810,8 @@ Not aliassing across scopes: print_screen#1 print_screen#4
|
||||
Not aliassing across scopes: print_cls::sc#0 print_screen#1
|
||||
Not aliassing across scopes: rem16u#31 rem16u#33
|
||||
Not aliassing across scopes: print_screen#6 print_screen#7
|
||||
Not aliassing across scopes: print_line_cursor#15 print_line_cursor#12
|
||||
Not aliassing across scopes: print_char_cursor#55 print_char_cursor#50
|
||||
Not aliassing across scopes: print_line_cursor#16 print_line_cursor#12
|
||||
Not aliassing across scopes: print_char_cursor#56 print_char_cursor#50
|
||||
Not aliassing across scopes: sin16s_gen::sintab#1 main::sintab1#0
|
||||
Not aliassing across scopes: sin16s_gen::wavelength#0 main::wavelength#0
|
||||
Not aliassing across scopes: rem16u#22 rem16u#7
|
||||
@ -4848,7 +4859,7 @@ Alias (dword) mul16u::res#2 = (dword) mul16u::res#5 (dword) mul16u::res#4 (dword
|
||||
Alias (word) mul16u::a#0 = (word~) mul16u::$5
|
||||
Alias (dword) mul16u::mb#1 = (dword~) mul16u::$6
|
||||
Alias (dword) mul16u::res#1 = (dword~) mul16u::$4
|
||||
Alias (word) rem16u#0 = (word) rem16u#38 (word) rem16u#37 (word) rem16u#33
|
||||
Alias (word) rem16u#0 = (word) rem16u#40 (word) rem16u#38 (word) rem16u#37 (word) rem16u#33
|
||||
Alias (dword) div32u16u::return#2 = (dword) div32u16u::return#5
|
||||
Alias (signed word*) sin16s_gen::sintab#4 = (signed word*) sin16s_gen::sintab#5
|
||||
Alias (word) sin16s_gen::wavelength#1 = (word) sin16s_gen::wavelength#4
|
||||
@ -4929,7 +4940,7 @@ Alias (byte) sin16sb::isUpper#8 = (byte) sin16sb::isUpper#9
|
||||
Alias (word) sin16sb::x#2 = (word~) sin16sb::$5
|
||||
Alias (signed word) sin16sb::return#1 = (signed word) sin16sb::sinx#2 (signed word) sin16sb::return#4 (signed word) sin16sb::return#2
|
||||
Alias (signed word) sin16sb::sinx#1 = (signed word~) sin16sb::$20
|
||||
Alias (byte*) print_line_cursor#0 = (byte*) print_screen#0 (byte*) print_char_cursor#0 (byte*) print_line_cursor#12 (byte*) print_char_cursor#50 (byte*) print_screen#7
|
||||
Alias (byte*) print_line_cursor#0 = (byte*) print_screen#0 (byte*) print_char_cursor#0 (byte*) print_line_cursor#15 (byte*) print_char_cursor#55 (byte*) print_screen#8 (byte*) print_line_cursor#12 (byte*) print_char_cursor#50 (byte*) print_screen#7
|
||||
Alias (byte*) print_str::str#3 = (byte*) print_str::str#4
|
||||
Alias (byte*) print_char_cursor#2 = (byte*) print_char_cursor#22 (byte*) print_char_cursor#42 (byte*) print_char_cursor#23
|
||||
Alias (word) print_word::w#0 = (word~) print_sword::$4
|
||||
@ -4950,10 +4961,10 @@ Alias (byte*) print_char_cursor#12 = (byte*) print_char_cursor#34 (byte*) print_
|
||||
Alias (byte*) print_line_cursor#1 = (byte*) print_screen#3 (byte*) print_screen#2 (byte*) print_char_cursor#14 (byte*) print_line_cursor#6 (byte*) print_char_cursor#35 (byte*) print_line_cursor#2 (byte*) print_char_cursor#15
|
||||
Alias (word) main::wavelength#0 = (word) main::wavelength#1
|
||||
Alias (byte*) print_screen#4 = (byte*) print_screen#5 (byte*) print_screen#6
|
||||
Alias (byte*) print_line_cursor#10 = (byte*) print_line_cursor#13 (byte*) print_line_cursor#15
|
||||
Alias (byte*) print_char_cursor#47 = (byte*) print_char_cursor#53 (byte*) print_char_cursor#55
|
||||
Alias (byte*) print_line_cursor#10 = (byte*) print_line_cursor#13 (byte*) print_line_cursor#16
|
||||
Alias (byte*) print_char_cursor#47 = (byte*) print_char_cursor#53 (byte*) print_char_cursor#56
|
||||
Alias (word) rem16u#10 = (word) rem16u#22
|
||||
Alias (word) rem16u#11 = (word) rem16u#23 (word) rem16u#42
|
||||
Alias (word) rem16u#11 = (word) rem16u#23 (word) rem16u#43
|
||||
Alias (byte*) print_line_cursor#3 = (byte*) print_line_cursor#7
|
||||
Alias (byte*) print_char_cursor#16 = (byte*) print_char_cursor#36
|
||||
Alias (signed word[120]) main::sintab1#0 = (signed word*) main::st1#0
|
||||
@ -4963,7 +4974,7 @@ Alias (signed word*) main::st1#3 = (signed word*) main::st1#4 (signed word*) mai
|
||||
Alias (signed word*) main::st2#3 = (signed word*) main::st2#4 (signed word*) main::st2#5
|
||||
Alias (byte) main::i#2 = (byte) main::i#3 (byte) main::i#4
|
||||
Alias (word) rem16u#12 = (word) rem16u#36 (word) rem16u#39 (word) rem16u#32 (word) rem16u#24
|
||||
Alias (byte*) print_line_cursor#11 = (byte*) print_line_cursor#14 (byte*) print_line_cursor#16 (byte*) print_line_cursor#8 (byte*) print_line_cursor#4
|
||||
Alias (byte*) print_line_cursor#11 = (byte*) print_line_cursor#14 (byte*) print_line_cursor#17 (byte*) print_line_cursor#8 (byte*) print_line_cursor#4
|
||||
Alias (byte*) print_char_cursor#17 = (byte*) print_char_cursor#37
|
||||
Alias (byte*) print_char_cursor#18 = (byte*) print_char_cursor#38 (byte*) print_char_cursor#40 (byte*) print_char_cursor#20
|
||||
Alias (signed word*) main::st1#1 = (signed word*~) main::$9
|
||||
@ -4972,8 +4983,8 @@ Alias (byte*) print_char_cursor#49 = (byte*) print_char_cursor#54
|
||||
Alias (signed word*) main::st1#2 = (signed word*) main::st1#7 (signed word*) main::st1#6
|
||||
Alias (signed word*) main::st2#2 = (signed word*) main::st2#7 (signed word*) main::st2#6
|
||||
Alias (byte) main::i#5 = (byte) main::i#7 (byte) main::i#6
|
||||
Alias (word) rem16u#40 = (word) rem16u#43 (word) rem16u#41
|
||||
Alias (byte*) print_line_cursor#17 = (byte*) print_line_cursor#19 (byte*) print_line_cursor#18
|
||||
Alias (word) rem16u#41 = (word) rem16u#44 (word) rem16u#42
|
||||
Alias (byte*) print_line_cursor#18 = (byte*) print_line_cursor#20 (byte*) print_line_cursor#19
|
||||
Alias (byte*) print_char_cursor#19 = (byte*) print_char_cursor#39
|
||||
Alias (word) rem16u#13 = (word) rem16u#25
|
||||
Alias (byte*) print_line_cursor#5 = (byte*) print_line_cursor#9
|
||||
@ -5115,8 +5126,8 @@ Alias (signed word) main::sw#0 = (signed word) main::sw#1
|
||||
Alias (signed word*) main::st1#2 = (signed word*) main::st1#3
|
||||
Alias (signed word*) main::st2#2 = (signed word*) main::st2#3
|
||||
Alias (byte) main::i#2 = (byte) main::i#5
|
||||
Alias (word) rem16u#12 = (word) rem16u#40
|
||||
Alias (byte*) print_line_cursor#11 = (byte*) print_line_cursor#17
|
||||
Alias (word) rem16u#12 = (word) rem16u#41
|
||||
Alias (byte*) print_line_cursor#11 = (byte*) print_line_cursor#18
|
||||
Succesful SSA optimization Pass2AliasElimination
|
||||
Not aliassing across scopes: divr16u::rem#10 divr16u::rem#3
|
||||
Not aliassing across scopes: divr16u::dividend#5 divr16u::dividend#1
|
||||
@ -5353,7 +5364,7 @@ Constant (const byte) mulu16_sel::select#8 = 0
|
||||
Constant (const byte) mulu16_sel::select#9 = 0
|
||||
Constant (const byte*) print_line_cursor#0 = ((byte*))1024
|
||||
Constant (const byte) print_char::ch#0 = '-'
|
||||
Constant (const string) print_byte::hextab#0 = print_byte::$4
|
||||
Constant (const string) print_hextab#0 = $0
|
||||
Constant (const word) main::wavelength#0 = 120
|
||||
Constant (const signed word[120]) main::sintab1#0 = { fill( 120, 0) }
|
||||
Constant (const signed word[120]) main::sintab2#0 = { fill( 120, 0) }
|
||||
@ -5393,6 +5404,7 @@ Culled Empty Block (label) @12
|
||||
Culled Empty Block (label) @20
|
||||
Culled Empty Block (label) print_sword::@3
|
||||
Culled Empty Block (label) print_word::@2
|
||||
Culled Empty Block (label) @30
|
||||
Culled Empty Block (label) print_byte::@2
|
||||
Culled Empty Block (label) print_cls::@2
|
||||
Culled Empty Block (label) main::@7
|
||||
@ -5767,6 +5779,7 @@ Constant inlined sin16s_gen::wavelength#0 = (const word) main::wavelength#0
|
||||
Constant inlined div32u16u::dividend#0 = (const dword) PI2_u4f28#0
|
||||
Constant inlined sin16s::isUpper#0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Constant inlined mulu16_sel::v2#7 = (dword/signed dword) 65536/(byte/signed byte/word/signed word/dword/signed dword) 6
|
||||
Constant inlined $0 = (const string) print_hextab#0
|
||||
Constant inlined mulu16_sel::select#4 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Constant inlined mulu16_sel::select#5 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Constant inlined divr16u::quotient#0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
@ -5797,7 +5810,6 @@ Constant inlined div32u16u::divisor#1 = (const word) main::wavelength#0
|
||||
Constant inlined print_str::str#2 = (const string) main::str1
|
||||
Constant inlined div32u16u::divisor#0 = (const word) main::wavelength#0
|
||||
Constant inlined print_str::str#1 = (const string) main::str
|
||||
Constant inlined print_byte::$4 = (const string) print_byte::hextab#0
|
||||
Succesful SSA optimization Pass2ConstantInlining
|
||||
Block Sequence Planned @begin @35 @end main main::@5 main::@6 main::@1 main::@3 main::@2 main::@8 main::@9 main::@return print_str print_str::@1 print_str::@return print_str::@2 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_cls print_cls::@1 print_cls::@return sin16s_genb sin16s_genb::@3 sin16s_genb::@1 sin16s_genb::@4 sin16s_genb::@return sin16sb sin16sb::@4 sin16sb::@1 sin16sb::@5 sin16sb::@2 sin16sb::@8 sin16sb::@9 sin16sb::@10 sin16sb::@11 sin16sb::@12 sin16sb::@6 sin16sb::@3 sin16sb::@return mulu16_sel mulu16_sel::@2 mulu16_sel::@return mul16u mul16u::@1 mul16u::@return mul16u::@2 mul16u::@7 mul16u::@4 div32u16u div32u16u::@2 div32u16u::@3 div32u16u::@return divr16u divr16u::@1 divr16u::@4 divr16u::@2 divr16u::@5 divr16u::@3 divr16u::@6 divr16u::@return sin16s_gen sin16s_gen::@3 sin16s_gen::@1 sin16s_gen::@4 sin16s_gen::@return sin16s sin16s::@4 sin16s::@1 sin16s::@5 sin16s::@2 sin16s::@8 sin16s::@9 sin16s::@10 sin16s::@11 sin16s::@12 sin16s::@6 sin16s::@3 sin16s::@return
|
||||
Added new block during phi lifting main::@11(between main::@9 and main::@1)
|
||||
@ -5884,31 +5896,31 @@ Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Created 49 initial phi equivalence classes
|
||||
Coalesced [13] print_char_cursor#59 ← print_char_cursor#49
|
||||
Coalesced [15] print_char_cursor#58 ← print_char_cursor#2
|
||||
Coalesced [19] print_char_cursor#60 ← print_char_cursor#12
|
||||
Coalesced [13] print_char_cursor#60 ← print_char_cursor#49
|
||||
Coalesced [15] print_char_cursor#59 ← print_char_cursor#2
|
||||
Coalesced [19] print_char_cursor#61 ← print_char_cursor#12
|
||||
Coalesced [26] main::st1#8 ← main::st1#1
|
||||
Coalesced [27] main::st2#8 ← main::st2#1
|
||||
Coalesced [28] print_char_cursor#56 ← print_char_cursor#2
|
||||
Coalesced [28] print_char_cursor#57 ← print_char_cursor#2
|
||||
Coalesced [29] main::i#8 ← main::i#1
|
||||
Coalesced (already) [30] print_char_cursor#57 ← print_char_cursor#49
|
||||
Coalesced (already) [30] print_char_cursor#58 ← print_char_cursor#49
|
||||
Coalesced [32] print_str::str#6 ← print_str::str#5
|
||||
Coalesced (already) [33] print_char_cursor#61 ← print_char_cursor#51
|
||||
Coalesced (already) [33] print_char_cursor#62 ← print_char_cursor#51
|
||||
Coalesced [40] print_str::str#7 ← print_str::str#0
|
||||
Coalesced [41] print_char_cursor#62 ← print_char_cursor#1
|
||||
Coalesced [43] print_char_cursor#69 ← print_char_cursor#48
|
||||
Coalesced [41] print_char_cursor#63 ← print_char_cursor#1
|
||||
Coalesced [43] print_char_cursor#70 ← print_char_cursor#48
|
||||
Coalesced [46] print_sword::w#7 ← print_sword::w#0
|
||||
Coalesced [47] print_char_cursor#64 ← print_char_cursor#12
|
||||
Coalesced [47] print_char_cursor#65 ← print_char_cursor#12
|
||||
Coalesced [51] print_sword::w#6 ← print_sword::w#1
|
||||
Coalesced (already) [52] print_char_cursor#63 ← print_char_cursor#48
|
||||
Coalesced (already) [52] print_char_cursor#64 ← print_char_cursor#48
|
||||
Coalesced [54] print_byte::b#4 ← print_byte::b#0
|
||||
Coalesced [55] print_char_cursor#65 ← print_char_cursor#43
|
||||
Coalesced [55] print_char_cursor#66 ← print_char_cursor#43
|
||||
Coalesced [58] print_byte::b#5 ← print_byte::b#1
|
||||
Coalesced (already) [59] print_char_cursor#66 ← print_char_cursor#12
|
||||
Coalesced (already) [59] print_char_cursor#67 ← print_char_cursor#12
|
||||
Coalesced [65] print_char::ch#4 ← print_char::ch#1
|
||||
Coalesced (already) [66] print_char_cursor#67 ← print_char_cursor#46
|
||||
Coalesced (already) [66] print_char_cursor#68 ← print_char_cursor#46
|
||||
Coalesced [70] print_char::ch#5 ← print_char::ch#2
|
||||
Coalesced (already) [71] print_char_cursor#68 ← print_char_cursor#12
|
||||
Coalesced (already) [71] print_char_cursor#69 ← print_char_cursor#12
|
||||
Coalesced [84] print_cls::sc#3 ← print_cls::sc#1
|
||||
Coalesced [100] sin16s_genb::x#4 ← sin16s_genb::x#1
|
||||
Coalesced [101] sin16s_genb::sintab#6 ← sin16s_genb::sintab#0
|
||||
@ -6132,12 +6144,12 @@ print_byte: scope:[print_byte] from print_word print_word::@1
|
||||
[44] (byte*) print_char_cursor#46 ← phi( print_word/(byte*) print_char_cursor#43 print_word::@1/(byte*) print_char_cursor#12 ) [ print_byte::b#2 print_char_cursor#46 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#46 ] )
|
||||
[44] (byte) print_byte::b#2 ← phi( print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) [ print_byte::b#2 print_char_cursor#46 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#46 ] )
|
||||
[45] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#2 print_char_cursor#46 print_byte::$0 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] )
|
||||
[46] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] )
|
||||
[46] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] )
|
||||
[47] call print_char param-assignment [ print_char_cursor#12 print_byte::b#2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_byte::b#2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_byte::b#2 ] )
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
[48] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#12 print_byte::$2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_byte::$2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_byte::$2 ] )
|
||||
[49] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_char::ch#2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_char::ch#2 ] )
|
||||
[49] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_char::ch#2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_char::ch#2 ] )
|
||||
[50] call print_char param-assignment [ print_char_cursor#12 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 ] )
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte::@1
|
||||
@ -6741,7 +6753,6 @@ VARIABLE REGISTER WEIGHTS
|
||||
(byte) print_byte::b#0 4.0
|
||||
(byte) print_byte::b#1 4.0
|
||||
(byte) print_byte::b#2 2.0
|
||||
(byte[]) print_byte::hextab
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(byte) print_char::ch
|
||||
(byte) print_char::ch#1 4.0
|
||||
@ -6761,6 +6772,7 @@ VARIABLE REGISTER WEIGHTS
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 16.5
|
||||
(byte*) print_cls::sc#2 16.5
|
||||
(byte[]) print_hextab
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_screen
|
||||
(void()) print_str((byte*) print_str::str)
|
||||
@ -7448,9 +7460,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
sta _0
|
||||
//SEG102 [46] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
//SEG102 [46] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
ldy _0
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
sta print_char.ch
|
||||
//SEG103 [47] call print_char param-assignment [ print_char_cursor#12 print_byte::b#2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_byte::b#2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_byte::b#2 ] )
|
||||
//SEG104 [52] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
@ -7465,9 +7477,9 @@ print_byte: {
|
||||
lda #$f
|
||||
and b
|
||||
sta _2
|
||||
//SEG109 [49] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_char::ch#2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_char::ch#2 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
//SEG109 [49] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_char::ch#2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_char::ch#2 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
ldy _2
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
sta print_char.ch
|
||||
//SEG110 [50] call print_char param-assignment [ print_char_cursor#12 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 ] )
|
||||
//SEG111 [52] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
@ -7480,7 +7492,6 @@ print_byte: {
|
||||
breturn:
|
||||
//SEG115 [51] return [ print_char_cursor#12 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG116 print_char
|
||||
print_char: {
|
||||
@ -8880,6 +8891,7 @@ sin16s: {
|
||||
sta return_5+1
|
||||
jmp b3_from_b15
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
REGISTER UPLIFT POTENTIAL REGISTERS
|
||||
Statement [11] (signed word) main::sw#0 ← *((signed word*) main::st1#2) - *((signed word*) main::st2#2) [ main::st1#2 main::st2#2 print_char_cursor#49 main::i#2 main::sw#0 ] ( main:2 [ main::st1#2 main::st2#2 print_char_cursor#49 main::i#2 main::sw#0 ] ) always clobbers reg byte a reg byte y
|
||||
@ -9634,9 +9646,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
//SEG102 [46] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG102 [46] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG103 [47] call print_char param-assignment [ print_char_cursor#12 print_byte::b#2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_byte::b#2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_byte::b#2 ] )
|
||||
//SEG104 [52] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
print_char_from_print_byte:
|
||||
@ -9649,9 +9661,9 @@ print_byte: {
|
||||
//SEG108 [48] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#12 print_byte::$2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_byte::$2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_byte::$2 ] ) -- vbuaa=vbuz1_band_vbuc1
|
||||
lda #$f
|
||||
and b
|
||||
//SEG109 [49] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_char::ch#2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG109 [49] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_char::ch#2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG110 [50] call print_char param-assignment [ print_char_cursor#12 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 ] )
|
||||
//SEG111 [52] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
print_char_from_b1:
|
||||
@ -9663,7 +9675,6 @@ print_byte: {
|
||||
breturn:
|
||||
//SEG115 [51] return [ print_char_cursor#12 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG116 print_char
|
||||
print_char: {
|
||||
@ -10848,6 +10859,7 @@ sin16s: {
|
||||
// (signed word~) sin16s::return#5 = (signed word)(word) sin16s::usinx#1 // register copy zp ZP_WORD:6
|
||||
jmp b3_from_b15
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
ASSEMBLER OPTIMIZATIONS
|
||||
Removing instruction jmp b35
|
||||
@ -11271,8 +11283,6 @@ FINAL SYMBOL TABLE
|
||||
(byte) print_byte::b#0 b zp ZP_BYTE:10 4.0
|
||||
(byte) print_byte::b#1 b zp ZP_BYTE:10 4.0
|
||||
(byte) print_byte::b#2 b zp ZP_BYTE:10 2.0
|
||||
(byte[]) print_byte::hextab
|
||||
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -11295,6 +11305,8 @@ FINAL SYMBOL TABLE
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 sc zp ZP_WORD:2 16.5
|
||||
(byte*) print_cls::sc#2 sc zp ZP_WORD:2 16.5
|
||||
(byte[]) print_hextab
|
||||
(const string) print_hextab#0 print_hextab = (string) "0123456789abcdef"
|
||||
(byte*) print_line_cursor
|
||||
(const byte*) print_line_cursor#0 print_line_cursor = ((byte*))(word/signed word/dword/signed dword) 1024
|
||||
(byte*) print_screen
|
||||
@ -11714,9 +11726,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
//SEG102 [46] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG102 [46] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#46 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG103 [47] call print_char param-assignment [ print_char_cursor#12 print_byte::b#2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_byte::b#2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_byte::b#2 ] )
|
||||
//SEG104 [52] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
//SEG105 [52] phi (byte*) print_char_cursor#33 = (byte*) print_char_cursor#46 [phi:print_byte->print_char#0] -- register_copy
|
||||
@ -11726,9 +11738,9 @@ print_byte: {
|
||||
//SEG108 [48] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#12 print_byte::$2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_byte::$2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_byte::$2 ] ) -- vbuaa=vbuz1_band_vbuc1
|
||||
lda #$f
|
||||
and b
|
||||
//SEG109 [49] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_char::ch#2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG109 [49] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_char::ch#2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG110 [50] call print_char param-assignment [ print_char_cursor#12 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 ] )
|
||||
//SEG111 [52] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
//SEG112 [52] phi (byte*) print_char_cursor#33 = (byte*) print_char_cursor#12 [phi:print_byte::@1->print_char#0] -- register_copy
|
||||
@ -11737,7 +11749,6 @@ print_byte: {
|
||||
//SEG114 print_byte::@return
|
||||
//SEG115 [51] return [ print_char_cursor#12 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG116 print_char
|
||||
print_char: {
|
||||
@ -12778,4 +12789,5 @@ sin16s: {
|
||||
//SEG447 [221] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:2::sin16s_gen:5::sin16s:173 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#5 ] )
|
||||
// (signed word~) sin16s::return#5 = (signed word)(word) sin16s::usinx#1 // register copy zp ZP_WORD:6
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
|
@ -169,8 +169,6 @@
|
||||
(byte) print_byte::b#0 b zp ZP_BYTE:10 4.0
|
||||
(byte) print_byte::b#1 b zp ZP_BYTE:10 4.0
|
||||
(byte) print_byte::b#2 b zp ZP_BYTE:10 2.0
|
||||
(byte[]) print_byte::hextab
|
||||
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -193,6 +191,8 @@
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 sc zp ZP_WORD:2 16.5
|
||||
(byte*) print_cls::sc#2 sc zp ZP_WORD:2 16.5
|
||||
(byte[]) print_hextab
|
||||
(const string) print_hextab#0 print_hextab = (string) "0123456789abcdef"
|
||||
(byte*) print_line_cursor
|
||||
(const byte*) print_line_cursor#0 print_line_cursor = ((byte*))(word/signed word/dword/signed dword) 1024
|
||||
(byte*) print_screen
|
||||
|
@ -89,15 +89,14 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
lda #$f
|
||||
and print_sbyte.b
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
print_char: {
|
||||
ldy #0
|
||||
@ -397,3 +396,4 @@ divr16u: {
|
||||
bne b1
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
@ -78,12 +78,12 @@ print_sbyte::@return: scope:[print_sbyte] from print_sbyte::@1
|
||||
to:@return
|
||||
print_byte: scope:[print_byte] from print_sbyte::@1
|
||||
[35] (byte~) print_byte::$0 ← (byte)(signed byte) print_sbyte::b#3 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_sbyte::b#3 print_char_cursor#37 print_byte::$0 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_byte::$0 ] )
|
||||
[36] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] )
|
||||
[36] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] )
|
||||
[37] call print_char param-assignment [ print_char_cursor#10 print_sbyte::b#3 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 print_sbyte::b#3 ] )
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
[38] (byte~) print_byte::$2 ← (byte)(signed byte) print_sbyte::b#3 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#10 print_byte::$2 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 print_byte::$2 ] )
|
||||
[39] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#2 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 print_char::ch#2 ] )
|
||||
[39] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#2 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 print_char::ch#2 ] )
|
||||
[40] call print_char param-assignment [ print_char_cursor#10 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 ] )
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte::@1
|
||||
|
@ -473,12 +473,13 @@ void print_sdword(signed dword dw) {
|
||||
print_dword((dword)dw);
|
||||
}
|
||||
|
||||
const byte[] print_hextab = "0123456789abcdef";
|
||||
|
||||
// Print a byte as HEX
|
||||
void print_byte(byte b) {
|
||||
// Table of hexadecimal digits
|
||||
const byte[] hextab = "0123456789abcdef";
|
||||
print_char(hextab[b>>4]);
|
||||
print_char(hextab[b&$f]);
|
||||
print_char(print_hextab[b>>4]);
|
||||
print_char(print_hextab[b&$f]);
|
||||
}
|
||||
|
||||
// Print a single char
|
||||
@ -1147,12 +1148,12 @@ print_sdword::@1:
|
||||
print_sdword::@return:
|
||||
return
|
||||
endproc // print_sdword()
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
proc (void()) print_byte((byte) print_byte::b)
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
print_byte::@return:
|
||||
return
|
||||
endproc // print_byte()
|
||||
@ -1499,7 +1500,6 @@ SYMBOLS
|
||||
(void~) print_byte::$3
|
||||
(label) print_byte::@return
|
||||
(byte) print_byte::b
|
||||
(byte[]) print_byte::hextab
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -1517,6 +1517,7 @@ SYMBOLS
|
||||
(void~) print_dword::$3
|
||||
(label) print_dword::@return
|
||||
(dword) print_dword::dw
|
||||
(byte[]) print_hextab
|
||||
(byte*) print_line_cursor
|
||||
(void()) print_ln()
|
||||
(byte*~) print_ln::$0
|
||||
@ -2610,13 +2611,13 @@ print_sdword::@return: scope:[print_sdword] from print_sdword::@1
|
||||
return
|
||||
to:@return
|
||||
@28: scope:[] from @27
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
to:@29
|
||||
print_byte: scope:[print_byte] from
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte
|
||||
return
|
||||
@ -2733,7 +2734,7 @@ Eliminating unused variable - keeping the call (void~) main::$1
|
||||
Eliminating unused variable - keeping the call (void~) main::$7
|
||||
Eliminating unused variable - keeping the call (void~) main::$8
|
||||
Eliminating unused variable - keeping the call (void~) main::$6
|
||||
Creating constant string variable for inline (const string) print_byte::$4 "0123456789abcdef"
|
||||
Creating constant string variable for inline (const string) $0 "0123456789abcdef"
|
||||
Creating constant string variable for inline (const string) main::str " @"
|
||||
Creating constant string variable for inline (const string) main::str1 " @"
|
||||
Removing empty block @1
|
||||
@ -2773,7 +2774,6 @@ Removing empty block @24
|
||||
Removing empty block @25
|
||||
Removing empty block @26
|
||||
Removing empty block @27
|
||||
Removing empty block @28
|
||||
Removing empty block @29
|
||||
Removing empty block @30
|
||||
Removing empty block @31
|
||||
@ -2957,7 +2957,7 @@ mul8u::@return: scope:[mul8u] from mul8u::@3
|
||||
return
|
||||
to:@return
|
||||
@12: scope:[] from @2
|
||||
(word) rem16u#27 ← phi( @2/(word) rem16u#0 )
|
||||
(word) rem16u#29 ← phi( @2/(word) rem16u#0 )
|
||||
(word) PI2_u4f12#0 ← (word/signed word/dword/signed dword) 25736
|
||||
(word) PI_u4f12#0 ← (word/signed word/dword/signed dword) 12868
|
||||
(word) PI_HALF_u4f12#0 ← (word/signed word/dword/signed dword) 6434
|
||||
@ -3172,11 +3172,11 @@ mulu8_sel::@return: scope:[mulu8_sel] from mulu8_sel::@2
|
||||
return
|
||||
to:@return
|
||||
@18: scope:[] from @12
|
||||
(word) rem16u#26 ← phi( @12/(word) rem16u#27 )
|
||||
(word) rem16u#27 ← phi( @12/(word) rem16u#29 )
|
||||
(byte*) print_screen#0 ← ((byte*)) (word/signed word/dword/signed dword) 1024
|
||||
(byte*) print_line_cursor#0 ← (byte*) print_screen#0
|
||||
(byte*) print_char_cursor#0 ← (byte*) print_line_cursor#0
|
||||
to:@33
|
||||
to:@28
|
||||
print_str: scope:[print_str] from main::@3 main::@7
|
||||
(byte*) print_char_cursor#44 ← phi( main::@3/(byte*) print_char_cursor#42 main::@7/(byte*) print_char_cursor#14 )
|
||||
(byte*) print_str::str#5 ← phi( main::@3/(byte*) print_str::str#2 main::@7/(byte*) print_str::str#1 )
|
||||
@ -3235,12 +3235,18 @@ print_sbyte::@return: scope:[print_sbyte] from print_sbyte::@3
|
||||
(byte*) print_char_cursor#5 ← (byte*) print_char_cursor#23
|
||||
return
|
||||
to:@return
|
||||
@28: scope:[] from @18
|
||||
(byte*) print_screen#7 ← phi( @18/(byte*) print_screen#0 )
|
||||
(byte*) print_char_cursor#48 ← phi( @18/(byte*) print_char_cursor#0 )
|
||||
(byte*) print_line_cursor#15 ← phi( @18/(byte*) print_line_cursor#0 )
|
||||
(word) rem16u#26 ← phi( @18/(word) rem16u#27 )
|
||||
(byte[]) print_hextab#0 ← (const string) $0
|
||||
to:@33
|
||||
print_byte: scope:[print_byte] from print_sbyte::@1
|
||||
(byte*) print_char_cursor#39 ← phi( print_sbyte::@1/(byte*) print_char_cursor#37 )
|
||||
(byte) print_byte::b#1 ← phi( print_sbyte::@1/(byte) print_byte::b#0 )
|
||||
(byte[]) print_byte::hextab#0 ← (const string) print_byte::$4
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b#1 >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(byte) print_char::ch#1 ← *((byte[]) print_byte::hextab#0 + (byte~) print_byte::$0)
|
||||
(byte) print_char::ch#1 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$0)
|
||||
call print_char param-assignment
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
@ -3248,7 +3254,7 @@ print_byte::@1: scope:[print_byte] from print_byte
|
||||
(byte*) print_char_cursor#24 ← phi( print_byte/(byte*) print_char_cursor#10 )
|
||||
(byte*) print_char_cursor#6 ← (byte*) print_char_cursor#24
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(byte) print_char::ch#2 ← *((byte[]) print_byte::hextab#0 + (byte~) print_byte::$2)
|
||||
(byte) print_char::ch#2 ← *((byte[]) print_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
|
||||
@ -3317,7 +3323,7 @@ main::@5: scope:[main] from main
|
||||
call print_cls param-assignment
|
||||
to:main::@6
|
||||
main::@6: scope:[main] from main::@5
|
||||
(word) rem16u#31 ← phi( main::@5/(word) rem16u#7 )
|
||||
(word) rem16u#32 ← phi( main::@5/(word) rem16u#7 )
|
||||
(byte*) print_char_cursor#30 ← phi( main::@5/(byte*) print_char_cursor#12 )
|
||||
(byte*) print_line_cursor#7 ← phi( main::@5/(byte*) print_line_cursor#2 )
|
||||
(byte*) print_line_cursor#3 ← (byte*) print_line_cursor#7
|
||||
@ -3325,8 +3331,8 @@ main::@6: scope:[main] from main::@5
|
||||
(byte) main::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
to:main::@1
|
||||
main::@1: scope:[main] from main::@6 main::@8
|
||||
(byte*) print_line_cursor#16 ← phi( main::@6/(byte*) print_line_cursor#3 main::@8/(byte*) print_line_cursor#11 )
|
||||
(word) rem16u#29 ← phi( main::@6/(word) rem16u#31 main::@8/(word) rem16u#22 )
|
||||
(byte*) print_line_cursor#17 ← phi( main::@6/(byte*) print_line_cursor#3 main::@8/(byte*) print_line_cursor#11 )
|
||||
(word) rem16u#30 ← phi( main::@6/(word) rem16u#32 main::@8/(word) rem16u#22 )
|
||||
(byte*) print_char_cursor#47 ← phi( main::@6/(byte*) print_char_cursor#13 main::@8/(byte*) print_char_cursor#15 )
|
||||
(byte) main::i#2 ← phi( main::@6/(byte) main::i#0 main::@8/(byte) main::i#1 )
|
||||
(signed byte~) main::$2 ← ((signed byte)) *((byte[]) main::sintabref#0 + (byte) main::i#2)
|
||||
@ -3337,8 +3343,8 @@ main::@1: scope:[main] from main::@6 main::@8
|
||||
if((boolean~) main::$5) goto main::@2
|
||||
to:main::@3
|
||||
main::@2: scope:[main] from main::@1 main::@9
|
||||
(byte*) print_line_cursor#15 ← phi( main::@1/(byte*) print_line_cursor#16 main::@9/(byte*) print_line_cursor#17 )
|
||||
(word) rem16u#28 ← phi( main::@1/(word) rem16u#29 main::@9/(word) rem16u#30 )
|
||||
(byte*) print_line_cursor#16 ← phi( main::@1/(byte*) print_line_cursor#17 main::@9/(byte*) print_line_cursor#18 )
|
||||
(word) rem16u#28 ← phi( main::@1/(word) rem16u#30 main::@9/(word) rem16u#31 )
|
||||
(byte) main::i#5 ← phi( main::@1/(byte) main::i#2 main::@9/(byte) main::i#6 )
|
||||
(byte*) print_char_cursor#41 ← phi( main::@1/(byte*) print_char_cursor#47 main::@9/(byte*) print_char_cursor#16 )
|
||||
(signed byte) main::sb#1 ← phi( main::@1/(signed byte) main::sb#0 main::@9/(signed byte) main::sb#2 )
|
||||
@ -3346,7 +3352,7 @@ main::@2: scope:[main] from main::@1 main::@9
|
||||
call print_sbyte param-assignment
|
||||
to:main::@7
|
||||
main::@7: scope:[main] from main::@2
|
||||
(byte*) print_line_cursor#14 ← phi( main::@2/(byte*) print_line_cursor#15 )
|
||||
(byte*) print_line_cursor#14 ← phi( main::@2/(byte*) print_line_cursor#16 )
|
||||
(word) rem16u#25 ← phi( main::@2/(word) rem16u#28 )
|
||||
(byte) main::i#4 ← phi( main::@2/(byte) main::i#5 )
|
||||
(byte*) print_char_cursor#31 ← phi( main::@2/(byte*) print_char_cursor#5 )
|
||||
@ -3365,8 +3371,8 @@ main::@8: scope:[main] from main::@7
|
||||
if((boolean~) main::$9) goto main::@1
|
||||
to:main::@return
|
||||
main::@3: scope:[main] from main::@1
|
||||
(byte*) print_line_cursor#18 ← phi( main::@1/(byte*) print_line_cursor#16 )
|
||||
(word) rem16u#32 ← phi( main::@1/(word) rem16u#29 )
|
||||
(byte*) print_line_cursor#19 ← phi( main::@1/(byte*) print_line_cursor#17 )
|
||||
(word) rem16u#33 ← phi( main::@1/(word) rem16u#30 )
|
||||
(byte) main::i#7 ← phi( main::@1/(byte) main::i#2 )
|
||||
(signed byte) main::sb#3 ← phi( main::@1/(signed byte) main::sb#0 )
|
||||
(byte*) print_char_cursor#42 ← phi( main::@1/(byte*) print_char_cursor#47 )
|
||||
@ -3374,8 +3380,8 @@ main::@3: scope:[main] from main::@1
|
||||
call print_str param-assignment
|
||||
to:main::@9
|
||||
main::@9: scope:[main] from main::@3
|
||||
(byte*) print_line_cursor#17 ← phi( main::@3/(byte*) print_line_cursor#18 )
|
||||
(word) rem16u#30 ← phi( main::@3/(word) rem16u#32 )
|
||||
(byte*) print_line_cursor#18 ← phi( main::@3/(byte*) print_line_cursor#19 )
|
||||
(word) rem16u#31 ← phi( main::@3/(word) rem16u#33 )
|
||||
(byte) main::i#6 ← phi( main::@3/(byte) main::i#7 )
|
||||
(signed byte) main::sb#2 ← phi( main::@3/(signed byte) main::sb#3 )
|
||||
(byte*) print_char_cursor#33 ← phi( main::@3/(byte*) print_char_cursor#2 )
|
||||
@ -3390,11 +3396,11 @@ main::@return: scope:[main] from main::@8
|
||||
(byte*) print_char_cursor#17 ← (byte*) print_char_cursor#34
|
||||
return
|
||||
to:@return
|
||||
@33: scope:[] from @18
|
||||
(byte*) print_screen#6 ← phi( @18/(byte*) print_screen#0 )
|
||||
(byte*) print_char_cursor#43 ← phi( @18/(byte*) print_char_cursor#0 )
|
||||
(byte*) print_line_cursor#12 ← phi( @18/(byte*) print_line_cursor#0 )
|
||||
(word) rem16u#23 ← phi( @18/(word) rem16u#26 )
|
||||
@33: scope:[] from @28
|
||||
(byte*) print_screen#6 ← phi( @28/(byte*) print_screen#7 )
|
||||
(byte*) print_char_cursor#43 ← phi( @28/(byte*) print_char_cursor#48 )
|
||||
(byte*) print_line_cursor#12 ← phi( @28/(byte*) print_line_cursor#15 )
|
||||
(word) rem16u#23 ← phi( @28/(word) rem16u#26 )
|
||||
call main param-assignment
|
||||
to:@34
|
||||
@34: scope:[] from @33
|
||||
@ -3408,9 +3414,11 @@ main::@return: scope:[main] from main::@8
|
||||
@end: scope:[] from @34
|
||||
|
||||
SYMBOL TABLE SSA
|
||||
(const string) $0 = (string) "0123456789abcdef"
|
||||
(label) @12
|
||||
(label) @18
|
||||
(label) @2
|
||||
(label) @28
|
||||
(label) @33
|
||||
(label) @34
|
||||
(label) @begin
|
||||
@ -3638,7 +3646,6 @@ SYMBOL TABLE SSA
|
||||
(void()) print_byte((byte) print_byte::b)
|
||||
(byte~) print_byte::$0
|
||||
(byte~) print_byte::$2
|
||||
(const string) print_byte::$4 = (string) "0123456789abcdef"
|
||||
(label) print_byte::@1
|
||||
(label) print_byte::@2
|
||||
(label) print_byte::@return
|
||||
@ -3646,8 +3653,6 @@ SYMBOL TABLE SSA
|
||||
(byte) print_byte::b#0
|
||||
(byte) print_byte::b#1
|
||||
(byte) print_byte::b#2
|
||||
(byte[]) print_byte::hextab
|
||||
(byte[]) print_byte::hextab#0
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -3699,6 +3704,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_char_cursor#45
|
||||
(byte*) print_char_cursor#46
|
||||
(byte*) print_char_cursor#47
|
||||
(byte*) print_char_cursor#48
|
||||
(byte*) print_char_cursor#5
|
||||
(byte*) print_char_cursor#6
|
||||
(byte*) print_char_cursor#7
|
||||
@ -3714,6 +3720,8 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_cls::sc#0
|
||||
(byte*) print_cls::sc#1
|
||||
(byte*) print_cls::sc#2
|
||||
(byte[]) print_hextab
|
||||
(byte[]) print_hextab#0
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#0
|
||||
(byte*) print_line_cursor#1
|
||||
@ -3726,6 +3734,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_line_cursor#16
|
||||
(byte*) print_line_cursor#17
|
||||
(byte*) print_line_cursor#18
|
||||
(byte*) print_line_cursor#19
|
||||
(byte*) print_line_cursor#2
|
||||
(byte*) print_line_cursor#3
|
||||
(byte*) print_line_cursor#4
|
||||
@ -3759,6 +3768,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_screen#4
|
||||
(byte*) print_screen#5
|
||||
(byte*) print_screen#6
|
||||
(byte*) print_screen#7
|
||||
(void()) print_str((byte*) print_str::str)
|
||||
(boolean~) print_str::$0
|
||||
(label) print_str::@1
|
||||
@ -3799,6 +3809,7 @@ SYMBOL TABLE SSA
|
||||
(word) rem16u#30
|
||||
(word) rem16u#31
|
||||
(word) rem16u#32
|
||||
(word) rem16u#33
|
||||
(word) rem16u#4
|
||||
(word) rem16u#5
|
||||
(word) rem16u#6
|
||||
@ -4060,7 +4071,7 @@ Alias (word) mul8u::res#2 = (word) mul8u::res#5 (word) mul8u::res#4 (word) mul8u
|
||||
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 (word) rem16u#0 = (word) rem16u#27 (word) rem16u#26 (word) rem16u#23
|
||||
Alias (word) rem16u#0 = (word) rem16u#29 (word) rem16u#27 (word) rem16u#26 (word) rem16u#23
|
||||
Alias (word) div16u::return#2 = (word) div16u::return#4
|
||||
Alias (signed byte*) sin8s_gen::sintab#4 = (signed byte*) sin8s_gen::sintab#5
|
||||
Alias (word) sin8s_gen::wavelength#1 = (word) sin8s_gen::wavelength#4
|
||||
@ -4101,7 +4112,7 @@ Alias (signed byte) sin8s::sinx#1 = (signed byte~) sin8s::$22
|
||||
Alias (word) mul8u::return#2 = (word) mul8u::return#4
|
||||
Alias (byte) mulu8_sel::select#5 = (byte) mulu8_sel::select#6
|
||||
Alias (byte) mulu8_sel::return#12 = (byte) mulu8_sel::return#5 (byte~) mulu8_sel::$2 (byte) mulu8_sel::return#6
|
||||
Alias (byte*) print_line_cursor#0 = (byte*) print_screen#0 (byte*) print_char_cursor#0 (byte*) print_line_cursor#12 (byte*) print_char_cursor#43 (byte*) print_screen#6
|
||||
Alias (byte*) print_line_cursor#0 = (byte*) print_screen#0 (byte*) print_char_cursor#0 (byte*) print_line_cursor#15 (byte*) print_char_cursor#48 (byte*) print_screen#7 (byte*) print_line_cursor#12 (byte*) print_char_cursor#43 (byte*) print_screen#6
|
||||
Alias (byte*) print_str::str#3 = (byte*) print_str::str#4
|
||||
Alias (byte*) print_char_cursor#19 = (byte*) print_char_cursor#36 (byte*) print_char_cursor#20 (byte*) print_char_cursor#2
|
||||
Alias (byte) print_byte::b#0 = (byte~) print_sbyte::$4
|
||||
@ -4118,19 +4129,19 @@ Alias (byte*) print_line_cursor#1 = (byte*) print_screen#3 (byte*) print_screen#
|
||||
Alias (byte*) print_screen#4 = (byte*) print_screen#5
|
||||
Alias (byte*) print_line_cursor#10 = (byte*) print_line_cursor#13
|
||||
Alias (byte*) print_char_cursor#40 = (byte*) print_char_cursor#46
|
||||
Alias (word) rem16u#15 = (word) rem16u#7 (word) rem16u#31
|
||||
Alias (word) rem16u#15 = (word) rem16u#7 (word) rem16u#32
|
||||
Alias (byte*) print_line_cursor#3 = (byte*) print_line_cursor#7
|
||||
Alias (byte*) print_char_cursor#13 = (byte*) print_char_cursor#30
|
||||
Alias (signed byte) main::sb#0 = (signed byte~) main::$3 (signed byte) main::sb#3 (signed byte) main::sb#2
|
||||
Alias (byte) main::i#3 = (byte) main::i#4 (byte) main::i#5
|
||||
Alias (word) rem16u#16 = (word) rem16u#25 (word) rem16u#28 (word) rem16u#22 (word) rem16u#8
|
||||
Alias (byte*) print_line_cursor#11 = (byte*) print_line_cursor#14 (byte*) print_line_cursor#15 (byte*) print_line_cursor#8 (byte*) print_line_cursor#4
|
||||
Alias (byte*) print_line_cursor#11 = (byte*) print_line_cursor#14 (byte*) print_line_cursor#16 (byte*) print_line_cursor#8 (byte*) print_line_cursor#4
|
||||
Alias (byte*) print_char_cursor#14 = (byte*) print_char_cursor#31
|
||||
Alias (byte*) print_char_cursor#15 = (byte*) print_char_cursor#32 (byte*) print_char_cursor#34 (byte*) print_char_cursor#17
|
||||
Alias (byte*) print_char_cursor#42 = (byte*) print_char_cursor#47
|
||||
Alias (byte) main::i#2 = (byte) main::i#7 (byte) main::i#6
|
||||
Alias (word) rem16u#29 = (word) rem16u#32 (word) rem16u#30
|
||||
Alias (byte*) print_line_cursor#16 = (byte*) print_line_cursor#18 (byte*) print_line_cursor#17
|
||||
Alias (word) rem16u#30 = (word) rem16u#33 (word) rem16u#31
|
||||
Alias (byte*) print_line_cursor#17 = (byte*) print_line_cursor#19 (byte*) print_line_cursor#18
|
||||
Alias (byte*) print_char_cursor#16 = (byte*) print_char_cursor#33
|
||||
Alias (word) rem16u#17 = (word) rem16u#9
|
||||
Alias (byte*) print_line_cursor#5 = (byte*) print_line_cursor#9
|
||||
@ -4229,8 +4240,8 @@ Alias (word) mul8u::mb#2 = (word) mul8u::mb#3
|
||||
Alias (byte) sin8s::isUpper#10 = (byte) sin8s::isUpper#3 (byte) sin8s::isUpper#2
|
||||
Alias (signed byte) main::sb#0 = (signed byte) main::sb#1
|
||||
Alias (byte) main::i#2 = (byte) main::i#3
|
||||
Alias (word) rem16u#16 = (word) rem16u#29
|
||||
Alias (byte*) print_line_cursor#11 = (byte*) print_line_cursor#16
|
||||
Alias (word) rem16u#16 = (word) rem16u#30
|
||||
Alias (byte*) print_line_cursor#11 = (byte*) print_line_cursor#17
|
||||
Succesful SSA optimization Pass2AliasElimination
|
||||
Not aliassing across scopes: divr16u::rem#9 divr16u::rem#3
|
||||
Not aliassing across scopes: divr16u::dividend#4 divr16u::dividend#1
|
||||
@ -4403,7 +4414,7 @@ Constant (const byte) mulu8_sel::select#3 = 0
|
||||
Constant (const byte) mulu8_sel::select#4 = 0
|
||||
Constant (const byte*) print_line_cursor#0 = ((byte*))1024
|
||||
Constant (const byte) print_char::ch#0 = '-'
|
||||
Constant (const string) print_byte::hextab#0 = print_byte::$4
|
||||
Constant (const string) print_hextab#0 = $0
|
||||
Constant (const word) main::wavelength#0 = 192
|
||||
Constant (const signed byte[192]) main::sintab2#0 = { fill( 192, 0) }
|
||||
Constant (const byte[]) main::sintabref#0 = { 0, 4, 8, 12, 17, 21, 25, 29, 33, 37, 41, 45, 49, 53, 56, 60, 64, 67, 71, 74, 78, 81, 84, 87, 90, 93, 96, 99, 101, 104, 106, 108, 110, 112, 114, 116, 118, 119, 121, 122, 123, 124, 125, 126, 126, 127, 127, 127, 128, 127, 127, 127, 126, 126, 125, 124, 123, 122, 121, 119, 118, 116, 114, 112, 110, 108, 106, 104, 101, 99, 96, 93, 90, 87, 84, 81, 78, 74, 71, 67, 64, 60, 56, 53, 49, 45, 41, 37, 33, 29, 25, 21, 17, 12, 8, 4, 0, 252, 248, 244, 239, 235, 231, 227, 223, 219, 215, 211, 207, 203, 200, 196, 192, 189, 185, 182, 178, 175, 172, 169, 166, 163, 160, 157, 155, 152, 150, 148, 146, 144, 142, 140, 138, 137, 135, 134, 133, 132, 131, 130, 130, 129, 129, 129, 129, 129, 129, 129, 130, 130, 131, 132, 133, 134, 135, 137, 138, 140, 142, 144, 146, 148, 150, 152, 155, 157, 160, 163, 166, 169, 172, 175, 178, 182, 185, 189, 192, 196, 200, 203, 207, 211, 215, 219, 223, 227, 231, 235, 239, 244, 248, 252 }
|
||||
@ -4437,6 +4448,7 @@ Culled Empty Block (label) mul8u::@3
|
||||
Culled Empty Block (label) @12
|
||||
Culled Empty Block (label) @18
|
||||
Culled Empty Block (label) print_sbyte::@3
|
||||
Culled Empty Block (label) @28
|
||||
Culled Empty Block (label) print_byte::@2
|
||||
Culled Empty Block (label) print_cls::@2
|
||||
Culled Empty Block (label) main::@6
|
||||
@ -4588,6 +4600,7 @@ Inlining constant with var siblings (const byte) main::i#0
|
||||
Constant inlined divr16u::rem#3 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Constant inlined print_cls::$0 = (const byte*) print_line_cursor#0+(word/signed word/dword/signed dword) 1000
|
||||
Constant inlined divr16u::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Constant inlined $0 = (const string) print_hextab#0
|
||||
Constant inlined sin8s::isUpper#1 = (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
Constant inlined sin8s::isUpper#0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Constant inlined sin8s_gen::x#0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
@ -4610,7 +4623,6 @@ Constant inlined sin8s_gen::sintab#1 = (const signed byte[192]) main::sintab2#0
|
||||
Constant inlined sin8s_gen::wavelength#0 = (const word) main::wavelength#0
|
||||
Constant inlined print_str::str#2 = (const string) main::str1
|
||||
Constant inlined print_str::str#1 = (const string) main::str
|
||||
Constant inlined print_byte::$4 = (const string) print_byte::hextab#0
|
||||
Constant inlined sin8s_gen::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Succesful SSA optimization Pass2ConstantInlining
|
||||
Block Sequence Planned @begin @33 @end main main::@5 main::@1 main::@3 main::@2 main::@7 main::@8 main::@return print_str print_str::@1 print_str::@return print_str::@2 print_sbyte print_sbyte::@2 print_sbyte::@4 print_sbyte::@1 print_sbyte::@return print_byte print_byte::@1 print_byte::@return print_char print_char::@return print_cls print_cls::@1 print_cls::@return sin8s_gen sin8s_gen::@3 sin8s_gen::@1 sin8s_gen::@4 sin8s_gen::@return sin8s sin8s::@5 sin8s::@1 sin8s::@6 sin8s::@2 sin8s::@10 sin8s::@11 sin8s::@12 sin8s::@13 sin8s::@14 sin8s::@7 sin8s::@3 sin8s::@8 sin8s::@4 sin8s::@return mulu8_sel mulu8_sel::@2 mulu8_sel::@return mul8u mul8u::@1 mul8u::@return mul8u::@2 mul8u::@7 mul8u::@4 div16u div16u::@2 div16u::@return divr16u divr16u::@1 divr16u::@4 divr16u::@2 divr16u::@5 divr16u::@3 divr16u::@return
|
||||
@ -4693,25 +4705,25 @@ Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Created 34 initial phi equivalence classes
|
||||
Coalesced [11] print_char_cursor#51 ← print_char_cursor#42
|
||||
Coalesced [13] print_char_cursor#50 ← print_char_cursor#19
|
||||
Coalesced [17] print_char_cursor#52 ← print_char_cursor#10
|
||||
Coalesced [11] print_char_cursor#52 ← print_char_cursor#42
|
||||
Coalesced [13] print_char_cursor#51 ← print_char_cursor#19
|
||||
Coalesced [17] print_char_cursor#53 ← print_char_cursor#10
|
||||
Coalesced [22] main::i#8 ← main::i#1
|
||||
Coalesced [23] print_char_cursor#48 ← print_char_cursor#19
|
||||
Coalesced (already) [24] print_char_cursor#49 ← print_char_cursor#42
|
||||
Coalesced [23] print_char_cursor#49 ← print_char_cursor#19
|
||||
Coalesced (already) [24] print_char_cursor#50 ← print_char_cursor#42
|
||||
Coalesced [26] print_str::str#6 ← print_str::str#5
|
||||
Coalesced (already) [27] print_char_cursor#53 ← print_char_cursor#44
|
||||
Coalesced (already) [27] print_char_cursor#54 ← print_char_cursor#44
|
||||
Coalesced [34] print_str::str#7 ← print_str::str#0
|
||||
Coalesced [35] print_char_cursor#54 ← print_char_cursor#1
|
||||
Coalesced [37] print_char_cursor#59 ← print_char_cursor#41
|
||||
Coalesced [35] print_char_cursor#55 ← print_char_cursor#1
|
||||
Coalesced [37] print_char_cursor#60 ← print_char_cursor#41
|
||||
Coalesced [40] print_sbyte::b#7 ← print_sbyte::b#0
|
||||
Coalesced [41] print_char_cursor#56 ← print_char_cursor#10
|
||||
Coalesced [41] print_char_cursor#57 ← print_char_cursor#10
|
||||
Coalesced [45] print_sbyte::b#6 ← print_sbyte::b#1
|
||||
Coalesced (already) [46] print_char_cursor#55 ← print_char_cursor#41
|
||||
Coalesced (already) [46] print_char_cursor#56 ← print_char_cursor#41
|
||||
Coalesced [49] print_char::ch#4 ← print_char::ch#1
|
||||
Coalesced (already) [50] print_char_cursor#57 ← print_char_cursor#37
|
||||
Coalesced (already) [50] print_char_cursor#58 ← print_char_cursor#37
|
||||
Coalesced [54] print_char::ch#5 ← print_char::ch#2
|
||||
Coalesced (already) [55] print_char_cursor#58 ← print_char_cursor#10
|
||||
Coalesced (already) [55] print_char_cursor#59 ← print_char_cursor#10
|
||||
Coalesced [68] print_cls::sc#3 ← print_cls::sc#1
|
||||
Coalesced [84] sin8s_gen::x#4 ← sin8s_gen::x#1
|
||||
Coalesced [85] sin8s_gen::sintab#6 ← sin8s_gen::sintab#0
|
||||
@ -4892,12 +4904,12 @@ print_sbyte::@return: scope:[print_sbyte] from print_sbyte::@1
|
||||
to:@return
|
||||
print_byte: scope:[print_byte] from print_sbyte::@1
|
||||
[35] (byte~) print_byte::$0 ← (byte)(signed byte) print_sbyte::b#3 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_sbyte::b#3 print_char_cursor#37 print_byte::$0 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_byte::$0 ] )
|
||||
[36] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] )
|
||||
[36] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] )
|
||||
[37] call print_char param-assignment [ print_char_cursor#10 print_sbyte::b#3 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 print_sbyte::b#3 ] )
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
[38] (byte~) print_byte::$2 ← (byte)(signed byte) print_sbyte::b#3 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#10 print_byte::$2 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 print_byte::$2 ] )
|
||||
[39] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#2 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 print_char::ch#2 ] )
|
||||
[39] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#2 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 print_char::ch#2 ] )
|
||||
[40] call print_char param-assignment [ print_char_cursor#10 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 ] )
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte::@1
|
||||
@ -5323,7 +5335,6 @@ VARIABLE REGISTER WEIGHTS
|
||||
(byte~) print_byte::$0 4.0
|
||||
(byte~) print_byte::$2 4.0
|
||||
(byte) print_byte::b
|
||||
(byte[]) print_byte::hextab
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(byte) print_char::ch
|
||||
(byte) print_char::ch#1 4.0
|
||||
@ -5342,6 +5353,7 @@ VARIABLE REGISTER WEIGHTS
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 16.5
|
||||
(byte*) print_cls::sc#2 16.5
|
||||
(byte[]) print_hextab
|
||||
(byte*) print_line_cursor
|
||||
(void()) print_sbyte((signed byte) print_sbyte::b)
|
||||
(signed byte) print_sbyte::b
|
||||
@ -5800,9 +5812,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
sta _0
|
||||
//SEG78 [36] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
//SEG78 [36] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
ldy _0
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
sta print_char.ch
|
||||
//SEG79 [37] call print_char param-assignment [ print_char_cursor#10 print_sbyte::b#3 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 print_sbyte::b#3 ] )
|
||||
//SEG80 [42] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
@ -5817,9 +5829,9 @@ print_byte: {
|
||||
lda #$f
|
||||
and print_sbyte.b
|
||||
sta _2
|
||||
//SEG85 [39] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#2 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 print_char::ch#2 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
//SEG85 [39] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#2 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 print_char::ch#2 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
ldy _2
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
sta print_char.ch
|
||||
//SEG86 [40] call print_char param-assignment [ print_char_cursor#10 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 ] )
|
||||
//SEG87 [42] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
@ -5832,7 +5844,6 @@ print_byte: {
|
||||
breturn:
|
||||
//SEG91 [41] return [ print_char_cursor#10 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG92 print_char
|
||||
print_char: {
|
||||
@ -6548,6 +6559,7 @@ divr16u: {
|
||||
//SEG299 [150] return [ divr16u::return#0 ] ( main:2::sin8s_gen:5::div16u:53::divr16u:130 [ divr16u::return#0 ] )
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
REGISTER UPLIFT POTENTIAL REGISTERS
|
||||
Statement [9] (signed byte) main::sb#0 ← *((const signed byte[192]) main::sintab2#0 + (byte) main::i#2) - (signed byte)*((const byte[]) main::sintabref#0 + (byte) main::i#2) [ main::i#2 print_char_cursor#42 main::sb#0 ] ( main:2 [ main::i#2 print_char_cursor#42 main::sb#0 ] ) always clobbers reg byte a
|
||||
@ -7000,9 +7012,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
//SEG78 [36] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG78 [36] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG79 [37] call print_char param-assignment [ print_char_cursor#10 print_sbyte::b#3 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 print_sbyte::b#3 ] )
|
||||
//SEG80 [42] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
print_char_from_print_byte:
|
||||
@ -7015,9 +7027,9 @@ print_byte: {
|
||||
//SEG84 [38] (byte~) print_byte::$2 ← (byte)(signed byte) print_sbyte::b#3 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#10 print_byte::$2 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 print_byte::$2 ] ) -- vbuaa=vbuz1_band_vbuc1
|
||||
lda #$f
|
||||
and print_sbyte.b
|
||||
//SEG85 [39] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#2 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG85 [39] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#2 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG86 [40] call print_char param-assignment [ print_char_cursor#10 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 ] )
|
||||
//SEG87 [42] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
print_char_from_b1:
|
||||
@ -7029,7 +7041,6 @@ print_byte: {
|
||||
breturn:
|
||||
//SEG91 [41] return [ print_char_cursor#10 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG92 print_char
|
||||
print_char: {
|
||||
@ -7651,6 +7662,7 @@ divr16u: {
|
||||
//SEG299 [150] return [ divr16u::return#0 ] ( main:2::sin8s_gen:5::div16u:53::divr16u:130 [ divr16u::return#0 ] )
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
ASSEMBLER OPTIMIZATIONS
|
||||
Removing instruction jmp b33
|
||||
@ -7961,8 +7973,6 @@ FINAL SYMBOL TABLE
|
||||
(label) print_byte::@1
|
||||
(label) print_byte::@return
|
||||
(byte) print_byte::b
|
||||
(byte[]) print_byte::hextab
|
||||
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -7984,6 +7994,8 @@ FINAL SYMBOL TABLE
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 sc zp ZP_WORD:2 16.5
|
||||
(byte*) print_cls::sc#2 sc zp ZP_WORD:2 16.5
|
||||
(byte[]) print_hextab
|
||||
(const string) print_hextab#0 print_hextab = (string) "0123456789abcdef"
|
||||
(byte*) print_line_cursor
|
||||
(const byte*) print_line_cursor#0 print_line_cursor = ((byte*))(word/signed word/dword/signed dword) 1024
|
||||
(void()) print_sbyte((signed byte) print_sbyte::b)
|
||||
@ -8288,9 +8300,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
//SEG78 [36] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG78 [36] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG79 [37] call print_char param-assignment [ print_char_cursor#10 print_sbyte::b#3 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 print_sbyte::b#3 ] )
|
||||
//SEG80 [42] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
//SEG81 [42] phi (byte*) print_char_cursor#27 = (byte*) print_char_cursor#37 [phi:print_byte->print_char#0] -- register_copy
|
||||
@ -8300,9 +8312,9 @@ print_byte: {
|
||||
//SEG84 [38] (byte~) print_byte::$2 ← (byte)(signed byte) print_sbyte::b#3 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#10 print_byte::$2 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 print_byte::$2 ] ) -- vbuaa=vbuz1_band_vbuc1
|
||||
lda #$f
|
||||
and print_sbyte.b
|
||||
//SEG85 [39] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#2 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG85 [39] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#2 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG86 [40] call print_char param-assignment [ print_char_cursor#10 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 ] )
|
||||
//SEG87 [42] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
//SEG88 [42] phi (byte*) print_char_cursor#27 = (byte*) print_char_cursor#10 [phi:print_byte::@1->print_char#0] -- register_copy
|
||||
@ -8311,7 +8323,6 @@ print_byte: {
|
||||
//SEG90 print_byte::@return
|
||||
//SEG91 [41] return [ print_char_cursor#10 ] ( main:2::print_sbyte:15::print_byte:33 [ main::i#2 print_char_cursor#10 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG92 print_char
|
||||
print_char: {
|
||||
@ -8837,4 +8848,5 @@ divr16u: {
|
||||
//SEG299 [150] return [ divr16u::return#0 ] ( main:2::sin8s_gen:5::div16u:53::divr16u:130 [ divr16u::return#0 ] )
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
|
@ -122,8 +122,6 @@
|
||||
(label) print_byte::@1
|
||||
(label) print_byte::@return
|
||||
(byte) print_byte::b
|
||||
(byte[]) print_byte::hextab
|
||||
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -145,6 +143,8 @@
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 sc zp ZP_WORD:2 16.5
|
||||
(byte*) print_cls::sc#2 sc zp ZP_WORD:2 16.5
|
||||
(byte[]) print_hextab
|
||||
(const string) print_hextab#0 print_hextab = (string) "0123456789abcdef"
|
||||
(byte*) print_line_cursor
|
||||
(const byte*) print_line_cursor#0 print_line_cursor = ((byte*))(word/signed word/dword/signed dword) 1024
|
||||
(void()) print_sbyte((signed byte) print_sbyte::b)
|
||||
|
@ -120,15 +120,14 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
lda #$f
|
||||
and print_sbyte.b
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
print_char: {
|
||||
ldy #0
|
||||
@ -793,3 +792,4 @@ div16u: {
|
||||
jsr divr16u
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
@ -88,12 +88,12 @@ print_sbyte::@return: scope:[print_sbyte] from print_sbyte::@1
|
||||
to:@return
|
||||
print_byte: scope:[print_byte] from print_sbyte::@1
|
||||
[43] (byte~) print_byte::$0 ← (byte)(signed byte) print_sbyte::b#3 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_sbyte::b#3 print_char_cursor#37 print_byte::$0 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_byte::$0 ] )
|
||||
[44] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] )
|
||||
[44] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] )
|
||||
[45] call print_char param-assignment [ print_char_cursor#10 print_sbyte::b#3 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 print_sbyte::b#3 ] )
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
[46] (byte~) print_byte::$2 ← (byte)(signed byte) print_sbyte::b#3 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#10 print_byte::$2 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 print_byte::$2 ] )
|
||||
[47] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#2 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 print_char::ch#2 ] )
|
||||
[47] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#2 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 print_char::ch#2 ] )
|
||||
[48] call print_char param-assignment [ print_char_cursor#10 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 ] )
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte::@1
|
||||
|
@ -462,12 +462,13 @@ void print_sdword(signed dword dw) {
|
||||
print_dword((dword)dw);
|
||||
}
|
||||
|
||||
const byte[] print_hextab = "0123456789abcdef";
|
||||
|
||||
// Print a byte as HEX
|
||||
void print_byte(byte b) {
|
||||
// Table of hexadecimal digits
|
||||
const byte[] hextab = "0123456789abcdef";
|
||||
print_char(hextab[b>>4]);
|
||||
print_char(hextab[b&$f]);
|
||||
print_char(print_hextab[b>>4]);
|
||||
print_char(print_hextab[b&$f]);
|
||||
}
|
||||
|
||||
// Print a single char
|
||||
@ -1136,12 +1137,12 @@ print_sdword::@1:
|
||||
print_sdword::@return:
|
||||
return
|
||||
endproc // print_sdword()
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
proc (void()) print_byte((byte) print_byte::b)
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
print_byte::@return:
|
||||
return
|
||||
endproc // print_byte()
|
||||
@ -1502,7 +1503,6 @@ SYMBOLS
|
||||
(void~) print_byte::$3
|
||||
(label) print_byte::@return
|
||||
(byte) print_byte::b
|
||||
(byte[]) print_byte::hextab
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -1520,6 +1520,7 @@ SYMBOLS
|
||||
(void~) print_dword::$3
|
||||
(label) print_dword::@return
|
||||
(dword) print_dword::dw
|
||||
(byte[]) print_hextab
|
||||
(byte*) print_line_cursor
|
||||
(void()) print_ln()
|
||||
(byte*~) print_ln::$0
|
||||
@ -2613,13 +2614,13 @@ print_sdword::@return: scope:[print_sdword] from print_sdword::@1
|
||||
return
|
||||
to:@return
|
||||
@28: scope:[] from @27
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
to:@29
|
||||
print_byte: scope:[print_byte] from
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte
|
||||
return
|
||||
@ -2736,7 +2737,7 @@ Eliminating unused variable - keeping the call (void~) main::$2
|
||||
Eliminating unused variable - keeping the call (void~) main::$12
|
||||
Eliminating unused variable - keeping the call (void~) main::$13
|
||||
Eliminating unused variable - keeping the call (void~) main::$11
|
||||
Creating constant string variable for inline (const string) print_byte::$4 "0123456789abcdef"
|
||||
Creating constant string variable for inline (const string) $0 "0123456789abcdef"
|
||||
Creating constant string variable for inline (const string) main::str " @"
|
||||
Creating constant string variable for inline (const string) main::str1 " @"
|
||||
Removing empty block @1
|
||||
@ -2784,7 +2785,6 @@ Removing empty block @24
|
||||
Removing empty block @25
|
||||
Removing empty block @26
|
||||
Removing empty block @27
|
||||
Removing empty block @28
|
||||
Removing empty block @29
|
||||
Removing empty block @30
|
||||
Removing empty block @31
|
||||
@ -3060,7 +3060,7 @@ mul16u::@return: scope:[mul16u] from mul16u::@3
|
||||
return
|
||||
to:@return
|
||||
@12: scope:[] from @2
|
||||
(word) rem16u#43 ← phi( @2/(word) rem16u#0 )
|
||||
(word) rem16u#45 ← phi( @2/(word) rem16u#0 )
|
||||
(dword) PI2_u4f28#0 ← (dword/signed dword) 1686629713
|
||||
(dword) PI_u4f28#0 ← (dword/signed dword) 843314857
|
||||
(dword) PI_HALF_u4f28#0 ← (dword/signed dword) 421657428
|
||||
@ -3476,11 +3476,11 @@ mulu8_sel::@return: scope:[mulu8_sel] from mulu8_sel::@2
|
||||
return
|
||||
to:@return
|
||||
@18: scope:[] from @12
|
||||
(word) rem16u#42 ← phi( @12/(word) rem16u#43 )
|
||||
(word) rem16u#43 ← phi( @12/(word) rem16u#45 )
|
||||
(byte*) print_screen#0 ← ((byte*)) (word/signed word/dword/signed dword) 1024
|
||||
(byte*) print_line_cursor#0 ← (byte*) print_screen#0
|
||||
(byte*) print_char_cursor#0 ← (byte*) print_line_cursor#0
|
||||
to:@33
|
||||
to:@28
|
||||
print_str: scope:[print_str] from main::@3 main::@8
|
||||
(byte*) print_char_cursor#44 ← phi( main::@3/(byte*) print_char_cursor#42 main::@8/(byte*) print_char_cursor#14 )
|
||||
(byte*) print_str::str#5 ← phi( main::@3/(byte*) print_str::str#2 main::@8/(byte*) print_str::str#1 )
|
||||
@ -3539,12 +3539,18 @@ print_sbyte::@return: scope:[print_sbyte] from print_sbyte::@3
|
||||
(byte*) print_char_cursor#5 ← (byte*) print_char_cursor#23
|
||||
return
|
||||
to:@return
|
||||
@28: scope:[] from @18
|
||||
(byte*) print_screen#8 ← phi( @18/(byte*) print_screen#0 )
|
||||
(byte*) print_char_cursor#48 ← phi( @18/(byte*) print_char_cursor#0 )
|
||||
(byte*) print_line_cursor#15 ← phi( @18/(byte*) print_line_cursor#0 )
|
||||
(word) rem16u#42 ← phi( @18/(word) rem16u#43 )
|
||||
(byte[]) print_hextab#0 ← (const string) $0
|
||||
to:@33
|
||||
print_byte: scope:[print_byte] from print_sbyte::@1
|
||||
(byte*) print_char_cursor#39 ← phi( print_sbyte::@1/(byte*) print_char_cursor#37 )
|
||||
(byte) print_byte::b#1 ← phi( print_sbyte::@1/(byte) print_byte::b#0 )
|
||||
(byte[]) print_byte::hextab#0 ← (const string) print_byte::$4
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b#1 >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(byte) print_char::ch#1 ← *((byte[]) print_byte::hextab#0 + (byte~) print_byte::$0)
|
||||
(byte) print_char::ch#1 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$0)
|
||||
call print_char param-assignment
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
@ -3552,7 +3558,7 @@ print_byte::@1: scope:[print_byte] from print_byte
|
||||
(byte*) print_char_cursor#24 ← phi( print_byte/(byte*) print_char_cursor#10 )
|
||||
(byte*) print_char_cursor#6 ← (byte*) print_char_cursor#24
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(byte) print_char::ch#2 ← *((byte[]) print_byte::hextab#0 + (byte~) print_byte::$2)
|
||||
(byte) print_char::ch#2 ← *((byte[]) print_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
|
||||
@ -3601,8 +3607,8 @@ print_cls::@return: scope:[print_cls] from print_cls::@2
|
||||
return
|
||||
to:@return
|
||||
main: scope:[main] from @33
|
||||
(byte*) print_char_cursor#48 ← phi( @33/(byte*) print_char_cursor#43 )
|
||||
(byte*) print_line_cursor#15 ← phi( @33/(byte*) print_line_cursor#12 )
|
||||
(byte*) print_char_cursor#49 ← phi( @33/(byte*) print_char_cursor#43 )
|
||||
(byte*) print_line_cursor#16 ← phi( @33/(byte*) print_line_cursor#12 )
|
||||
(byte*) print_screen#6 ← phi( @33/(byte*) print_screen#7 )
|
||||
(word) rem16u#36 ← phi( @33/(word) rem16u#38 )
|
||||
(word) main::wavelength#0 ← (byte/word/signed word/dword/signed dword) 192
|
||||
@ -3612,8 +3618,8 @@ main: scope:[main] from @33
|
||||
call sin8s_gen param-assignment
|
||||
to:main::@5
|
||||
main::@5: scope:[main] from main
|
||||
(byte*) print_char_cursor#46 ← phi( main/(byte*) print_char_cursor#48 )
|
||||
(byte*) print_line_cursor#13 ← phi( main/(byte*) print_line_cursor#15 )
|
||||
(byte*) print_char_cursor#46 ← phi( main/(byte*) print_char_cursor#49 )
|
||||
(byte*) print_line_cursor#13 ← phi( main/(byte*) print_line_cursor#16 )
|
||||
(byte*) print_screen#5 ← phi( main/(byte*) print_screen#6 )
|
||||
(word) main::wavelength#1 ← phi( main/(word) main::wavelength#0 )
|
||||
(word) rem16u#26 ← phi( main/(word) rem16u#11 )
|
||||
@ -3632,7 +3638,7 @@ main::@6: scope:[main] from main::@5
|
||||
call print_cls param-assignment
|
||||
to:main::@7
|
||||
main::@7: scope:[main] from main::@6
|
||||
(word) rem16u#47 ← phi( main::@6/(word) rem16u#13 )
|
||||
(word) rem16u#48 ← phi( main::@6/(word) rem16u#13 )
|
||||
(byte*) print_char_cursor#30 ← phi( main::@6/(byte*) print_char_cursor#12 )
|
||||
(byte*) print_line_cursor#7 ← phi( main::@6/(byte*) print_line_cursor#2 )
|
||||
(byte*) print_line_cursor#3 ← (byte*) print_line_cursor#7
|
||||
@ -3640,8 +3646,8 @@ main::@7: scope:[main] from main::@6
|
||||
(byte) main::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
to:main::@1
|
||||
main::@1: scope:[main] from main::@7 main::@9
|
||||
(byte*) print_line_cursor#17 ← phi( main::@7/(byte*) print_line_cursor#3 main::@9/(byte*) print_line_cursor#11 )
|
||||
(word) rem16u#45 ← phi( main::@7/(word) rem16u#47 main::@9/(word) rem16u#37 )
|
||||
(byte*) print_line_cursor#18 ← phi( main::@7/(byte*) print_line_cursor#3 main::@9/(byte*) print_line_cursor#11 )
|
||||
(word) rem16u#46 ← phi( main::@7/(word) rem16u#48 main::@9/(word) rem16u#37 )
|
||||
(byte*) print_char_cursor#47 ← phi( main::@7/(byte*) print_char_cursor#13 main::@9/(byte*) print_char_cursor#15 )
|
||||
(byte) main::i#2 ← phi( main::@7/(byte) main::i#0 main::@9/(byte) main::i#1 )
|
||||
(signed byte) main::sb#0 ← *((signed byte[192]) main::sintabb#0 + (byte) main::i#2)
|
||||
@ -3658,8 +3664,8 @@ main::@1: scope:[main] from main::@7 main::@9
|
||||
if((boolean~) main::$10) goto main::@2
|
||||
to:main::@3
|
||||
main::@2: scope:[main] from main::@1 main::@10
|
||||
(byte*) print_line_cursor#16 ← phi( main::@1/(byte*) print_line_cursor#17 main::@10/(byte*) print_line_cursor#18 )
|
||||
(word) rem16u#44 ← phi( main::@1/(word) rem16u#45 main::@10/(word) rem16u#46 )
|
||||
(byte*) print_line_cursor#17 ← phi( main::@1/(byte*) print_line_cursor#18 main::@10/(byte*) print_line_cursor#19 )
|
||||
(word) rem16u#44 ← phi( main::@1/(word) rem16u#46 main::@10/(word) rem16u#47 )
|
||||
(byte) main::i#5 ← phi( main::@1/(byte) main::i#2 main::@10/(byte) main::i#6 )
|
||||
(byte*) print_char_cursor#41 ← phi( main::@1/(byte*) print_char_cursor#47 main::@10/(byte*) print_char_cursor#16 )
|
||||
(signed byte) main::sd#1 ← phi( main::@1/(signed byte) main::sd#0 main::@10/(signed byte) main::sd#2 )
|
||||
@ -3667,7 +3673,7 @@ main::@2: scope:[main] from main::@1 main::@10
|
||||
call print_sbyte param-assignment
|
||||
to:main::@8
|
||||
main::@8: scope:[main] from main::@2
|
||||
(byte*) print_line_cursor#14 ← phi( main::@2/(byte*) print_line_cursor#16 )
|
||||
(byte*) print_line_cursor#14 ← phi( main::@2/(byte*) print_line_cursor#17 )
|
||||
(word) rem16u#41 ← phi( main::@2/(word) rem16u#44 )
|
||||
(byte) main::i#4 ← phi( main::@2/(byte) main::i#5 )
|
||||
(byte*) print_char_cursor#31 ← phi( main::@2/(byte*) print_char_cursor#5 )
|
||||
@ -3686,8 +3692,8 @@ main::@9: scope:[main] from main::@8
|
||||
if((boolean~) main::$14) goto main::@1
|
||||
to:main::@return
|
||||
main::@3: scope:[main] from main::@1
|
||||
(byte*) print_line_cursor#19 ← phi( main::@1/(byte*) print_line_cursor#17 )
|
||||
(word) rem16u#48 ← phi( main::@1/(word) rem16u#45 )
|
||||
(byte*) print_line_cursor#20 ← phi( main::@1/(byte*) print_line_cursor#18 )
|
||||
(word) rem16u#49 ← phi( main::@1/(word) rem16u#46 )
|
||||
(byte) main::i#7 ← phi( main::@1/(byte) main::i#2 )
|
||||
(signed byte) main::sd#3 ← phi( main::@1/(signed byte) main::sd#0 )
|
||||
(byte*) print_char_cursor#42 ← phi( main::@1/(byte*) print_char_cursor#47 )
|
||||
@ -3695,8 +3701,8 @@ main::@3: scope:[main] from main::@1
|
||||
call print_str param-assignment
|
||||
to:main::@10
|
||||
main::@10: scope:[main] from main::@3
|
||||
(byte*) print_line_cursor#18 ← phi( main::@3/(byte*) print_line_cursor#19 )
|
||||
(word) rem16u#46 ← phi( main::@3/(word) rem16u#48 )
|
||||
(byte*) print_line_cursor#19 ← phi( main::@3/(byte*) print_line_cursor#20 )
|
||||
(word) rem16u#47 ← phi( main::@3/(word) rem16u#49 )
|
||||
(byte) main::i#6 ← phi( main::@3/(byte) main::i#7 )
|
||||
(signed byte) main::sd#2 ← phi( main::@3/(signed byte) main::sd#3 )
|
||||
(byte*) print_char_cursor#33 ← phi( main::@3/(byte*) print_char_cursor#2 )
|
||||
@ -3711,11 +3717,11 @@ main::@return: scope:[main] from main::@9
|
||||
(byte*) print_char_cursor#17 ← (byte*) print_char_cursor#34
|
||||
return
|
||||
to:@return
|
||||
@33: scope:[] from @18
|
||||
(byte*) print_screen#7 ← phi( @18/(byte*) print_screen#0 )
|
||||
(byte*) print_char_cursor#43 ← phi( @18/(byte*) print_char_cursor#0 )
|
||||
(byte*) print_line_cursor#12 ← phi( @18/(byte*) print_line_cursor#0 )
|
||||
(word) rem16u#38 ← phi( @18/(word) rem16u#42 )
|
||||
@33: scope:[] from @28
|
||||
(byte*) print_screen#7 ← phi( @28/(byte*) print_screen#8 )
|
||||
(byte*) print_char_cursor#43 ← phi( @28/(byte*) print_char_cursor#48 )
|
||||
(byte*) print_line_cursor#12 ← phi( @28/(byte*) print_line_cursor#15 )
|
||||
(word) rem16u#38 ← phi( @28/(word) rem16u#42 )
|
||||
call main param-assignment
|
||||
to:@34
|
||||
@34: scope:[] from @33
|
||||
@ -3729,9 +3735,11 @@ main::@return: scope:[main] from main::@9
|
||||
@end: scope:[] from @34
|
||||
|
||||
SYMBOL TABLE SSA
|
||||
(const string) $0 = (string) "0123456789abcdef"
|
||||
(label) @12
|
||||
(label) @18
|
||||
(label) @2
|
||||
(label) @28
|
||||
(label) @33
|
||||
(label) @34
|
||||
(label) @begin
|
||||
@ -4102,7 +4110,6 @@ SYMBOL TABLE SSA
|
||||
(void()) print_byte((byte) print_byte::b)
|
||||
(byte~) print_byte::$0
|
||||
(byte~) print_byte::$2
|
||||
(const string) print_byte::$4 = (string) "0123456789abcdef"
|
||||
(label) print_byte::@1
|
||||
(label) print_byte::@2
|
||||
(label) print_byte::@return
|
||||
@ -4110,8 +4117,6 @@ SYMBOL TABLE SSA
|
||||
(byte) print_byte::b#0
|
||||
(byte) print_byte::b#1
|
||||
(byte) print_byte::b#2
|
||||
(byte[]) print_byte::hextab
|
||||
(byte[]) print_byte::hextab#0
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -4164,6 +4169,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_char_cursor#46
|
||||
(byte*) print_char_cursor#47
|
||||
(byte*) print_char_cursor#48
|
||||
(byte*) print_char_cursor#49
|
||||
(byte*) print_char_cursor#5
|
||||
(byte*) print_char_cursor#6
|
||||
(byte*) print_char_cursor#7
|
||||
@ -4179,6 +4185,8 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_cls::sc#0
|
||||
(byte*) print_cls::sc#1
|
||||
(byte*) print_cls::sc#2
|
||||
(byte[]) print_hextab
|
||||
(byte[]) print_hextab#0
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#0
|
||||
(byte*) print_line_cursor#1
|
||||
@ -4193,6 +4201,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_line_cursor#18
|
||||
(byte*) print_line_cursor#19
|
||||
(byte*) print_line_cursor#2
|
||||
(byte*) print_line_cursor#20
|
||||
(byte*) print_line_cursor#3
|
||||
(byte*) print_line_cursor#4
|
||||
(byte*) print_line_cursor#5
|
||||
@ -4226,6 +4235,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_screen#5
|
||||
(byte*) print_screen#6
|
||||
(byte*) print_screen#7
|
||||
(byte*) print_screen#8
|
||||
(void()) print_str((byte*) print_str::str)
|
||||
(boolean~) print_str::$0
|
||||
(label) print_str::@1
|
||||
@ -4283,6 +4293,7 @@ SYMBOL TABLE SSA
|
||||
(word) rem16u#46
|
||||
(word) rem16u#47
|
||||
(word) rem16u#48
|
||||
(word) rem16u#49
|
||||
(word) rem16u#5
|
||||
(word) rem16u#6
|
||||
(word) rem16u#7
|
||||
@ -4688,8 +4699,8 @@ Not aliassing across scopes: print_screen#1 print_screen#4
|
||||
Not aliassing across scopes: print_cls::sc#0 print_screen#1
|
||||
Not aliassing across scopes: rem16u#36 rem16u#38
|
||||
Not aliassing across scopes: print_screen#6 print_screen#7
|
||||
Not aliassing across scopes: print_line_cursor#15 print_line_cursor#12
|
||||
Not aliassing across scopes: print_char_cursor#48 print_char_cursor#43
|
||||
Not aliassing across scopes: print_line_cursor#16 print_line_cursor#12
|
||||
Not aliassing across scopes: print_char_cursor#49 print_char_cursor#43
|
||||
Not aliassing across scopes: sin8s_gen::sintab#1 main::sintabb#0
|
||||
Not aliassing across scopes: sin8s_gen::wavelength#0 main::wavelength#0
|
||||
Not aliassing across scopes: rem16u#26 rem16u#11
|
||||
@ -4746,7 +4757,7 @@ Alias (dword) mul16u::res#2 = (dword) mul16u::res#5 (dword) mul16u::res#4 (dword
|
||||
Alias (word) mul16u::a#0 = (word~) mul16u::$5
|
||||
Alias (dword) mul16u::mb#1 = (dword~) mul16u::$6
|
||||
Alias (dword) mul16u::res#1 = (dword~) mul16u::$4
|
||||
Alias (word) rem16u#0 = (word) rem16u#43 (word) rem16u#42 (word) rem16u#38
|
||||
Alias (word) rem16u#0 = (word) rem16u#45 (word) rem16u#43 (word) rem16u#42 (word) rem16u#38
|
||||
Alias (dword) div32u16u::return#2 = (dword) div32u16u::return#4
|
||||
Alias (signed word*) sin16s_gen::sintab#4 = (signed word*) sin16s_gen::sintab#5
|
||||
Alias (word) sin16s_gen::wavelength#1 = (word) sin16s_gen::wavelength#4
|
||||
@ -4828,7 +4839,7 @@ Alias (word) mulu16_sel::return#12 = (word) mulu16_sel::return#5 (word~) mulu16_
|
||||
Alias (word) mul8u::return#2 = (word) mul8u::return#4
|
||||
Alias (byte) mulu8_sel::select#5 = (byte) mulu8_sel::select#6
|
||||
Alias (byte) mulu8_sel::return#12 = (byte) mulu8_sel::return#5 (byte~) mulu8_sel::$2 (byte) mulu8_sel::return#6
|
||||
Alias (byte*) print_line_cursor#0 = (byte*) print_screen#0 (byte*) print_char_cursor#0 (byte*) print_line_cursor#12 (byte*) print_char_cursor#43 (byte*) print_screen#7
|
||||
Alias (byte*) print_line_cursor#0 = (byte*) print_screen#0 (byte*) print_char_cursor#0 (byte*) print_line_cursor#15 (byte*) print_char_cursor#48 (byte*) print_screen#8 (byte*) print_line_cursor#12 (byte*) print_char_cursor#43 (byte*) print_screen#7
|
||||
Alias (byte*) print_str::str#3 = (byte*) print_str::str#4
|
||||
Alias (byte*) print_char_cursor#19 = (byte*) print_char_cursor#36 (byte*) print_char_cursor#20 (byte*) print_char_cursor#2
|
||||
Alias (byte) print_byte::b#0 = (byte~) print_sbyte::$4
|
||||
@ -4844,22 +4855,22 @@ Alias (byte*) print_char_cursor#10 = (byte*) print_char_cursor#28 (byte*) print_
|
||||
Alias (byte*) print_line_cursor#1 = (byte*) print_screen#3 (byte*) print_screen#2 (byte*) print_char_cursor#11 (byte*) print_line_cursor#6 (byte*) print_char_cursor#29 (byte*) print_line_cursor#2 (byte*) print_char_cursor#12
|
||||
Alias (word) main::wavelength#0 = (word) main::wavelength#1
|
||||
Alias (byte*) print_screen#4 = (byte*) print_screen#5 (byte*) print_screen#6
|
||||
Alias (byte*) print_line_cursor#10 = (byte*) print_line_cursor#13 (byte*) print_line_cursor#15
|
||||
Alias (byte*) print_char_cursor#40 = (byte*) print_char_cursor#46 (byte*) print_char_cursor#48
|
||||
Alias (byte*) print_line_cursor#10 = (byte*) print_line_cursor#13 (byte*) print_line_cursor#16
|
||||
Alias (byte*) print_char_cursor#40 = (byte*) print_char_cursor#46 (byte*) print_char_cursor#49
|
||||
Alias (word) rem16u#12 = (word) rem16u#26
|
||||
Alias (word) rem16u#13 = (word) rem16u#27 (word) rem16u#47
|
||||
Alias (word) rem16u#13 = (word) rem16u#27 (word) rem16u#48
|
||||
Alias (byte*) print_line_cursor#3 = (byte*) print_line_cursor#7
|
||||
Alias (byte*) print_char_cursor#13 = (byte*) print_char_cursor#30
|
||||
Alias (signed byte) main::sd#0 = (signed byte~) main::$8 (signed byte) main::sd#3 (signed byte) main::sd#2
|
||||
Alias (byte) main::i#3 = (byte) main::i#4 (byte) main::i#5
|
||||
Alias (word) rem16u#14 = (word) rem16u#41 (word) rem16u#44 (word) rem16u#37 (word) rem16u#28
|
||||
Alias (byte*) print_line_cursor#11 = (byte*) print_line_cursor#14 (byte*) print_line_cursor#16 (byte*) print_line_cursor#8 (byte*) print_line_cursor#4
|
||||
Alias (byte*) print_line_cursor#11 = (byte*) print_line_cursor#14 (byte*) print_line_cursor#17 (byte*) print_line_cursor#8 (byte*) print_line_cursor#4
|
||||
Alias (byte*) print_char_cursor#14 = (byte*) print_char_cursor#31
|
||||
Alias (byte*) print_char_cursor#15 = (byte*) print_char_cursor#32 (byte*) print_char_cursor#34 (byte*) print_char_cursor#17
|
||||
Alias (byte*) print_char_cursor#42 = (byte*) print_char_cursor#47
|
||||
Alias (byte) main::i#2 = (byte) main::i#7 (byte) main::i#6
|
||||
Alias (word) rem16u#45 = (word) rem16u#48 (word) rem16u#46
|
||||
Alias (byte*) print_line_cursor#17 = (byte*) print_line_cursor#19 (byte*) print_line_cursor#18
|
||||
Alias (word) rem16u#46 = (word) rem16u#49 (word) rem16u#47
|
||||
Alias (byte*) print_line_cursor#18 = (byte*) print_line_cursor#20 (byte*) print_line_cursor#19
|
||||
Alias (byte*) print_char_cursor#16 = (byte*) print_char_cursor#33
|
||||
Alias (word) rem16u#15 = (word) rem16u#29
|
||||
Alias (byte*) print_line_cursor#5 = (byte*) print_line_cursor#9
|
||||
@ -5016,8 +5027,8 @@ Alias (byte) sin16s::isUpper#2 = (byte) sin16s::isUpper#8
|
||||
Alias (byte) sin8s::isUpper#10 = (byte) sin8s::isUpper#3 (byte) sin8s::isUpper#2
|
||||
Alias (signed byte) main::sd#0 = (signed byte) main::sd#1
|
||||
Alias (byte) main::i#2 = (byte) main::i#3
|
||||
Alias (word) rem16u#14 = (word) rem16u#45
|
||||
Alias (byte*) print_line_cursor#11 = (byte*) print_line_cursor#17
|
||||
Alias (word) rem16u#14 = (word) rem16u#46
|
||||
Alias (byte*) print_line_cursor#11 = (byte*) print_line_cursor#18
|
||||
Succesful SSA optimization Pass2AliasElimination
|
||||
Not aliassing across scopes: divr16u::rem#11 divr16u::rem#3
|
||||
Not aliassing across scopes: divr16u::dividend#6 divr16u::dividend#1
|
||||
@ -5282,7 +5293,7 @@ Constant (const byte) mulu8_sel::select#3 = 0
|
||||
Constant (const byte) mulu8_sel::select#4 = 0
|
||||
Constant (const byte*) print_line_cursor#0 = ((byte*))1024
|
||||
Constant (const byte) print_char::ch#0 = '-'
|
||||
Constant (const string) print_byte::hextab#0 = print_byte::$4
|
||||
Constant (const string) print_hextab#0 = $0
|
||||
Constant (const word) main::wavelength#0 = 192
|
||||
Constant (const signed byte[192]) main::sintabb#0 = { fill( 192, 0) }
|
||||
Constant (const signed word[192]) main::sintabw#0 = { fill( 192, 0) }
|
||||
@ -5328,6 +5339,7 @@ Culled Empty Block (label) mul16u::@3
|
||||
Culled Empty Block (label) @12
|
||||
Culled Empty Block (label) @18
|
||||
Culled Empty Block (label) print_sbyte::@3
|
||||
Culled Empty Block (label) @28
|
||||
Culled Empty Block (label) print_byte::@2
|
||||
Culled Empty Block (label) print_cls::@2
|
||||
Culled Empty Block (label) main::@7
|
||||
@ -5700,6 +5712,7 @@ Constant inlined divr16u::rem#4 = (byte/signed byte/word/signed word/dword/signe
|
||||
Constant inlined sin16s_gen::wavelength#0 = (const word) main::wavelength#0
|
||||
Constant inlined div32u16u::dividend#0 = (const dword) PI2_u4f28#0
|
||||
Constant inlined sin16s::isUpper#0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Constant inlined $0 = (const string) print_hextab#0
|
||||
Constant inlined sin8s::isUpper#1 = (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
Constant inlined sin8s::isUpper#0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Constant inlined sin8s_gen::x#0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
@ -5738,7 +5751,6 @@ Constant inlined sin8s_gen::wavelength#0 = (const word) main::wavelength#0
|
||||
Constant inlined print_str::str#2 = (const string) main::str1
|
||||
Constant inlined div32u16u::divisor#0 = (const word) main::wavelength#0
|
||||
Constant inlined print_str::str#1 = (const string) main::str
|
||||
Constant inlined print_byte::$4 = (const string) print_byte::hextab#0
|
||||
Constant inlined sin8s_gen::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Succesful SSA optimization Pass2ConstantInlining
|
||||
Block Sequence Planned @begin @33 @end main main::@5 main::@6 main::@1 main::@3 main::@2 main::@8 main::@9 main::@return print_str print_str::@1 print_str::@return print_str::@2 print_sbyte print_sbyte::@2 print_sbyte::@4 print_sbyte::@1 print_sbyte::@return print_byte print_byte::@1 print_byte::@return print_char print_char::@return print_cls print_cls::@1 print_cls::@return sin16s_gen sin16s_gen::@3 sin16s_gen::@1 sin16s_gen::@4 sin16s_gen::@return sin16s sin16s::@4 sin16s::@1 sin16s::@5 sin16s::@2 sin16s::@8 sin16s::@9 sin16s::@10 sin16s::@11 sin16s::@12 sin16s::@6 sin16s::@3 sin16s::@return mulu16_sel mulu16_sel::@2 mulu16_sel::@return mul16u mul16u::@1 mul16u::@return mul16u::@2 mul16u::@7 mul16u::@4 div32u16u div32u16u::@2 div32u16u::@3 div32u16u::@return divr16u divr16u::@1 divr16u::@4 divr16u::@2 divr16u::@5 divr16u::@3 divr16u::@6 divr16u::@return sin8s_gen sin8s_gen::@3 sin8s_gen::@1 sin8s_gen::@4 sin8s_gen::@return sin8s sin8s::@5 sin8s::@1 sin8s::@6 sin8s::@2 sin8s::@10 sin8s::@11 sin8s::@12 sin8s::@13 sin8s::@14 sin8s::@7 sin8s::@3 sin8s::@8 sin8s::@4 sin8s::@return mulu8_sel mulu8_sel::@2 mulu8_sel::@return mul8u mul8u::@1 mul8u::@return mul8u::@2 mul8u::@7 mul8u::@4 div16u div16u::@2 div16u::@return
|
||||
@ -5833,25 +5845,25 @@ Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Created 51 initial phi equivalence classes
|
||||
Coalesced [19] print_char_cursor#52 ← print_char_cursor#42
|
||||
Coalesced [21] print_char_cursor#51 ← print_char_cursor#19
|
||||
Coalesced [25] print_char_cursor#53 ← print_char_cursor#10
|
||||
Coalesced [19] print_char_cursor#53 ← print_char_cursor#42
|
||||
Coalesced [21] print_char_cursor#52 ← print_char_cursor#19
|
||||
Coalesced [25] print_char_cursor#54 ← print_char_cursor#10
|
||||
Coalesced [30] main::i#8 ← main::i#1
|
||||
Coalesced [31] print_char_cursor#49 ← print_char_cursor#19
|
||||
Coalesced (already) [32] print_char_cursor#50 ← print_char_cursor#42
|
||||
Coalesced [31] print_char_cursor#50 ← print_char_cursor#19
|
||||
Coalesced (already) [32] print_char_cursor#51 ← print_char_cursor#42
|
||||
Coalesced [34] print_str::str#6 ← print_str::str#5
|
||||
Coalesced (already) [35] print_char_cursor#54 ← print_char_cursor#44
|
||||
Coalesced (already) [35] print_char_cursor#55 ← print_char_cursor#44
|
||||
Coalesced [42] print_str::str#7 ← print_str::str#0
|
||||
Coalesced [43] print_char_cursor#55 ← print_char_cursor#1
|
||||
Coalesced [45] print_char_cursor#60 ← print_char_cursor#41
|
||||
Coalesced [43] print_char_cursor#56 ← print_char_cursor#1
|
||||
Coalesced [45] print_char_cursor#61 ← print_char_cursor#41
|
||||
Coalesced [48] print_sbyte::b#7 ← print_sbyte::b#0
|
||||
Coalesced [49] print_char_cursor#57 ← print_char_cursor#10
|
||||
Coalesced [49] print_char_cursor#58 ← print_char_cursor#10
|
||||
Coalesced [53] print_sbyte::b#6 ← print_sbyte::b#1
|
||||
Coalesced (already) [54] print_char_cursor#56 ← print_char_cursor#41
|
||||
Coalesced (already) [54] print_char_cursor#57 ← print_char_cursor#41
|
||||
Coalesced [57] print_char::ch#4 ← print_char::ch#1
|
||||
Coalesced (already) [58] print_char_cursor#58 ← print_char_cursor#37
|
||||
Coalesced (already) [58] print_char_cursor#59 ← print_char_cursor#37
|
||||
Coalesced [62] print_char::ch#5 ← print_char::ch#2
|
||||
Coalesced (already) [63] print_char_cursor#59 ← print_char_cursor#10
|
||||
Coalesced (already) [63] print_char_cursor#60 ← print_char_cursor#10
|
||||
Coalesced [76] print_cls::sc#3 ← print_cls::sc#1
|
||||
Coalesced [92] sin16s_gen::x#4 ← sin16s_gen::x#1
|
||||
Coalesced [93] sin16s_gen::sintab#6 ← sin16s_gen::sintab#0
|
||||
@ -6075,12 +6087,12 @@ print_sbyte::@return: scope:[print_sbyte] from print_sbyte::@1
|
||||
to:@return
|
||||
print_byte: scope:[print_byte] from print_sbyte::@1
|
||||
[43] (byte~) print_byte::$0 ← (byte)(signed byte) print_sbyte::b#3 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_sbyte::b#3 print_char_cursor#37 print_byte::$0 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_byte::$0 ] )
|
||||
[44] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] )
|
||||
[44] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] )
|
||||
[45] call print_char param-assignment [ print_char_cursor#10 print_sbyte::b#3 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 print_sbyte::b#3 ] )
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
[46] (byte~) print_byte::$2 ← (byte)(signed byte) print_sbyte::b#3 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#10 print_byte::$2 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 print_byte::$2 ] )
|
||||
[47] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#2 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 print_char::ch#2 ] )
|
||||
[47] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#2 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 print_char::ch#2 ] )
|
||||
[48] call print_char param-assignment [ print_char_cursor#10 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 ] )
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte::@1
|
||||
@ -6786,7 +6798,6 @@ VARIABLE REGISTER WEIGHTS
|
||||
(byte~) print_byte::$0 4.0
|
||||
(byte~) print_byte::$2 4.0
|
||||
(byte) print_byte::b
|
||||
(byte[]) print_byte::hextab
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(byte) print_char::ch
|
||||
(byte) print_char::ch#1 4.0
|
||||
@ -6805,6 +6816,7 @@ VARIABLE REGISTER WEIGHTS
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 16.5
|
||||
(byte*) print_cls::sc#2 16.5
|
||||
(byte[]) print_hextab
|
||||
(byte*) print_line_cursor
|
||||
(void()) print_sbyte((signed byte) print_sbyte::b)
|
||||
(signed byte) print_sbyte::b
|
||||
@ -7513,9 +7525,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
sta _0
|
||||
//SEG88 [44] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
//SEG88 [44] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
ldy _0
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
sta print_char.ch
|
||||
//SEG89 [45] call print_char param-assignment [ print_char_cursor#10 print_sbyte::b#3 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 print_sbyte::b#3 ] )
|
||||
//SEG90 [50] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
@ -7530,9 +7542,9 @@ print_byte: {
|
||||
lda #$f
|
||||
and print_sbyte.b
|
||||
sta _2
|
||||
//SEG95 [47] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#2 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 print_char::ch#2 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
//SEG95 [47] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#2 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 print_char::ch#2 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
ldy _2
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
sta print_char.ch
|
||||
//SEG96 [48] call print_char param-assignment [ print_char_cursor#10 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 ] )
|
||||
//SEG97 [50] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
@ -7545,7 +7557,6 @@ print_byte: {
|
||||
breturn:
|
||||
//SEG101 [49] return [ print_char_cursor#10 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG102 print_char
|
||||
print_char: {
|
||||
@ -9017,6 +9028,7 @@ div16u: {
|
||||
//SEG478 [243] return [ div16u::return#0 ] ( main:2::sin8s_gen:5::div16u:163 [ div16u::return#0 ] )
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
REGISTER UPLIFT POTENTIAL REGISTERS
|
||||
Statement [12] (word~) main::$3 ← ((word)) (byte) main::i#2 [ main::i#2 print_char_cursor#42 main::sb#0 main::$3 ] ( main:2 [ main::i#2 print_char_cursor#42 main::sb#0 main::$3 ] ) always clobbers reg byte a
|
||||
@ -9754,9 +9766,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
//SEG88 [44] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG88 [44] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG89 [45] call print_char param-assignment [ print_char_cursor#10 print_sbyte::b#3 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 print_sbyte::b#3 ] )
|
||||
//SEG90 [50] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
print_char_from_print_byte:
|
||||
@ -9769,9 +9781,9 @@ print_byte: {
|
||||
//SEG94 [46] (byte~) print_byte::$2 ← (byte)(signed byte) print_sbyte::b#3 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#10 print_byte::$2 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 print_byte::$2 ] ) -- vbuaa=vbuz1_band_vbuc1
|
||||
lda #$f
|
||||
and print_sbyte.b
|
||||
//SEG95 [47] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#2 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG95 [47] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#2 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG96 [48] call print_char param-assignment [ print_char_cursor#10 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 ] )
|
||||
//SEG97 [50] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
print_char_from_b1:
|
||||
@ -9783,7 +9795,6 @@ print_byte: {
|
||||
breturn:
|
||||
//SEG101 [49] return [ print_char_cursor#10 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG102 print_char
|
||||
print_char: {
|
||||
@ -11036,6 +11047,7 @@ div16u: {
|
||||
//SEG478 [243] return [ div16u::return#0 ] ( main:2::sin8s_gen:5::div16u:163 [ div16u::return#0 ] )
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
ASSEMBLER OPTIMIZATIONS
|
||||
Removing instruction jmp b33
|
||||
@ -11522,8 +11534,6 @@ FINAL SYMBOL TABLE
|
||||
(label) print_byte::@1
|
||||
(label) print_byte::@return
|
||||
(byte) print_byte::b
|
||||
(byte[]) print_byte::hextab
|
||||
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -11545,6 +11555,8 @@ FINAL SYMBOL TABLE
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 sc zp ZP_WORD:2 16.5
|
||||
(byte*) print_cls::sc#2 sc zp ZP_WORD:2 16.5
|
||||
(byte[]) print_hextab
|
||||
(const string) print_hextab#0 print_hextab = (string) "0123456789abcdef"
|
||||
(byte*) print_line_cursor
|
||||
(const byte*) print_line_cursor#0 print_line_cursor = ((byte*))(word/signed word/dword/signed dword) 1024
|
||||
(void()) print_sbyte((signed byte) print_sbyte::b)
|
||||
@ -11963,9 +11975,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
//SEG88 [44] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG88 [44] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_sbyte::b#3 print_char_cursor#37 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG89 [45] call print_char param-assignment [ print_char_cursor#10 print_sbyte::b#3 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 print_sbyte::b#3 ] )
|
||||
//SEG90 [50] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
//SEG91 [50] phi (byte*) print_char_cursor#27 = (byte*) print_char_cursor#37 [phi:print_byte->print_char#0] -- register_copy
|
||||
@ -11975,9 +11987,9 @@ print_byte: {
|
||||
//SEG94 [46] (byte~) print_byte::$2 ← (byte)(signed byte) print_sbyte::b#3 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#10 print_byte::$2 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 print_byte::$2 ] ) -- vbuaa=vbuz1_band_vbuc1
|
||||
lda #$f
|
||||
and print_sbyte.b
|
||||
//SEG95 [47] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#2 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG95 [47] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#10 print_char::ch#2 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG96 [48] call print_char param-assignment [ print_char_cursor#10 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 ] )
|
||||
//SEG97 [50] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
//SEG98 [50] phi (byte*) print_char_cursor#27 = (byte*) print_char_cursor#10 [phi:print_byte::@1->print_char#0] -- register_copy
|
||||
@ -11986,7 +11998,6 @@ print_byte: {
|
||||
//SEG100 print_byte::@return
|
||||
//SEG101 [49] return [ print_char_cursor#10 ] ( main:2::print_sbyte:23::print_byte:41 [ main::i#2 print_char_cursor#10 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG102 print_char
|
||||
print_char: {
|
||||
@ -13070,4 +13081,5 @@ div16u: {
|
||||
//SEG478 [243] return [ div16u::return#0 ] ( main:2::sin8s_gen:5::div16u:163 [ div16u::return#0 ] )
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
|
@ -208,8 +208,6 @@
|
||||
(label) print_byte::@1
|
||||
(label) print_byte::@return
|
||||
(byte) print_byte::b
|
||||
(byte[]) print_byte::hextab
|
||||
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -231,6 +229,8 @@
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 sc zp ZP_WORD:2 16.5
|
||||
(byte*) print_cls::sc#2 sc zp ZP_WORD:2 16.5
|
||||
(byte[]) print_hextab
|
||||
(const string) print_hextab#0 print_hextab = (string) "0123456789abcdef"
|
||||
(byte*) print_line_cursor
|
||||
(const byte*) print_line_cursor#0 print_line_cursor = ((byte*))(word/signed word/dword/signed dword) 1024
|
||||
(void()) print_sbyte((signed byte) print_sbyte::b)
|
||||
|
@ -209,15 +209,14 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
lda #$f
|
||||
and b
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
print_char: {
|
||||
ldy #0
|
||||
@ -552,3 +551,4 @@ print_cls: {
|
||||
bne b1
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
@ -87,7 +87,7 @@ sin8u_table::@16: scope:[sin8u_table] from sin8u_table::@15
|
||||
[44] (byte) sin8u_table::sinx_tr#0 ← (const byte) sin8u_table::mid#0 + (byte~) sin8u_table::$21 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 ] )
|
||||
[45] *((byte*) sin8u_table::sintab#2) ← (byte) sin8u_table::sinx_tr#0 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 ] )
|
||||
[46] (byte*) sin8u_table::sintab#1 ← ++ (byte*) sin8u_table::sintab#2 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 ] )
|
||||
[47] (byte*~) print_char_cursor#121 ← (byte*) print_line_cursor#1 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#121 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#121 print_line_cursor#1 ] )
|
||||
[47] (byte*~) print_char_cursor#122 ← (byte*) print_line_cursor#1 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#122 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#122 print_line_cursor#1 ] )
|
||||
[48] call print_str param-assignment [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 ] )
|
||||
to:sin8u_table::@17
|
||||
sin8u_table::@17: scope:[sin8u_table] from sin8u_table::@16
|
||||
@ -145,12 +145,12 @@ print_byte: scope:[print_byte] from print_sbyte::@1 print_word print_word::@1 s
|
||||
[74] (byte*) print_char_cursor#97 ← phi( print_sbyte::@1/(byte*) print_char_cursor#94 print_word/(byte*) print_char_cursor#96 print_word::@1/(byte*) print_char_cursor#17 sin8u_table::@10/(byte*) print_char_cursor#2 sin8u_table::@12/(byte*) print_char_cursor#2 sin8u_table::@23/(byte*) print_char_cursor#2 sin8u_table::@6/(byte*) print_char_cursor#2 sin8u_table::@8/(byte*) print_char_cursor#2 ) [ print_byte::b#8 print_char_cursor#97 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 ] )
|
||||
[74] (byte) print_byte::b#8 ← phi( print_sbyte::@1/(byte~) print_byte::b#10 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 sin8u_table::@10/(const byte) sin8u_table::amplitude#0 sin8u_table::@12/(const byte) sin8u_table::mid#0 sin8u_table::@23/(byte) print_byte::b#7 sin8u_table::@6/(const byte) sin8u_table::min#0 sin8u_table::@8/(const byte) sin8u_table::max#0 ) [ print_byte::b#8 print_char_cursor#97 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 ] )
|
||||
[75] (byte~) print_byte::$0 ← (byte) print_byte::b#8 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#8 print_char_cursor#97 print_byte::$0 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] )
|
||||
[76] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] )
|
||||
[76] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] )
|
||||
[77] call print_char param-assignment [ print_char_cursor#17 print_byte::b#8 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::b#8 ] )
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
[78] (byte~) print_byte::$2 ← (byte) print_byte::b#8 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#17 print_byte::$2 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::$2 ] )
|
||||
[79] (byte) print_char::ch#3 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#17 print_char::ch#3 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] )
|
||||
[79] (byte) print_char::ch#3 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#17 print_char::ch#3 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] )
|
||||
[80] call print_char param-assignment [ print_char_cursor#17 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] )
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte::@1
|
||||
@ -166,7 +166,7 @@ print_char::@return: scope:[print_char] from print_char
|
||||
[85] return [ print_char_cursor#17 ] ( main:2::sin8u_table:7::print_byte:19::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:23::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:27::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:31::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:62::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:103::print_char:77 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:103::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:105::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:105::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:19::print_char:80 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:23::print_char:80 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:27::print_char:80 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:31::print_char:80 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:62::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:103::print_char:80 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:103::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:105::print_char:80 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:105::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_char:95 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sword::w#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sbyte:54::print_char:109 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sbyte::b#1 print_char_cursor#17 ] )
|
||||
to:@return
|
||||
print_str: scope:[print_str] from sin8u_table::@11 sin8u_table::@16 sin8u_table::@18 sin8u_table::@20 sin8u_table::@22 sin8u_table::@3 sin8u_table::@5 sin8u_table::@7 sin8u_table::@9
|
||||
[86] (byte*) print_char_cursor#102 ← phi( sin8u_table::@11/(byte*) print_char_cursor#17 sin8u_table::@16/(byte*~) print_char_cursor#121 sin8u_table::@18/(byte*) print_char_cursor#17 sin8u_table::@20/(byte*) print_char_cursor#17 sin8u_table::@22/(byte*) print_char_cursor#17 sin8u_table::@3/((byte*))(word/signed word/dword/signed dword) 1024 sin8u_table::@5/(byte*) print_char_cursor#17 sin8u_table::@7/(byte*) print_char_cursor#17 sin8u_table::@9/(byte*) print_char_cursor#17 ) [ print_str::str#12 print_char_cursor#102 ] ( main:2::sin8u_table:7::print_str:13 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:17 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:21 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:25 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:29 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:48 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:52 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:56 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:60 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] )
|
||||
[86] (byte*) print_char_cursor#102 ← phi( sin8u_table::@11/(byte*) print_char_cursor#17 sin8u_table::@16/(byte*~) print_char_cursor#122 sin8u_table::@18/(byte*) print_char_cursor#17 sin8u_table::@20/(byte*) print_char_cursor#17 sin8u_table::@22/(byte*) print_char_cursor#17 sin8u_table::@3/((byte*))(word/signed word/dword/signed dword) 1024 sin8u_table::@5/(byte*) print_char_cursor#17 sin8u_table::@7/(byte*) print_char_cursor#17 sin8u_table::@9/(byte*) print_char_cursor#17 ) [ print_str::str#12 print_char_cursor#102 ] ( main:2::sin8u_table:7::print_str:13 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:17 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:21 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:25 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:29 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:48 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:52 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:56 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:60 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] )
|
||||
[86] (byte*) print_str::str#12 ← phi( sin8u_table::@11/(const string) sin8u_table::str4 sin8u_table::@16/(const string) sin8u_table::str5 sin8u_table::@18/(const string) sin8u_table::str6 sin8u_table::@20/(const string) sin8u_table::str7 sin8u_table::@22/(const string) sin8u_table::str8 sin8u_table::@3/(const string) sin8u_table::str sin8u_table::@5/(const string) sin8u_table::str1 sin8u_table::@7/(const string) sin8u_table::str2 sin8u_table::@9/(const string) sin8u_table::str3 ) [ print_str::str#12 print_char_cursor#102 ] ( main:2::sin8u_table:7::print_str:13 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:17 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:21 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:25 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:29 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:48 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:52 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:56 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:60 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] )
|
||||
to:print_str::@1
|
||||
print_str::@1: scope:[print_str] from print_str print_str::@2
|
||||
|
@ -507,12 +507,13 @@ void print_sdword(signed dword dw) {
|
||||
print_dword((dword)dw);
|
||||
}
|
||||
|
||||
const byte[] print_hextab = "0123456789abcdef";
|
||||
|
||||
// Print a byte as HEX
|
||||
void print_byte(byte b) {
|
||||
// Table of hexadecimal digits
|
||||
const byte[] hextab = "0123456789abcdef";
|
||||
print_char(hextab[b>>4]);
|
||||
print_char(hextab[b&$f]);
|
||||
print_char(print_hextab[b>>4]);
|
||||
print_char(print_hextab[b&$f]);
|
||||
}
|
||||
|
||||
// Print a single char
|
||||
@ -1183,12 +1184,12 @@ print_sdword::@1:
|
||||
print_sdword::@return:
|
||||
return
|
||||
endproc // print_sdword()
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
proc (void()) print_byte((byte) print_byte::b)
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
print_byte::@return:
|
||||
return
|
||||
endproc // print_byte()
|
||||
@ -1559,7 +1560,6 @@ SYMBOLS
|
||||
(void~) print_byte::$3
|
||||
(label) print_byte::@return
|
||||
(byte) print_byte::b
|
||||
(byte[]) print_byte::hextab
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -1577,6 +1577,7 @@ SYMBOLS
|
||||
(void~) print_dword::$3
|
||||
(label) print_dword::@return
|
||||
(dword) print_dword::dw
|
||||
(byte[]) print_hextab
|
||||
(byte*) print_line_cursor
|
||||
(void()) print_ln()
|
||||
(byte*~) print_ln::$0
|
||||
@ -2720,13 +2721,13 @@ print_sdword::@return: scope:[print_sdword] from print_sdword::@1
|
||||
return
|
||||
to:@return
|
||||
@28: scope:[] from @27
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
to:@29
|
||||
print_byte: scope:[print_byte] from
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte
|
||||
return
|
||||
@ -2899,7 +2900,7 @@ Eliminating unused variable - keeping the call (void~) sin8u_table::$28
|
||||
Eliminating unused variable - keeping the call (void~) sin8u_table::$29
|
||||
Eliminating unused variable - keeping the call (void~) sin8u_table::$30
|
||||
Eliminating unused variable - keeping the call (void~) sin8u_table::$31
|
||||
Creating constant string variable for inline (const string) print_byte::$4 "0123456789abcdef"
|
||||
Creating constant string variable for inline (const string) $0 "0123456789abcdef"
|
||||
Creating constant string variable for inline (const string) sin8u_table::str "step:@"
|
||||
Creating constant string variable for inline (const string) sin8u_table::str1 " min:@"
|
||||
Creating constant string variable for inline (const string) sin8u_table::str2 " max:@"
|
||||
@ -2946,7 +2947,6 @@ Removing empty block @24
|
||||
Removing empty block @25
|
||||
Removing empty block @26
|
||||
Removing empty block @27
|
||||
Removing empty block @28
|
||||
Removing empty block @29
|
||||
Removing empty block @30
|
||||
Removing empty block @31
|
||||
@ -3192,7 +3192,7 @@ mul8su::@return: scope:[mul8su] from mul8su::@1
|
||||
return
|
||||
to:@return
|
||||
@12: scope:[] from @2
|
||||
(word) rem16u#26 ← phi( @2/(word) rem16u#0 )
|
||||
(word) rem16u#28 ← phi( @2/(word) rem16u#0 )
|
||||
(word) PI2_u4f12#0 ← (word/signed word/dword/signed dword) 25736
|
||||
(word) PI_u4f12#0 ← (word/signed word/dword/signed dword) 12868
|
||||
(word) PI_HALF_u4f12#0 ← (word/signed word/dword/signed dword) 6434
|
||||
@ -3354,11 +3354,11 @@ mulu8_sel::@return: scope:[mulu8_sel] from mulu8_sel::@2
|
||||
return
|
||||
to:@return
|
||||
@18: scope:[] from @12
|
||||
(word) rem16u#25 ← phi( @12/(word) rem16u#26 )
|
||||
(word) rem16u#26 ← phi( @12/(word) rem16u#28 )
|
||||
(byte*) print_screen#0 ← ((byte*)) (word/signed word/dword/signed dword) 1024
|
||||
(byte*) print_line_cursor#0 ← (byte*) print_screen#0
|
||||
(byte*) print_char_cursor#0 ← (byte*) print_line_cursor#0
|
||||
to:@34
|
||||
to:@28
|
||||
print_str: scope:[print_str] from sin8u_table::@11 sin8u_table::@16 sin8u_table::@18 sin8u_table::@20 sin8u_table::@22 sin8u_table::@3 sin8u_table::@5 sin8u_table::@7 sin8u_table::@9
|
||||
(byte*) print_char_cursor#102 ← phi( sin8u_table::@11/(byte*) print_char_cursor#31 sin8u_table::@16/(byte*) print_char_cursor#100 sin8u_table::@18/(byte*) print_char_cursor#36 sin8u_table::@20/(byte*) print_char_cursor#38 sin8u_table::@22/(byte*) print_char_cursor#40 sin8u_table::@3/(byte*) print_char_cursor#99 sin8u_table::@5/(byte*) print_char_cursor#25 sin8u_table::@7/(byte*) print_char_cursor#27 sin8u_table::@9/(byte*) print_char_cursor#29 )
|
||||
(byte*) print_str::str#12 ← phi( sin8u_table::@11/(byte*) print_str::str#5 sin8u_table::@16/(byte*) print_str::str#6 sin8u_table::@18/(byte*) print_str::str#7 sin8u_table::@20/(byte*) print_str::str#8 sin8u_table::@22/(byte*) print_str::str#9 sin8u_table::@3/(byte*) print_str::str#1 sin8u_table::@5/(byte*) print_str::str#2 sin8u_table::@7/(byte*) print_str::str#3 sin8u_table::@9/(byte*) print_str::str#4 )
|
||||
@ -3500,12 +3500,18 @@ print_word::@return: scope:[print_word] from print_word::@2
|
||||
(byte*) print_char_cursor#13 ← (byte*) print_char_cursor#58
|
||||
return
|
||||
to:@return
|
||||
@28: scope:[] from @18
|
||||
(byte*) print_screen#6 ← phi( @18/(byte*) print_screen#0 )
|
||||
(word) rem16u#25 ← phi( @18/(word) rem16u#26 )
|
||||
(byte*) print_char_cursor#107 ← phi( @18/(byte*) print_char_cursor#0 )
|
||||
(byte*) print_line_cursor#30 ← phi( @18/(byte*) print_line_cursor#0 )
|
||||
(byte[]) print_hextab#0 ← (const string) $0
|
||||
to:@34
|
||||
print_byte: scope:[print_byte] from print_sbyte::@1 print_word print_word::@1 sin8u_table::@10 sin8u_table::@12 sin8u_table::@23 sin8u_table::@6 sin8u_table::@8
|
||||
(byte*) print_char_cursor#97 ← phi( print_sbyte::@1/(byte*) print_char_cursor#94 print_word/(byte*) print_char_cursor#96 print_word::@1/(byte*) print_char_cursor#11 sin8u_table::@10/(byte*) print_char_cursor#30 sin8u_table::@12/(byte*) print_char_cursor#32 sin8u_table::@23/(byte*) print_char_cursor#41 sin8u_table::@6/(byte*) print_char_cursor#26 sin8u_table::@8/(byte*) print_char_cursor#28 )
|
||||
(byte) print_byte::b#8 ← phi( print_sbyte::@1/(byte) print_byte::b#0 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 sin8u_table::@10/(byte) print_byte::b#5 sin8u_table::@12/(byte) print_byte::b#6 sin8u_table::@23/(byte) print_byte::b#7 sin8u_table::@6/(byte) print_byte::b#3 sin8u_table::@8/(byte) print_byte::b#4 )
|
||||
(byte[]) print_byte::hextab#0 ← (const string) print_byte::$4
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b#8 >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(byte) print_char::ch#2 ← *((byte[]) print_byte::hextab#0 + (byte~) print_byte::$0)
|
||||
(byte) print_char::ch#2 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$0)
|
||||
call print_char param-assignment
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
@ -3513,7 +3519,7 @@ print_byte::@1: scope:[print_byte] from print_byte
|
||||
(byte*) print_char_cursor#59 ← phi( print_byte/(byte*) print_char_cursor#18 )
|
||||
(byte*) print_char_cursor#14 ← (byte*) print_char_cursor#59
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b#9 & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(byte) print_char::ch#3 ← *((byte[]) print_byte::hextab#0 + (byte~) print_byte::$2)
|
||||
(byte) print_char::ch#3 ← *((byte[]) print_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
|
||||
@ -3602,7 +3608,7 @@ main::@return: scope:[main] from main::@2
|
||||
to:@return
|
||||
sin8u_table: scope:[sin8u_table] from main::@1
|
||||
(byte*) sin8u_table::sintab#26 ← phi( main::@1/(byte*) sin8u_table::sintab#0 )
|
||||
(byte*) print_line_cursor#48 ← phi( main::@1/(byte*) print_line_cursor#5 )
|
||||
(byte*) print_line_cursor#49 ← phi( main::@1/(byte*) print_line_cursor#5 )
|
||||
(byte*) print_char_cursor#105 ← phi( main::@1/(byte*) print_char_cursor#21 )
|
||||
(word) rem16u#20 ← phi( main::@1/(word) rem16u#19 )
|
||||
(word) sin8u_table::tabsize#1 ← phi( main::@1/(word) sin8u_table::tabsize#0 )
|
||||
@ -3625,7 +3631,7 @@ sin8u_table: scope:[sin8u_table] from main::@1
|
||||
sin8u_table::@3: scope:[sin8u_table] from sin8u_table
|
||||
(word) sin8u_table::tabsize#25 ← phi( sin8u_table/(word) sin8u_table::tabsize#1 )
|
||||
(byte*) sin8u_table::sintab#25 ← phi( sin8u_table/(byte*) sin8u_table::sintab#26 )
|
||||
(byte*) print_line_cursor#46 ← phi( sin8u_table/(byte*) print_line_cursor#48 )
|
||||
(byte*) print_line_cursor#47 ← phi( sin8u_table/(byte*) print_line_cursor#49 )
|
||||
(byte) sin8u_table::mid#21 ← phi( sin8u_table/(byte) sin8u_table::mid#0 )
|
||||
(byte) sin8u_table::amplitude#19 ← phi( sin8u_table/(byte) sin8u_table::amplitude#0 )
|
||||
(byte) sin8u_table::max#7 ← phi( sin8u_table/(byte) sin8u_table::max#1 )
|
||||
@ -3640,10 +3646,10 @@ sin8u_table::@3: scope:[sin8u_table] from sin8u_table
|
||||
call print_str param-assignment
|
||||
to:sin8u_table::@4
|
||||
sin8u_table::@4: scope:[sin8u_table] from sin8u_table::@3
|
||||
(word) rem16u#47 ← phi( sin8u_table::@3/(word) rem16u#7 )
|
||||
(word) rem16u#48 ← phi( sin8u_table::@3/(word) rem16u#7 )
|
||||
(word) sin8u_table::tabsize#24 ← phi( sin8u_table::@3/(word) sin8u_table::tabsize#25 )
|
||||
(byte*) sin8u_table::sintab#24 ← phi( sin8u_table::@3/(byte*) sin8u_table::sintab#25 )
|
||||
(byte*) print_line_cursor#44 ← phi( sin8u_table::@3/(byte*) print_line_cursor#46 )
|
||||
(byte*) print_line_cursor#45 ← phi( sin8u_table::@3/(byte*) print_line_cursor#47 )
|
||||
(byte) sin8u_table::mid#19 ← phi( sin8u_table::@3/(byte) sin8u_table::mid#21 )
|
||||
(byte) sin8u_table::amplitude#17 ← phi( sin8u_table::@3/(byte) sin8u_table::amplitude#19 )
|
||||
(byte) sin8u_table::max#6 ← phi( sin8u_table::@3/(byte) sin8u_table::max#7 )
|
||||
@ -3655,11 +3661,11 @@ sin8u_table::@4: scope:[sin8u_table] from sin8u_table::@3
|
||||
call print_word param-assignment
|
||||
to:sin8u_table::@5
|
||||
sin8u_table::@5: scope:[sin8u_table] from sin8u_table::@4
|
||||
(word) rem16u#46 ← phi( sin8u_table::@4/(word) rem16u#47 )
|
||||
(word) rem16u#47 ← phi( sin8u_table::@4/(word) rem16u#48 )
|
||||
(word) sin8u_table::tabsize#23 ← phi( sin8u_table::@4/(word) sin8u_table::tabsize#24 )
|
||||
(word) sin8u_table::step#23 ← phi( sin8u_table::@4/(word) sin8u_table::step#1 )
|
||||
(byte*) sin8u_table::sintab#23 ← phi( sin8u_table::@4/(byte*) sin8u_table::sintab#24 )
|
||||
(byte*) print_line_cursor#42 ← phi( sin8u_table::@4/(byte*) print_line_cursor#44 )
|
||||
(byte*) print_line_cursor#43 ← phi( sin8u_table::@4/(byte*) print_line_cursor#45 )
|
||||
(byte) sin8u_table::mid#17 ← phi( sin8u_table::@4/(byte) sin8u_table::mid#19 )
|
||||
(byte) sin8u_table::amplitude#14 ← phi( sin8u_table::@4/(byte) sin8u_table::amplitude#17 )
|
||||
(byte) sin8u_table::max#5 ← phi( sin8u_table::@4/(byte) sin8u_table::max#6 )
|
||||
@ -3670,11 +3676,11 @@ sin8u_table::@5: scope:[sin8u_table] from sin8u_table::@4
|
||||
call print_str param-assignment
|
||||
to:sin8u_table::@6
|
||||
sin8u_table::@6: scope:[sin8u_table] from sin8u_table::@5
|
||||
(word) rem16u#45 ← phi( sin8u_table::@5/(word) rem16u#46 )
|
||||
(word) rem16u#46 ← phi( sin8u_table::@5/(word) rem16u#47 )
|
||||
(word) sin8u_table::tabsize#22 ← phi( sin8u_table::@5/(word) sin8u_table::tabsize#23 )
|
||||
(word) sin8u_table::step#22 ← phi( sin8u_table::@5/(word) sin8u_table::step#23 )
|
||||
(byte*) sin8u_table::sintab#21 ← phi( sin8u_table::@5/(byte*) sin8u_table::sintab#23 )
|
||||
(byte*) print_line_cursor#40 ← phi( sin8u_table::@5/(byte*) print_line_cursor#42 )
|
||||
(byte*) print_line_cursor#41 ← phi( sin8u_table::@5/(byte*) print_line_cursor#43 )
|
||||
(byte) sin8u_table::mid#15 ← phi( sin8u_table::@5/(byte) sin8u_table::mid#17 )
|
||||
(byte) sin8u_table::amplitude#11 ← phi( sin8u_table::@5/(byte) sin8u_table::amplitude#14 )
|
||||
(byte) sin8u_table::max#4 ← phi( sin8u_table::@5/(byte) sin8u_table::max#5 )
|
||||
@ -3685,11 +3691,11 @@ sin8u_table::@6: scope:[sin8u_table] from sin8u_table::@5
|
||||
call print_byte param-assignment
|
||||
to:sin8u_table::@7
|
||||
sin8u_table::@7: scope:[sin8u_table] from sin8u_table::@6
|
||||
(word) rem16u#44 ← phi( sin8u_table::@6/(word) rem16u#45 )
|
||||
(word) rem16u#45 ← phi( sin8u_table::@6/(word) rem16u#46 )
|
||||
(word) sin8u_table::tabsize#21 ← phi( sin8u_table::@6/(word) sin8u_table::tabsize#22 )
|
||||
(word) sin8u_table::step#21 ← phi( sin8u_table::@6/(word) sin8u_table::step#22 )
|
||||
(byte*) sin8u_table::sintab#19 ← phi( sin8u_table::@6/(byte*) sin8u_table::sintab#21 )
|
||||
(byte*) print_line_cursor#38 ← phi( sin8u_table::@6/(byte*) print_line_cursor#40 )
|
||||
(byte*) print_line_cursor#39 ← phi( sin8u_table::@6/(byte*) print_line_cursor#41 )
|
||||
(byte) sin8u_table::mid#13 ← phi( sin8u_table::@6/(byte) sin8u_table::mid#15 )
|
||||
(byte) sin8u_table::amplitude#8 ← phi( sin8u_table::@6/(byte) sin8u_table::amplitude#11 )
|
||||
(byte) sin8u_table::max#3 ← phi( sin8u_table::@6/(byte) sin8u_table::max#4 )
|
||||
@ -3699,11 +3705,11 @@ sin8u_table::@7: scope:[sin8u_table] from sin8u_table::@6
|
||||
call print_str param-assignment
|
||||
to:sin8u_table::@8
|
||||
sin8u_table::@8: scope:[sin8u_table] from sin8u_table::@7
|
||||
(word) rem16u#43 ← phi( sin8u_table::@7/(word) rem16u#44 )
|
||||
(word) rem16u#44 ← phi( sin8u_table::@7/(word) rem16u#45 )
|
||||
(word) sin8u_table::tabsize#20 ← phi( sin8u_table::@7/(word) sin8u_table::tabsize#21 )
|
||||
(word) sin8u_table::step#20 ← phi( sin8u_table::@7/(word) sin8u_table::step#21 )
|
||||
(byte*) sin8u_table::sintab#17 ← phi( sin8u_table::@7/(byte*) sin8u_table::sintab#19 )
|
||||
(byte*) print_line_cursor#36 ← phi( sin8u_table::@7/(byte*) print_line_cursor#38 )
|
||||
(byte*) print_line_cursor#37 ← phi( sin8u_table::@7/(byte*) print_line_cursor#39 )
|
||||
(byte) sin8u_table::mid#10 ← phi( sin8u_table::@7/(byte) sin8u_table::mid#13 )
|
||||
(byte) sin8u_table::amplitude#5 ← phi( sin8u_table::@7/(byte) sin8u_table::amplitude#8 )
|
||||
(byte) sin8u_table::max#2 ← phi( sin8u_table::@7/(byte) sin8u_table::max#3 )
|
||||
@ -3713,11 +3719,11 @@ sin8u_table::@8: scope:[sin8u_table] from sin8u_table::@7
|
||||
call print_byte param-assignment
|
||||
to:sin8u_table::@9
|
||||
sin8u_table::@9: scope:[sin8u_table] from sin8u_table::@8
|
||||
(word) rem16u#42 ← phi( sin8u_table::@8/(word) rem16u#43 )
|
||||
(word) rem16u#43 ← phi( sin8u_table::@8/(word) rem16u#44 )
|
||||
(word) sin8u_table::tabsize#19 ← phi( sin8u_table::@8/(word) sin8u_table::tabsize#20 )
|
||||
(word) sin8u_table::step#19 ← phi( sin8u_table::@8/(word) sin8u_table::step#20 )
|
||||
(byte*) sin8u_table::sintab#15 ← phi( sin8u_table::@8/(byte*) sin8u_table::sintab#17 )
|
||||
(byte*) print_line_cursor#34 ← phi( sin8u_table::@8/(byte*) print_line_cursor#36 )
|
||||
(byte*) print_line_cursor#35 ← phi( sin8u_table::@8/(byte*) print_line_cursor#37 )
|
||||
(byte) sin8u_table::mid#7 ← phi( sin8u_table::@8/(byte) sin8u_table::mid#10 )
|
||||
(byte) sin8u_table::amplitude#3 ← phi( sin8u_table::@8/(byte) sin8u_table::amplitude#5 )
|
||||
(byte*) print_char_cursor#73 ← phi( sin8u_table::@8/(byte*) print_char_cursor#16 )
|
||||
@ -3726,11 +3732,11 @@ sin8u_table::@9: scope:[sin8u_table] from sin8u_table::@8
|
||||
call print_str param-assignment
|
||||
to:sin8u_table::@10
|
||||
sin8u_table::@10: scope:[sin8u_table] from sin8u_table::@9
|
||||
(word) rem16u#41 ← phi( sin8u_table::@9/(word) rem16u#42 )
|
||||
(word) rem16u#42 ← phi( sin8u_table::@9/(word) rem16u#43 )
|
||||
(word) sin8u_table::tabsize#18 ← phi( sin8u_table::@9/(word) sin8u_table::tabsize#19 )
|
||||
(word) sin8u_table::step#18 ← phi( sin8u_table::@9/(word) sin8u_table::step#19 )
|
||||
(byte*) sin8u_table::sintab#13 ← phi( sin8u_table::@9/(byte*) sin8u_table::sintab#15 )
|
||||
(byte*) print_line_cursor#32 ← phi( sin8u_table::@9/(byte*) print_line_cursor#34 )
|
||||
(byte*) print_line_cursor#33 ← phi( sin8u_table::@9/(byte*) print_line_cursor#35 )
|
||||
(byte) sin8u_table::mid#5 ← phi( sin8u_table::@9/(byte) sin8u_table::mid#7 )
|
||||
(byte) sin8u_table::amplitude#1 ← phi( sin8u_table::@9/(byte) sin8u_table::amplitude#3 )
|
||||
(byte*) print_char_cursor#74 ← phi( sin8u_table::@9/(byte*) print_char_cursor#2 )
|
||||
@ -3739,12 +3745,12 @@ sin8u_table::@10: scope:[sin8u_table] from sin8u_table::@9
|
||||
call print_byte param-assignment
|
||||
to:sin8u_table::@11
|
||||
sin8u_table::@11: scope:[sin8u_table] from sin8u_table::@10
|
||||
(word) rem16u#40 ← phi( sin8u_table::@10/(word) rem16u#41 )
|
||||
(word) rem16u#41 ← phi( sin8u_table::@10/(word) rem16u#42 )
|
||||
(word) sin8u_table::tabsize#17 ← phi( sin8u_table::@10/(word) sin8u_table::tabsize#18 )
|
||||
(word) sin8u_table::step#17 ← phi( sin8u_table::@10/(word) sin8u_table::step#18 )
|
||||
(byte*) sin8u_table::sintab#11 ← phi( sin8u_table::@10/(byte*) sin8u_table::sintab#13 )
|
||||
(byte) sin8u_table::amplitude#15 ← phi( sin8u_table::@10/(byte) sin8u_table::amplitude#1 )
|
||||
(byte*) print_line_cursor#30 ← phi( sin8u_table::@10/(byte*) print_line_cursor#32 )
|
||||
(byte*) print_line_cursor#31 ← phi( sin8u_table::@10/(byte*) print_line_cursor#33 )
|
||||
(byte) sin8u_table::mid#3 ← phi( sin8u_table::@10/(byte) sin8u_table::mid#5 )
|
||||
(byte*) print_char_cursor#75 ← phi( sin8u_table::@10/(byte*) print_char_cursor#16 )
|
||||
(byte*) print_char_cursor#31 ← (byte*) print_char_cursor#75
|
||||
@ -3752,12 +3758,12 @@ sin8u_table::@11: scope:[sin8u_table] from sin8u_table::@10
|
||||
call print_str param-assignment
|
||||
to:sin8u_table::@12
|
||||
sin8u_table::@12: scope:[sin8u_table] from sin8u_table::@11
|
||||
(word) rem16u#39 ← phi( sin8u_table::@11/(word) rem16u#40 )
|
||||
(word) rem16u#40 ← phi( sin8u_table::@11/(word) rem16u#41 )
|
||||
(word) sin8u_table::tabsize#16 ← phi( sin8u_table::@11/(word) sin8u_table::tabsize#17 )
|
||||
(word) sin8u_table::step#16 ← phi( sin8u_table::@11/(word) sin8u_table::step#17 )
|
||||
(byte*) sin8u_table::sintab#9 ← phi( sin8u_table::@11/(byte*) sin8u_table::sintab#11 )
|
||||
(byte) sin8u_table::amplitude#12 ← phi( sin8u_table::@11/(byte) sin8u_table::amplitude#15 )
|
||||
(byte*) print_line_cursor#28 ← phi( sin8u_table::@11/(byte*) print_line_cursor#30 )
|
||||
(byte*) print_line_cursor#28 ← phi( sin8u_table::@11/(byte*) print_line_cursor#31 )
|
||||
(byte) sin8u_table::mid#1 ← phi( sin8u_table::@11/(byte) sin8u_table::mid#3 )
|
||||
(byte*) print_char_cursor#76 ← phi( sin8u_table::@11/(byte*) print_char_cursor#2 )
|
||||
(byte*) print_char_cursor#32 ← (byte*) print_char_cursor#76
|
||||
@ -3765,7 +3771,7 @@ sin8u_table::@12: scope:[sin8u_table] from sin8u_table::@11
|
||||
call print_byte param-assignment
|
||||
to:sin8u_table::@13
|
||||
sin8u_table::@13: scope:[sin8u_table] from sin8u_table::@12
|
||||
(word) rem16u#38 ← phi( sin8u_table::@12/(word) rem16u#39 )
|
||||
(word) rem16u#39 ← phi( sin8u_table::@12/(word) rem16u#40 )
|
||||
(word) sin8u_table::tabsize#15 ← phi( sin8u_table::@12/(word) sin8u_table::tabsize#16 )
|
||||
(word) sin8u_table::step#15 ← phi( sin8u_table::@12/(word) sin8u_table::step#16 )
|
||||
(byte*) sin8u_table::sintab#7 ← phi( sin8u_table::@12/(byte*) sin8u_table::sintab#9 )
|
||||
@ -3777,7 +3783,7 @@ sin8u_table::@13: scope:[sin8u_table] from sin8u_table::@12
|
||||
call print_ln param-assignment
|
||||
to:sin8u_table::@14
|
||||
sin8u_table::@14: scope:[sin8u_table] from sin8u_table::@13
|
||||
(word) rem16u#37 ← phi( sin8u_table::@13/(word) rem16u#38 )
|
||||
(word) rem16u#38 ← phi( sin8u_table::@13/(word) rem16u#39 )
|
||||
(word) sin8u_table::tabsize#14 ← phi( sin8u_table::@13/(word) sin8u_table::tabsize#15 )
|
||||
(word) sin8u_table::step#14 ← phi( sin8u_table::@13/(word) sin8u_table::step#15 )
|
||||
(byte*) sin8u_table::sintab#5 ← phi( sin8u_table::@13/(byte*) sin8u_table::sintab#7 )
|
||||
@ -3791,12 +3797,12 @@ sin8u_table::@14: scope:[sin8u_table] from sin8u_table::@13
|
||||
(word) sin8u_table::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
to:sin8u_table::@1
|
||||
sin8u_table::@1: scope:[sin8u_table] from sin8u_table::@14 sin8u_table::@25
|
||||
(word) rem16u#36 ← phi( sin8u_table::@14/(word) rem16u#37 sin8u_table::@25/(word) rem16u#21 )
|
||||
(word) rem16u#37 ← phi( sin8u_table::@14/(word) rem16u#38 sin8u_table::@25/(word) rem16u#21 )
|
||||
(word) sin8u_table::tabsize#13 ← phi( sin8u_table::@14/(word) sin8u_table::tabsize#14 sin8u_table::@25/(word) sin8u_table::tabsize#2 )
|
||||
(word) sin8u_table::i#13 ← phi( sin8u_table::@14/(word) sin8u_table::i#0 sin8u_table::@25/(word) sin8u_table::i#1 )
|
||||
(word) sin8u_table::step#13 ← phi( sin8u_table::@14/(word) sin8u_table::step#14 sin8u_table::@25/(word) sin8u_table::step#2 )
|
||||
(byte*) print_line_cursor#47 ← phi( sin8u_table::@14/(byte*) print_line_cursor#8 sin8u_table::@25/(byte*) print_line_cursor#9 )
|
||||
(byte*) print_char_cursor#107 ← phi( sin8u_table::@14/(byte*) print_char_cursor#34 sin8u_table::@25/(byte*) print_char_cursor#43 )
|
||||
(byte*) print_line_cursor#48 ← phi( sin8u_table::@14/(byte*) print_line_cursor#8 sin8u_table::@25/(byte*) print_line_cursor#9 )
|
||||
(byte*) print_char_cursor#108 ← phi( sin8u_table::@14/(byte*) print_char_cursor#34 sin8u_table::@25/(byte*) print_char_cursor#43 )
|
||||
(byte*) sin8u_table::sintab#4 ← phi( sin8u_table::@14/(byte*) sin8u_table::sintab#5 sin8u_table::@25/(byte*) sin8u_table::sintab#6 )
|
||||
(byte) sin8u_table::mid#6 ← phi( sin8u_table::@14/(byte) sin8u_table::mid#8 sin8u_table::@25/(byte) sin8u_table::mid#9 )
|
||||
(byte) sin8u_table::amplitude#4 ← phi( sin8u_table::@14/(byte) sin8u_table::amplitude#6 sin8u_table::@25/(byte) sin8u_table::amplitude#7 )
|
||||
@ -3806,13 +3812,13 @@ sin8u_table::@1: scope:[sin8u_table] from sin8u_table::@14 sin8u_table::@25
|
||||
(signed byte) sin8s::return#2 ← (signed byte) sin8s::return#1
|
||||
to:sin8u_table::@15
|
||||
sin8u_table::@15: scope:[sin8u_table] from sin8u_table::@1
|
||||
(word) rem16u#35 ← phi( sin8u_table::@1/(word) rem16u#36 )
|
||||
(word) rem16u#36 ← phi( sin8u_table::@1/(word) rem16u#37 )
|
||||
(word) sin8u_table::tabsize#12 ← phi( sin8u_table::@1/(word) sin8u_table::tabsize#13 )
|
||||
(word) sin8u_table::i#12 ← phi( sin8u_table::@1/(word) sin8u_table::i#13 )
|
||||
(word) sin8u_table::step#12 ← phi( sin8u_table::@1/(word) sin8u_table::step#13 )
|
||||
(byte*) print_line_cursor#45 ← phi( sin8u_table::@1/(byte*) print_line_cursor#47 )
|
||||
(byte*) print_line_cursor#46 ← phi( sin8u_table::@1/(byte*) print_line_cursor#48 )
|
||||
(word) sin8u_table::x#7 ← phi( sin8u_table::@1/(word) sin8u_table::x#2 )
|
||||
(byte*) print_char_cursor#106 ← phi( sin8u_table::@1/(byte*) print_char_cursor#107 )
|
||||
(byte*) print_char_cursor#106 ← phi( sin8u_table::@1/(byte*) print_char_cursor#108 )
|
||||
(byte*) sin8u_table::sintab#3 ← phi( sin8u_table::@1/(byte*) sin8u_table::sintab#4 )
|
||||
(byte) sin8u_table::mid#4 ← phi( sin8u_table::@1/(byte) sin8u_table::mid#6 )
|
||||
(byte) sin8u_table::amplitude#2 ← phi( sin8u_table::@1/(byte) sin8u_table::amplitude#4 )
|
||||
@ -3827,11 +3833,11 @@ sin8u_table::@15: scope:[sin8u_table] from sin8u_table::@1
|
||||
to:sin8u_table::@16
|
||||
sin8u_table::@16: scope:[sin8u_table] from sin8u_table::@15
|
||||
(byte) sin8u_table::amplitude#24 ← phi( sin8u_table::@15/(byte) sin8u_table::amplitude#2 )
|
||||
(word) rem16u#34 ← phi( sin8u_table::@15/(word) rem16u#35 )
|
||||
(word) rem16u#35 ← phi( sin8u_table::@15/(word) rem16u#36 )
|
||||
(word) sin8u_table::tabsize#11 ← phi( sin8u_table::@15/(word) sin8u_table::tabsize#12 )
|
||||
(word) sin8u_table::i#11 ← phi( sin8u_table::@15/(word) sin8u_table::i#12 )
|
||||
(word) sin8u_table::step#11 ← phi( sin8u_table::@15/(word) sin8u_table::step#12 )
|
||||
(byte*) print_line_cursor#43 ← phi( sin8u_table::@15/(byte*) print_line_cursor#45 )
|
||||
(byte*) print_line_cursor#44 ← phi( sin8u_table::@15/(byte*) print_line_cursor#46 )
|
||||
(signed byte) sin8u_table::sinx#4 ← phi( sin8u_table::@15/(signed byte) sin8u_table::sinx#0 )
|
||||
(word) sin8u_table::x#5 ← phi( sin8u_table::@15/(word) sin8u_table::x#7 )
|
||||
(byte*) print_char_cursor#100 ← phi( sin8u_table::@15/(byte*) print_char_cursor#106 )
|
||||
@ -3852,11 +3858,11 @@ sin8u_table::@17: scope:[sin8u_table] from sin8u_table::@16
|
||||
(byte*) sin8u_table::sintab#22 ← phi( sin8u_table::@16/(byte*) sin8u_table::sintab#1 )
|
||||
(byte) sin8u_table::mid#24 ← phi( sin8u_table::@16/(byte) sin8u_table::mid#2 )
|
||||
(byte) sin8u_table::amplitude#23 ← phi( sin8u_table::@16/(byte) sin8u_table::amplitude#24 )
|
||||
(word) rem16u#33 ← phi( sin8u_table::@16/(word) rem16u#34 )
|
||||
(word) rem16u#34 ← phi( sin8u_table::@16/(word) rem16u#35 )
|
||||
(word) sin8u_table::tabsize#10 ← phi( sin8u_table::@16/(word) sin8u_table::tabsize#11 )
|
||||
(word) sin8u_table::i#10 ← phi( sin8u_table::@16/(word) sin8u_table::i#11 )
|
||||
(word) sin8u_table::step#10 ← phi( sin8u_table::@16/(word) sin8u_table::step#11 )
|
||||
(byte*) print_line_cursor#41 ← phi( sin8u_table::@16/(byte*) print_line_cursor#43 )
|
||||
(byte*) print_line_cursor#42 ← phi( sin8u_table::@16/(byte*) print_line_cursor#44 )
|
||||
(byte) sin8u_table::sinx_tr#7 ← phi( sin8u_table::@16/(byte) sin8u_table::sinx_tr#0 )
|
||||
(signed word) sin8u_table::sinx_sc#5 ← phi( sin8u_table::@16/(signed word) sin8u_table::sinx_sc#0 )
|
||||
(signed byte) sin8u_table::sinx#3 ← phi( sin8u_table::@16/(signed byte) sin8u_table::sinx#4 )
|
||||
@ -3870,12 +3876,12 @@ sin8u_table::@18: scope:[sin8u_table] from sin8u_table::@17
|
||||
(byte*) sin8u_table::sintab#20 ← phi( sin8u_table::@17/(byte*) sin8u_table::sintab#22 )
|
||||
(byte) sin8u_table::mid#23 ← phi( sin8u_table::@17/(byte) sin8u_table::mid#24 )
|
||||
(byte) sin8u_table::amplitude#22 ← phi( sin8u_table::@17/(byte) sin8u_table::amplitude#23 )
|
||||
(word) rem16u#32 ← phi( sin8u_table::@17/(word) rem16u#33 )
|
||||
(word) rem16u#33 ← phi( sin8u_table::@17/(word) rem16u#34 )
|
||||
(word) sin8u_table::tabsize#9 ← phi( sin8u_table::@17/(word) sin8u_table::tabsize#10 )
|
||||
(word) sin8u_table::i#9 ← phi( sin8u_table::@17/(word) sin8u_table::i#10 )
|
||||
(word) sin8u_table::step#9 ← phi( sin8u_table::@17/(word) sin8u_table::step#10 )
|
||||
(word) sin8u_table::x#13 ← phi( sin8u_table::@17/(word) sin8u_table::x#3 )
|
||||
(byte*) print_line_cursor#39 ← phi( sin8u_table::@17/(byte*) print_line_cursor#41 )
|
||||
(byte*) print_line_cursor#40 ← phi( sin8u_table::@17/(byte*) print_line_cursor#42 )
|
||||
(byte) sin8u_table::sinx_tr#6 ← phi( sin8u_table::@17/(byte) sin8u_table::sinx_tr#7 )
|
||||
(signed word) sin8u_table::sinx_sc#4 ← phi( sin8u_table::@17/(signed word) sin8u_table::sinx_sc#5 )
|
||||
(signed byte) sin8u_table::sinx#2 ← phi( sin8u_table::@17/(signed byte) sin8u_table::sinx#3 )
|
||||
@ -3888,12 +3894,12 @@ sin8u_table::@19: scope:[sin8u_table] from sin8u_table::@18
|
||||
(byte*) sin8u_table::sintab#18 ← phi( sin8u_table::@18/(byte*) sin8u_table::sintab#20 )
|
||||
(byte) sin8u_table::mid#22 ← phi( sin8u_table::@18/(byte) sin8u_table::mid#23 )
|
||||
(byte) sin8u_table::amplitude#21 ← phi( sin8u_table::@18/(byte) sin8u_table::amplitude#22 )
|
||||
(word) rem16u#31 ← phi( sin8u_table::@18/(word) rem16u#32 )
|
||||
(word) rem16u#32 ← phi( sin8u_table::@18/(word) rem16u#33 )
|
||||
(word) sin8u_table::tabsize#8 ← phi( sin8u_table::@18/(word) sin8u_table::tabsize#9 )
|
||||
(word) sin8u_table::i#8 ← phi( sin8u_table::@18/(word) sin8u_table::i#9 )
|
||||
(word) sin8u_table::step#8 ← phi( sin8u_table::@18/(word) sin8u_table::step#9 )
|
||||
(word) sin8u_table::x#12 ← phi( sin8u_table::@18/(word) sin8u_table::x#13 )
|
||||
(byte*) print_line_cursor#37 ← phi( sin8u_table::@18/(byte*) print_line_cursor#39 )
|
||||
(byte*) print_line_cursor#38 ← phi( sin8u_table::@18/(byte*) print_line_cursor#40 )
|
||||
(byte) sin8u_table::sinx_tr#5 ← phi( sin8u_table::@18/(byte) sin8u_table::sinx_tr#6 )
|
||||
(signed word) sin8u_table::sinx_sc#3 ← phi( sin8u_table::@18/(signed word) sin8u_table::sinx_sc#4 )
|
||||
(signed byte) sin8u_table::sinx#1 ← phi( sin8u_table::@18/(signed byte) sin8u_table::sinx#2 )
|
||||
@ -3906,12 +3912,12 @@ sin8u_table::@20: scope:[sin8u_table] from sin8u_table::@19
|
||||
(byte*) sin8u_table::sintab#16 ← phi( sin8u_table::@19/(byte*) sin8u_table::sintab#18 )
|
||||
(byte) sin8u_table::mid#20 ← phi( sin8u_table::@19/(byte) sin8u_table::mid#22 )
|
||||
(byte) sin8u_table::amplitude#20 ← phi( sin8u_table::@19/(byte) sin8u_table::amplitude#21 )
|
||||
(word) rem16u#30 ← phi( sin8u_table::@19/(word) rem16u#31 )
|
||||
(word) rem16u#31 ← phi( sin8u_table::@19/(word) rem16u#32 )
|
||||
(word) sin8u_table::tabsize#7 ← phi( sin8u_table::@19/(word) sin8u_table::tabsize#8 )
|
||||
(word) sin8u_table::i#7 ← phi( sin8u_table::@19/(word) sin8u_table::i#8 )
|
||||
(word) sin8u_table::step#7 ← phi( sin8u_table::@19/(word) sin8u_table::step#8 )
|
||||
(word) sin8u_table::x#11 ← phi( sin8u_table::@19/(word) sin8u_table::x#12 )
|
||||
(byte*) print_line_cursor#35 ← phi( sin8u_table::@19/(byte*) print_line_cursor#37 )
|
||||
(byte*) print_line_cursor#36 ← phi( sin8u_table::@19/(byte*) print_line_cursor#38 )
|
||||
(byte) sin8u_table::sinx_tr#4 ← phi( sin8u_table::@19/(byte) sin8u_table::sinx_tr#5 )
|
||||
(signed word) sin8u_table::sinx_sc#2 ← phi( sin8u_table::@19/(signed word) sin8u_table::sinx_sc#3 )
|
||||
(byte*) print_char_cursor#82 ← phi( sin8u_table::@19/(byte*) print_char_cursor#10 )
|
||||
@ -3923,12 +3929,12 @@ sin8u_table::@21: scope:[sin8u_table] from sin8u_table::@20
|
||||
(byte*) sin8u_table::sintab#14 ← phi( sin8u_table::@20/(byte*) sin8u_table::sintab#16 )
|
||||
(byte) sin8u_table::mid#18 ← phi( sin8u_table::@20/(byte) sin8u_table::mid#20 )
|
||||
(byte) sin8u_table::amplitude#18 ← phi( sin8u_table::@20/(byte) sin8u_table::amplitude#20 )
|
||||
(word) rem16u#29 ← phi( sin8u_table::@20/(word) rem16u#30 )
|
||||
(word) rem16u#30 ← phi( sin8u_table::@20/(word) rem16u#31 )
|
||||
(word) sin8u_table::tabsize#6 ← phi( sin8u_table::@20/(word) sin8u_table::tabsize#7 )
|
||||
(word) sin8u_table::i#6 ← phi( sin8u_table::@20/(word) sin8u_table::i#7 )
|
||||
(word) sin8u_table::step#6 ← phi( sin8u_table::@20/(word) sin8u_table::step#7 )
|
||||
(word) sin8u_table::x#10 ← phi( sin8u_table::@20/(word) sin8u_table::x#11 )
|
||||
(byte*) print_line_cursor#33 ← phi( sin8u_table::@20/(byte*) print_line_cursor#35 )
|
||||
(byte*) print_line_cursor#34 ← phi( sin8u_table::@20/(byte*) print_line_cursor#36 )
|
||||
(byte) sin8u_table::sinx_tr#3 ← phi( sin8u_table::@20/(byte) sin8u_table::sinx_tr#4 )
|
||||
(signed word) sin8u_table::sinx_sc#1 ← phi( sin8u_table::@20/(signed word) sin8u_table::sinx_sc#2 )
|
||||
(byte*) print_char_cursor#83 ← phi( sin8u_table::@20/(byte*) print_char_cursor#2 )
|
||||
@ -3940,12 +3946,12 @@ sin8u_table::@22: scope:[sin8u_table] from sin8u_table::@21
|
||||
(byte*) sin8u_table::sintab#12 ← phi( sin8u_table::@21/(byte*) sin8u_table::sintab#14 )
|
||||
(byte) sin8u_table::mid#16 ← phi( sin8u_table::@21/(byte) sin8u_table::mid#18 )
|
||||
(byte) sin8u_table::amplitude#16 ← phi( sin8u_table::@21/(byte) sin8u_table::amplitude#18 )
|
||||
(word) rem16u#28 ← phi( sin8u_table::@21/(word) rem16u#29 )
|
||||
(word) rem16u#29 ← phi( sin8u_table::@21/(word) rem16u#30 )
|
||||
(word) sin8u_table::tabsize#5 ← phi( sin8u_table::@21/(word) sin8u_table::tabsize#6 )
|
||||
(word) sin8u_table::i#5 ← phi( sin8u_table::@21/(word) sin8u_table::i#6 )
|
||||
(word) sin8u_table::step#5 ← phi( sin8u_table::@21/(word) sin8u_table::step#6 )
|
||||
(word) sin8u_table::x#9 ← phi( sin8u_table::@21/(word) sin8u_table::x#10 )
|
||||
(byte*) print_line_cursor#31 ← phi( sin8u_table::@21/(byte*) print_line_cursor#33 )
|
||||
(byte*) print_line_cursor#32 ← phi( sin8u_table::@21/(byte*) print_line_cursor#34 )
|
||||
(byte) sin8u_table::sinx_tr#2 ← phi( sin8u_table::@21/(byte) sin8u_table::sinx_tr#3 )
|
||||
(byte*) print_char_cursor#84 ← phi( sin8u_table::@21/(byte*) print_char_cursor#7 )
|
||||
(byte*) print_char_cursor#40 ← (byte*) print_char_cursor#84
|
||||
@ -3956,12 +3962,12 @@ sin8u_table::@23: scope:[sin8u_table] from sin8u_table::@22
|
||||
(byte*) sin8u_table::sintab#10 ← phi( sin8u_table::@22/(byte*) sin8u_table::sintab#12 )
|
||||
(byte) sin8u_table::mid#14 ← phi( sin8u_table::@22/(byte) sin8u_table::mid#16 )
|
||||
(byte) sin8u_table::amplitude#13 ← phi( sin8u_table::@22/(byte) sin8u_table::amplitude#16 )
|
||||
(word) rem16u#27 ← phi( sin8u_table::@22/(word) rem16u#28 )
|
||||
(word) rem16u#27 ← phi( sin8u_table::@22/(word) rem16u#29 )
|
||||
(word) sin8u_table::tabsize#4 ← phi( sin8u_table::@22/(word) sin8u_table::tabsize#5 )
|
||||
(word) sin8u_table::i#4 ← phi( sin8u_table::@22/(word) sin8u_table::i#5 )
|
||||
(word) sin8u_table::step#4 ← phi( sin8u_table::@22/(word) sin8u_table::step#5 )
|
||||
(word) sin8u_table::x#8 ← phi( sin8u_table::@22/(word) sin8u_table::x#9 )
|
||||
(byte*) print_line_cursor#29 ← phi( sin8u_table::@22/(byte*) print_line_cursor#31 )
|
||||
(byte*) print_line_cursor#29 ← phi( sin8u_table::@22/(byte*) print_line_cursor#32 )
|
||||
(byte) sin8u_table::sinx_tr#1 ← phi( sin8u_table::@22/(byte) sin8u_table::sinx_tr#2 )
|
||||
(byte*) print_char_cursor#85 ← phi( sin8u_table::@22/(byte*) print_char_cursor#2 )
|
||||
(byte*) print_char_cursor#41 ← (byte*) print_char_cursor#85
|
||||
@ -4010,11 +4016,11 @@ sin8u_table::@return: scope:[sin8u_table] from sin8u_table::@25
|
||||
(byte*) print_line_cursor#10 ← (byte*) print_line_cursor#21
|
||||
return
|
||||
to:@return
|
||||
@34: scope:[] from @18
|
||||
(byte*) print_screen#5 ← phi( @18/(byte*) print_screen#0 )
|
||||
(word) rem16u#22 ← phi( @18/(word) rem16u#25 )
|
||||
(byte*) print_char_cursor#101 ← phi( @18/(byte*) print_char_cursor#0 )
|
||||
(byte*) print_line_cursor#27 ← phi( @18/(byte*) print_line_cursor#0 )
|
||||
@34: scope:[] from @28
|
||||
(byte*) print_screen#5 ← phi( @28/(byte*) print_screen#6 )
|
||||
(word) rem16u#22 ← phi( @28/(word) rem16u#25 )
|
||||
(byte*) print_char_cursor#101 ← phi( @28/(byte*) print_char_cursor#107 )
|
||||
(byte*) print_line_cursor#27 ← phi( @28/(byte*) print_line_cursor#30 )
|
||||
call main param-assignment
|
||||
to:@35
|
||||
@35: scope:[] from @34
|
||||
@ -4028,9 +4034,11 @@ sin8u_table::@return: scope:[sin8u_table] from sin8u_table::@25
|
||||
@end: scope:[] from @35
|
||||
|
||||
SYMBOL TABLE SSA
|
||||
(const string) $0 = (string) "0123456789abcdef"
|
||||
(label) @12
|
||||
(label) @18
|
||||
(label) @2
|
||||
(label) @28
|
||||
(label) @34
|
||||
(label) @35
|
||||
(label) @begin
|
||||
@ -4269,7 +4277,6 @@ SYMBOL TABLE SSA
|
||||
(void()) print_byte((byte) print_byte::b)
|
||||
(byte~) print_byte::$0
|
||||
(byte~) print_byte::$2
|
||||
(const string) print_byte::$4 = (string) "0123456789abcdef"
|
||||
(label) print_byte::@1
|
||||
(label) print_byte::@2
|
||||
(label) print_byte::@return
|
||||
@ -4284,8 +4291,6 @@ SYMBOL TABLE SSA
|
||||
(byte) print_byte::b#7
|
||||
(byte) print_byte::b#8
|
||||
(byte) print_byte::b#9
|
||||
(byte[]) print_byte::hextab
|
||||
(byte[]) print_byte::hextab#0
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -4306,6 +4311,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_char_cursor#105
|
||||
(byte*) print_char_cursor#106
|
||||
(byte*) print_char_cursor#107
|
||||
(byte*) print_char_cursor#108
|
||||
(byte*) print_char_cursor#11
|
||||
(byte*) print_char_cursor#12
|
||||
(byte*) print_char_cursor#13
|
||||
@ -4413,6 +4419,8 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_cls::sc#0
|
||||
(byte*) print_cls::sc#1
|
||||
(byte*) print_cls::sc#2
|
||||
(byte[]) print_hextab
|
||||
(byte[]) print_hextab#0
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#0
|
||||
(byte*) print_line_cursor#1
|
||||
@ -4458,6 +4466,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_line_cursor#46
|
||||
(byte*) print_line_cursor#47
|
||||
(byte*) print_line_cursor#48
|
||||
(byte*) print_line_cursor#49
|
||||
(byte*) print_line_cursor#5
|
||||
(byte*) print_line_cursor#6
|
||||
(byte*) print_line_cursor#7
|
||||
@ -4493,6 +4502,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_screen#3
|
||||
(byte*) print_screen#4
|
||||
(byte*) print_screen#5
|
||||
(byte*) print_screen#6
|
||||
(void()) print_str((byte*) print_str::str)
|
||||
(boolean~) print_str::$0
|
||||
(label) print_str::@1
|
||||
@ -4585,6 +4595,7 @@ SYMBOL TABLE SSA
|
||||
(word) rem16u#45
|
||||
(word) rem16u#46
|
||||
(word) rem16u#47
|
||||
(word) rem16u#48
|
||||
(word) rem16u#5
|
||||
(word) rem16u#6
|
||||
(word) rem16u#7
|
||||
@ -5040,7 +5051,7 @@ Not aliassing across scopes: sin8u_table::min#1 sin8u_table::min#0
|
||||
Not aliassing across scopes: sin8u_table::tabsize#1 sin8u_table::tabsize#0
|
||||
Not aliassing across scopes: rem16u#20 rem16u#19
|
||||
Not aliassing across scopes: print_char_cursor#105 print_char_cursor#21
|
||||
Not aliassing across scopes: print_line_cursor#48 print_line_cursor#5
|
||||
Not aliassing across scopes: print_line_cursor#49 print_line_cursor#5
|
||||
Not aliassing across scopes: sin8u_table::sintab#26 sin8u_table::sintab#0
|
||||
Not aliassing across scopes: div16u::dividend#0 PI2_u4f12#0
|
||||
Not aliassing across scopes: div16u::divisor#0 sin8u_table::tabsize#1
|
||||
@ -5119,7 +5130,7 @@ Alias (byte) mul8su::b#1 = (byte) mul8su::b#3 (byte) mul8su::b#2
|
||||
Alias (word) mul8su::m#0 = (word~) mul8su::$2 (word) mul8su::m#3
|
||||
Alias (signed word) mul8su::return#0 = (signed word~) mul8su::$9 (signed word) mul8su::return#3 (signed word) mul8su::return#1
|
||||
Alias (byte~) mul8su::$10 = (byte~) mul8su::$8
|
||||
Alias (word) rem16u#0 = (word) rem16u#26 (word) rem16u#25 (word) rem16u#22
|
||||
Alias (word) rem16u#0 = (word) rem16u#28 (word) rem16u#26 (word) rem16u#25 (word) rem16u#22
|
||||
Alias (word) sin8s::x#3 = (word) sin8s::x#5
|
||||
Alias (word) sin8s::x#0 = (word~) sin8s::$2
|
||||
Alias (byte) sin8s::x1#0 = (byte~) sin8s::$7 (byte) sin8s::x1#1 (byte) sin8s::x1#4 (byte) sin8s::x1#2 (byte) sin8s::x1#3
|
||||
@ -5147,7 +5158,7 @@ Alias (signed byte) sin8s::sinx#1 = (signed byte~) sin8s::$22
|
||||
Alias (word) mul8u::return#3 = (word) mul8u::return#6
|
||||
Alias (byte) mulu8_sel::select#5 = (byte) mulu8_sel::select#6
|
||||
Alias (byte) mulu8_sel::return#12 = (byte) mulu8_sel::return#5 (byte~) mulu8_sel::$2 (byte) mulu8_sel::return#6
|
||||
Alias (byte*) print_line_cursor#0 = (byte*) print_screen#0 (byte*) print_char_cursor#0 (byte*) print_line_cursor#27 (byte*) print_char_cursor#101 (byte*) print_screen#5
|
||||
Alias (byte*) print_line_cursor#0 = (byte*) print_screen#0 (byte*) print_char_cursor#0 (byte*) print_line_cursor#30 (byte*) print_char_cursor#107 (byte*) print_screen#6 (byte*) print_line_cursor#27 (byte*) print_char_cursor#101 (byte*) print_screen#5
|
||||
Alias (byte*) print_str::str#10 = (byte*) print_str::str#11
|
||||
Alias (byte*) print_char_cursor#2 = (byte*) print_char_cursor#46 (byte*) print_char_cursor#90 (byte*) print_char_cursor#47
|
||||
Alias (byte*) print_line_cursor#1 = (byte*~) print_ln::$0 (byte*) print_line_cursor#13 (byte*) print_char_cursor#3 (byte*) print_line_cursor#14 (byte*) print_char_cursor#49 (byte*) print_line_cursor#2 (byte*) print_char_cursor#4
|
||||
@ -5187,10 +5198,10 @@ Alias (word) div16u::return#2 = (word) div16u::return#4
|
||||
Alias (byte*) print_char_cursor#105 = (byte*) print_char_cursor#99
|
||||
Alias (byte) sin8u_table::min#1 = (byte) sin8u_table::min#5 (byte) sin8u_table::min#4 (byte) sin8u_table::min#3 (byte) sin8u_table::min#2
|
||||
Alias (byte) sin8u_table::max#1 = (byte) sin8u_table::max#7 (byte) sin8u_table::max#6 (byte) sin8u_table::max#5 (byte) sin8u_table::max#4 (byte) sin8u_table::max#3 (byte) sin8u_table::max#2
|
||||
Alias (byte*) print_line_cursor#25 = (byte*) print_line_cursor#46 (byte*) print_line_cursor#48 (byte*) print_line_cursor#44 (byte*) print_line_cursor#42 (byte*) print_line_cursor#40 (byte*) print_line_cursor#38 (byte*) print_line_cursor#36 (byte*) print_line_cursor#34 (byte*) print_line_cursor#32 (byte*) print_line_cursor#30 (byte*) print_line_cursor#28
|
||||
Alias (byte*) print_line_cursor#25 = (byte*) print_line_cursor#47 (byte*) print_line_cursor#49 (byte*) print_line_cursor#45 (byte*) print_line_cursor#43 (byte*) print_line_cursor#41 (byte*) print_line_cursor#39 (byte*) print_line_cursor#37 (byte*) print_line_cursor#35 (byte*) print_line_cursor#33 (byte*) print_line_cursor#31 (byte*) print_line_cursor#28
|
||||
Alias (byte*) sin8u_table::sintab#11 = (byte*) sin8u_table::sintab#25 (byte*) sin8u_table::sintab#26 (byte*) sin8u_table::sintab#24 (byte*) sin8u_table::sintab#23 (byte*) sin8u_table::sintab#21 (byte*) sin8u_table::sintab#19 (byte*) sin8u_table::sintab#17 (byte*) sin8u_table::sintab#15 (byte*) sin8u_table::sintab#13 (byte*) sin8u_table::sintab#9 (byte*) sin8u_table::sintab#7 (byte*) sin8u_table::sintab#5
|
||||
Alias (word) sin8u_table::tabsize#1 = (word) sin8u_table::tabsize#25 (word) sin8u_table::tabsize#24 (word) sin8u_table::tabsize#23 (word) sin8u_table::tabsize#22 (word) sin8u_table::tabsize#21 (word) sin8u_table::tabsize#20 (word) sin8u_table::tabsize#19 (word) sin8u_table::tabsize#18 (word) sin8u_table::tabsize#17 (word) sin8u_table::tabsize#16 (word) sin8u_table::tabsize#15 (word) sin8u_table::tabsize#14
|
||||
Alias (word) rem16u#15 = (word) rem16u#7 (word) rem16u#47 (word) rem16u#46 (word) rem16u#45 (word) rem16u#44 (word) rem16u#43 (word) rem16u#42 (word) rem16u#41 (word) rem16u#40 (word) rem16u#39 (word) rem16u#38 (word) rem16u#37
|
||||
Alias (word) rem16u#15 = (word) rem16u#7 (word) rem16u#48 (word) rem16u#47 (word) rem16u#46 (word) rem16u#45 (word) rem16u#44 (word) rem16u#43 (word) rem16u#42 (word) rem16u#41 (word) rem16u#40 (word) rem16u#39 (word) rem16u#38
|
||||
Alias (word) sin8u_table::step#0 = (word~) sin8u_table::$6 (word) sin8u_table::step#1 (word) sin8u_table::step#23 (word) sin8u_table::step#22 (word) sin8u_table::step#21 (word) sin8u_table::step#20 (word) sin8u_table::step#19 (word) sin8u_table::step#18 (word) sin8u_table::step#17 (word) sin8u_table::step#16 (word) sin8u_table::step#15 (word) sin8u_table::step#14
|
||||
Alias (byte*) print_char_cursor#24 = (byte*) print_char_cursor#68
|
||||
Alias (byte*) print_char_cursor#25 = (byte*) print_char_cursor#69
|
||||
@ -5208,13 +5219,13 @@ Alias (signed byte) sin8s::return#2 = (signed byte) sin8s::return#4
|
||||
Alias (byte) sin8u_table::amplitude#10 = (byte) sin8u_table::amplitude#2 (byte) sin8u_table::amplitude#4 (byte) sin8u_table::amplitude#24 (byte) sin8u_table::amplitude#23 (byte) sin8u_table::amplitude#22 (byte) sin8u_table::amplitude#21 (byte) sin8u_table::amplitude#20 (byte) sin8u_table::amplitude#18 (byte) sin8u_table::amplitude#16 (byte) sin8u_table::amplitude#13 (byte) sin8u_table::amplitude#7
|
||||
Alias (byte) sin8u_table::mid#12 = (byte) sin8u_table::mid#4 (byte) sin8u_table::mid#6 (byte) sin8u_table::mid#2 (byte) sin8u_table::mid#24 (byte) sin8u_table::mid#23 (byte) sin8u_table::mid#22 (byte) sin8u_table::mid#20 (byte) sin8u_table::mid#18 (byte) sin8u_table::mid#16 (byte) sin8u_table::mid#14 (byte) sin8u_table::mid#9
|
||||
Alias (byte*) sin8u_table::sintab#2 = (byte*) sin8u_table::sintab#3 (byte*) sin8u_table::sintab#4
|
||||
Alias (byte*) print_char_cursor#100 = (byte*) print_char_cursor#106 (byte*) print_char_cursor#107
|
||||
Alias (byte*) print_char_cursor#100 = (byte*) print_char_cursor#106 (byte*) print_char_cursor#108
|
||||
Alias (word) sin8u_table::x#10 = (word) sin8u_table::x#7 (word) sin8u_table::x#2 (word) sin8u_table::x#5 (word) sin8u_table::x#3 (word) sin8u_table::x#13 (word) sin8u_table::x#12 (word) sin8u_table::x#11 (word) sin8u_table::x#9 (word) sin8u_table::x#8 (word) sin8u_table::x#6 (word) sin8u_table::x#4
|
||||
Alias (byte*) print_line_cursor#26 = (byte*) print_line_cursor#45 (byte*) print_line_cursor#47 (byte*) print_line_cursor#43 (byte*) print_line_cursor#41 (byte*) print_line_cursor#39 (byte*) print_line_cursor#37 (byte*) print_line_cursor#35 (byte*) print_line_cursor#33 (byte*) print_line_cursor#31 (byte*) print_line_cursor#29
|
||||
Alias (byte*) print_line_cursor#26 = (byte*) print_line_cursor#46 (byte*) print_line_cursor#48 (byte*) print_line_cursor#44 (byte*) print_line_cursor#42 (byte*) print_line_cursor#40 (byte*) print_line_cursor#38 (byte*) print_line_cursor#36 (byte*) print_line_cursor#34 (byte*) print_line_cursor#32 (byte*) print_line_cursor#29
|
||||
Alias (word) sin8u_table::step#10 = (word) sin8u_table::step#12 (word) sin8u_table::step#13 (word) sin8u_table::step#11 (word) sin8u_table::step#9 (word) sin8u_table::step#8 (word) sin8u_table::step#7 (word) sin8u_table::step#6 (word) sin8u_table::step#5 (word) sin8u_table::step#4 (word) sin8u_table::step#3 (word) sin8u_table::step#2
|
||||
Alias (word) sin8u_table::i#10 = (word) sin8u_table::i#12 (word) sin8u_table::i#13 (word) sin8u_table::i#11 (word) sin8u_table::i#9 (word) sin8u_table::i#8 (word) sin8u_table::i#7 (word) sin8u_table::i#6 (word) sin8u_table::i#5 (word) sin8u_table::i#4 (word) sin8u_table::i#3 (word) sin8u_table::i#2
|
||||
Alias (word) sin8u_table::tabsize#10 = (word) sin8u_table::tabsize#12 (word) sin8u_table::tabsize#13 (word) sin8u_table::tabsize#11 (word) sin8u_table::tabsize#9 (word) sin8u_table::tabsize#8 (word) sin8u_table::tabsize#7 (word) sin8u_table::tabsize#6 (word) sin8u_table::tabsize#5 (word) sin8u_table::tabsize#4 (word) sin8u_table::tabsize#3 (word) sin8u_table::tabsize#2
|
||||
Alias (word) rem16u#16 = (word) rem16u#35 (word) rem16u#36 (word) rem16u#34 (word) rem16u#33 (word) rem16u#32 (word) rem16u#31 (word) rem16u#30 (word) rem16u#29 (word) rem16u#28 (word) rem16u#27 (word) rem16u#24 (word) rem16u#21 (word) rem16u#8
|
||||
Alias (word) rem16u#16 = (word) rem16u#36 (word) rem16u#37 (word) rem16u#35 (word) rem16u#34 (word) rem16u#33 (word) rem16u#32 (word) rem16u#31 (word) rem16u#30 (word) rem16u#29 (word) rem16u#27 (word) rem16u#24 (word) rem16u#21 (word) rem16u#8
|
||||
Alias (signed byte) sin8u_table::sinx#0 = (signed byte~) sin8u_table::$18 (signed byte) sin8u_table::sinx#4 (signed byte) sin8u_table::sinx#3 (signed byte) sin8u_table::sinx#2 (signed byte) sin8u_table::sinx#1
|
||||
Alias (byte) mul8su::b#0 = (byte/signed word/word/dword/signed dword~) sin8u_table::$19
|
||||
Alias (signed word) mul8su::return#2 = (signed word) mul8su::return#4
|
||||
@ -5634,7 +5645,7 @@ Constant (const byte) mulu8_sel::select#4 = 0
|
||||
Constant (const byte*) print_line_cursor#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 string) print_hextab#0 = $0
|
||||
Constant (const word) main::tabsize#0 = 20
|
||||
Constant (const byte[20]) main::sintab#0 = { fill( 20, 0) }
|
||||
Constant (const byte) sin8u_table::min#0 = 10
|
||||
@ -5698,6 +5709,7 @@ Culled Empty Block (label) print_ln::@2
|
||||
Culled Empty Block (label) print_sword::@3
|
||||
Culled Empty Block (label) print_sbyte::@3
|
||||
Culled Empty Block (label) print_word::@2
|
||||
Culled Empty Block (label) @28
|
||||
Culled Empty Block (label) print_byte::@2
|
||||
Culled Empty Block (label) print_cls::@2
|
||||
Culled Empty Block (label) main::@2
|
||||
@ -5918,6 +5930,7 @@ Constant inlined print_cls::$0 = ((byte*))(word/signed word/dword/signed dword)
|
||||
Constant inlined divr16u::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Constant inlined sin8u_table::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Constant inlined sin8u_table::sintab#0 = (const byte[20]) main::sintab#0
|
||||
Constant inlined $0 = (const string) print_hextab#0
|
||||
Constant inlined sin8s::isUpper#1 = (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
Constant inlined sin8s::isUpper#0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Constant inlined sin8u_table::$4 = (const word) sin8u_table::sum#0>>(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
@ -5951,7 +5964,6 @@ Constant inlined print_str::str#4 = (const string) sin8u_table::str3
|
||||
Constant inlined print_str::str#3 = (const string) sin8u_table::str2
|
||||
Constant inlined print_str::str#2 = (const string) sin8u_table::str1
|
||||
Constant inlined print_str::str#1 = (const string) sin8u_table::str
|
||||
Constant inlined print_byte::$4 = (const string) print_byte::hextab#0
|
||||
Constant inlined sin8u_table::x#0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Constant inlined print_str::str#8 = (const string) sin8u_table::str7
|
||||
Constant inlined print_str::str#7 = (const string) sin8u_table::str6
|
||||
@ -6058,53 +6070,53 @@ Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Created 42 initial phi equivalence classes
|
||||
Coalesced [15] print_word::w#7 ← print_word::w#1
|
||||
Coalesced [16] print_char_cursor#134 ← print_char_cursor#2
|
||||
Coalesced [18] print_char_cursor#125 ← print_char_cursor#17
|
||||
Coalesced [20] print_char_cursor#114 ← print_char_cursor#2
|
||||
Coalesced (already) [22] print_char_cursor#126 ← print_char_cursor#17
|
||||
Coalesced (already) [24] print_char_cursor#115 ← print_char_cursor#2
|
||||
Coalesced (already) [26] print_char_cursor#127 ← print_char_cursor#17
|
||||
Coalesced (already) [28] print_char_cursor#111 ← print_char_cursor#2
|
||||
Coalesced (already) [30] print_char_cursor#120 ← print_char_cursor#17
|
||||
Coalesced (already) [32] print_char_cursor#112 ← print_char_cursor#2
|
||||
Not coalescing [49] print_char_cursor#121 ← print_line_cursor#1
|
||||
Coalesced [16] print_char_cursor#135 ← print_char_cursor#2
|
||||
Coalesced [18] print_char_cursor#126 ← print_char_cursor#17
|
||||
Coalesced [20] print_char_cursor#115 ← print_char_cursor#2
|
||||
Coalesced (already) [22] print_char_cursor#127 ← print_char_cursor#17
|
||||
Coalesced (already) [24] print_char_cursor#116 ← print_char_cursor#2
|
||||
Coalesced (already) [26] print_char_cursor#128 ← print_char_cursor#17
|
||||
Coalesced (already) [28] print_char_cursor#112 ← print_char_cursor#2
|
||||
Coalesced (already) [30] print_char_cursor#121 ← print_char_cursor#17
|
||||
Coalesced (already) [32] print_char_cursor#113 ← print_char_cursor#2
|
||||
Not coalescing [49] print_char_cursor#122 ← print_line_cursor#1
|
||||
Coalesced [52] print_word::w#6 ← print_word::w#2
|
||||
Coalesced (already) [53] print_char_cursor#133 ← print_char_cursor#2
|
||||
Coalesced (already) [55] print_char_cursor#122 ← print_char_cursor#17
|
||||
Coalesced (already) [59] print_char_cursor#123 ← print_char_cursor#17
|
||||
Coalesced (already) [63] print_char_cursor#124 ← print_char_cursor#17
|
||||
Coalesced (already) [53] print_char_cursor#134 ← print_char_cursor#2
|
||||
Coalesced (already) [55] print_char_cursor#123 ← print_char_cursor#17
|
||||
Coalesced (already) [59] print_char_cursor#124 ← print_char_cursor#17
|
||||
Coalesced (already) [63] print_char_cursor#125 ← print_char_cursor#17
|
||||
Coalesced [66] print_byte::b#13 ← print_byte::b#7
|
||||
Coalesced (already) [67] print_char_cursor#113 ← print_char_cursor#2
|
||||
Coalesced [69] print_line_cursor#49 ← print_line_cursor#1
|
||||
Coalesced (already) [67] print_char_cursor#114 ← print_char_cursor#2
|
||||
Coalesced [69] print_line_cursor#50 ← print_line_cursor#1
|
||||
Coalesced [75] sin8u_table::x#14 ← sin8u_table::x#1
|
||||
Coalesced [76] sin8u_table::sintab#27 ← sin8u_table::sintab#1
|
||||
Coalesced [77] sin8u_table::i#14 ← sin8u_table::i#1
|
||||
Coalesced [79] print_line_cursor#50 ← print_line_cursor#23
|
||||
Coalesced (already) [84] print_line_cursor#51 ← print_line_cursor#1
|
||||
Coalesced [79] print_line_cursor#51 ← print_line_cursor#23
|
||||
Coalesced (already) [84] print_line_cursor#52 ← print_line_cursor#1
|
||||
Coalesced [88] print_char::ch#5 ← print_char::ch#2
|
||||
Coalesced [89] print_char_cursor#116 ← print_char_cursor#97
|
||||
Coalesced [89] print_char_cursor#117 ← print_char_cursor#97
|
||||
Coalesced [93] print_char::ch#6 ← print_char::ch#3
|
||||
Coalesced [94] print_char_cursor#117 ← print_char_cursor#17
|
||||
Coalesced [94] print_char_cursor#118 ← print_char_cursor#17
|
||||
Coalesced [102] print_str::str#13 ← print_str::str#12
|
||||
Coalesced (already) [103] print_char_cursor#128 ← print_char_cursor#102
|
||||
Coalesced (already) [103] print_char_cursor#129 ← print_char_cursor#102
|
||||
Coalesced [110] print_str::str#14 ← print_str::str#0
|
||||
Coalesced [111] print_char_cursor#129 ← print_char_cursor#1
|
||||
Coalesced (already) [113] print_char_cursor#119 ← print_char_cursor#2
|
||||
Coalesced [111] print_char_cursor#130 ← print_char_cursor#1
|
||||
Coalesced (already) [113] print_char_cursor#120 ← print_char_cursor#2
|
||||
Coalesced [116] print_sword::w#7 ← print_sword::w#0
|
||||
Coalesced [117] print_char_cursor#131 ← print_char_cursor#17
|
||||
Coalesced (already) [120] print_char_cursor#132 ← print_char_cursor#92
|
||||
Coalesced [117] print_char_cursor#132 ← print_char_cursor#17
|
||||
Coalesced (already) [120] print_char_cursor#133 ← print_char_cursor#92
|
||||
Coalesced [123] print_sword::w#6 ← print_sword::w#1
|
||||
Coalesced (already) [124] print_char_cursor#130 ← print_char_cursor#2
|
||||
Coalesced (already) [124] print_char_cursor#131 ← print_char_cursor#2
|
||||
Coalesced [127] print_byte::b#11 ← print_byte::b#1
|
||||
Coalesced (already) [128] print_char_cursor#109 ← print_char_cursor#96
|
||||
Coalesced (already) [128] print_char_cursor#110 ← print_char_cursor#96
|
||||
Coalesced [131] print_byte::b#12 ← print_byte::b#2
|
||||
Coalesced (already) [132] print_char_cursor#110 ← print_char_cursor#17
|
||||
Coalesced (already) [136] print_char_cursor#118 ← print_char_cursor#2
|
||||
Coalesced (already) [132] print_char_cursor#111 ← print_char_cursor#17
|
||||
Coalesced (already) [136] print_char_cursor#119 ← print_char_cursor#2
|
||||
Coalesced [139] print_sbyte::b#7 ← print_sbyte::b#0
|
||||
Coalesced [140] print_char_cursor#136 ← print_char_cursor#17
|
||||
Coalesced (already) [143] print_char_cursor#108 ← print_char_cursor#94
|
||||
Coalesced [140] print_char_cursor#137 ← print_char_cursor#17
|
||||
Coalesced (already) [143] print_char_cursor#109 ← print_char_cursor#94
|
||||
Coalesced [146] print_sbyte::b#6 ← print_sbyte::b#1
|
||||
Coalesced (already) [147] print_char_cursor#135 ← print_char_cursor#2
|
||||
Coalesced (already) [147] print_char_cursor#136 ← print_char_cursor#2
|
||||
Coalesced [156] mul8su::m#4 ← mul8su::m#1
|
||||
Coalesced [159] mul8su::m#5 ← mul8su::m#0
|
||||
Coalesced [162] mul8u::a#10 ← mul8u::a#6
|
||||
@ -6325,7 +6337,7 @@ sin8u_table::@16: scope:[sin8u_table] from sin8u_table::@15
|
||||
[44] (byte) sin8u_table::sinx_tr#0 ← (const byte) sin8u_table::mid#0 + (byte~) sin8u_table::$21 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 ] )
|
||||
[45] *((byte*) sin8u_table::sintab#2) ← (byte) sin8u_table::sinx_tr#0 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 ] )
|
||||
[46] (byte*) sin8u_table::sintab#1 ← ++ (byte*) sin8u_table::sintab#2 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 ] )
|
||||
[47] (byte*~) print_char_cursor#121 ← (byte*) print_line_cursor#1 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#121 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#121 print_line_cursor#1 ] )
|
||||
[47] (byte*~) print_char_cursor#122 ← (byte*) print_line_cursor#1 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#122 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#122 print_line_cursor#1 ] )
|
||||
[48] call print_str param-assignment [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 ] )
|
||||
to:sin8u_table::@17
|
||||
sin8u_table::@17: scope:[sin8u_table] from sin8u_table::@16
|
||||
@ -6383,12 +6395,12 @@ print_byte: scope:[print_byte] from print_sbyte::@1 print_word print_word::@1 s
|
||||
[74] (byte*) print_char_cursor#97 ← phi( print_sbyte::@1/(byte*) print_char_cursor#94 print_word/(byte*) print_char_cursor#96 print_word::@1/(byte*) print_char_cursor#17 sin8u_table::@10/(byte*) print_char_cursor#2 sin8u_table::@12/(byte*) print_char_cursor#2 sin8u_table::@23/(byte*) print_char_cursor#2 sin8u_table::@6/(byte*) print_char_cursor#2 sin8u_table::@8/(byte*) print_char_cursor#2 ) [ print_byte::b#8 print_char_cursor#97 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 ] )
|
||||
[74] (byte) print_byte::b#8 ← phi( print_sbyte::@1/(byte~) print_byte::b#10 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 sin8u_table::@10/(const byte) sin8u_table::amplitude#0 sin8u_table::@12/(const byte) sin8u_table::mid#0 sin8u_table::@23/(byte) print_byte::b#7 sin8u_table::@6/(const byte) sin8u_table::min#0 sin8u_table::@8/(const byte) sin8u_table::max#0 ) [ print_byte::b#8 print_char_cursor#97 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 ] )
|
||||
[75] (byte~) print_byte::$0 ← (byte) print_byte::b#8 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#8 print_char_cursor#97 print_byte::$0 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_byte::$0 ] )
|
||||
[76] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] )
|
||||
[76] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] )
|
||||
[77] call print_char param-assignment [ print_char_cursor#17 print_byte::b#8 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::b#8 ] )
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
[78] (byte~) print_byte::$2 ← (byte) print_byte::b#8 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#17 print_byte::$2 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::$2 ] )
|
||||
[79] (byte) print_char::ch#3 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#17 print_char::ch#3 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] )
|
||||
[79] (byte) print_char::ch#3 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#17 print_char::ch#3 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] )
|
||||
[80] call print_char param-assignment [ print_char_cursor#17 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] )
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte::@1
|
||||
@ -6404,7 +6416,7 @@ print_char::@return: scope:[print_char] from print_char
|
||||
[85] return [ print_char_cursor#17 ] ( main:2::sin8u_table:7::print_byte:19::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:23::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:27::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:31::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:62::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:103::print_char:77 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:103::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:105::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:105::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:19::print_char:80 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:23::print_char:80 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:27::print_char:80 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:31::print_char:80 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:62::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:103::print_char:80 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:103::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:105::print_char:80 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:105::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_char:95 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sword::w#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sbyte:54::print_char:109 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sbyte::b#1 print_char_cursor#17 ] )
|
||||
to:@return
|
||||
print_str: scope:[print_str] from sin8u_table::@11 sin8u_table::@16 sin8u_table::@18 sin8u_table::@20 sin8u_table::@22 sin8u_table::@3 sin8u_table::@5 sin8u_table::@7 sin8u_table::@9
|
||||
[86] (byte*) print_char_cursor#102 ← phi( sin8u_table::@11/(byte*) print_char_cursor#17 sin8u_table::@16/(byte*~) print_char_cursor#121 sin8u_table::@18/(byte*) print_char_cursor#17 sin8u_table::@20/(byte*) print_char_cursor#17 sin8u_table::@22/(byte*) print_char_cursor#17 sin8u_table::@3/((byte*))(word/signed word/dword/signed dword) 1024 sin8u_table::@5/(byte*) print_char_cursor#17 sin8u_table::@7/(byte*) print_char_cursor#17 sin8u_table::@9/(byte*) print_char_cursor#17 ) [ print_str::str#12 print_char_cursor#102 ] ( main:2::sin8u_table:7::print_str:13 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:17 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:21 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:25 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:29 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:48 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:52 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:56 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:60 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] )
|
||||
[86] (byte*) print_char_cursor#102 ← phi( sin8u_table::@11/(byte*) print_char_cursor#17 sin8u_table::@16/(byte*~) print_char_cursor#122 sin8u_table::@18/(byte*) print_char_cursor#17 sin8u_table::@20/(byte*) print_char_cursor#17 sin8u_table::@22/(byte*) print_char_cursor#17 sin8u_table::@3/((byte*))(word/signed word/dword/signed dword) 1024 sin8u_table::@5/(byte*) print_char_cursor#17 sin8u_table::@7/(byte*) print_char_cursor#17 sin8u_table::@9/(byte*) print_char_cursor#17 ) [ print_str::str#12 print_char_cursor#102 ] ( main:2::sin8u_table:7::print_str:13 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:17 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:21 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:25 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:29 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:48 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:52 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:56 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:60 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] )
|
||||
[86] (byte*) print_str::str#12 ← phi( sin8u_table::@11/(const string) sin8u_table::str4 sin8u_table::@16/(const string) sin8u_table::str5 sin8u_table::@18/(const string) sin8u_table::str6 sin8u_table::@20/(const string) sin8u_table::str7 sin8u_table::@22/(const string) sin8u_table::str8 sin8u_table::@3/(const string) sin8u_table::str sin8u_table::@5/(const string) sin8u_table::str1 sin8u_table::@7/(const string) sin8u_table::str2 sin8u_table::@9/(const string) sin8u_table::str3 ) [ print_str::str#12 print_char_cursor#102 ] ( main:2::sin8u_table:7::print_str:13 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:17 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:21 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:25 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:29 [ sin8u_table::step#0 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:48 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:52 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:56 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] main:2::sin8u_table:7::print_str:60 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_str::str#12 print_char_cursor#102 ] )
|
||||
to:print_str::@1
|
||||
print_str::@1: scope:[print_str] from print_str print_str::@2
|
||||
@ -6927,7 +6939,6 @@ VARIABLE REGISTER WEIGHTS
|
||||
(byte) print_byte::b#2 4.0
|
||||
(byte) print_byte::b#7 22.0
|
||||
(byte) print_byte::b#8 5.25
|
||||
(byte[]) print_byte::hextab
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(byte) print_char::ch
|
||||
(byte) print_char::ch#2 4.0
|
||||
@ -6936,7 +6947,7 @@ VARIABLE REGISTER WEIGHTS
|
||||
(byte*) print_char_cursor
|
||||
(byte*) print_char_cursor#1 101.0
|
||||
(byte*) print_char_cursor#102 54.0
|
||||
(byte*~) print_char_cursor#121 22.0
|
||||
(byte*~) print_char_cursor#122 22.0
|
||||
(byte*) print_char_cursor#17 3.7073170731707323
|
||||
(byte*) print_char_cursor#2 13.269230769230768
|
||||
(byte*) print_char_cursor#62 6.0
|
||||
@ -6948,6 +6959,7 @@ VARIABLE REGISTER WEIGHTS
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 16.5
|
||||
(byte*) print_cls::sc#2 16.5
|
||||
(byte[]) print_hextab
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#1 8.55263157894737
|
||||
(byte*) print_line_cursor#12 204.0
|
||||
@ -7047,7 +7059,7 @@ Initial phi equivalence classes
|
||||
[ print_char::ch#4 print_char::ch#2 print_char::ch#3 ]
|
||||
[ print_str::str#10 print_str::str#12 print_str::str#0 ]
|
||||
[ print_sword::w#3 print_sword::w#1 print_sword::w#0 ]
|
||||
[ print_char_cursor#92 print_char_cursor#102 print_char_cursor#62 print_char_cursor#97 print_char_cursor#94 print_char_cursor#96 print_char_cursor#17 print_char_cursor#2 print_char_cursor#121 print_char_cursor#1 ]
|
||||
[ print_char_cursor#92 print_char_cursor#102 print_char_cursor#62 print_char_cursor#97 print_char_cursor#94 print_char_cursor#96 print_char_cursor#17 print_char_cursor#2 print_char_cursor#122 print_char_cursor#1 ]
|
||||
[ print_word::w#3 print_word::w#5 print_word::w#2 print_word::w#1 ]
|
||||
[ print_sbyte::b#3 print_sbyte::b#1 print_sbyte::b#0 ]
|
||||
[ mul8su::m#2 mul8su::m#1 mul8su::m#0 ]
|
||||
@ -7113,7 +7125,7 @@ Complete equivalence classes
|
||||
[ print_char::ch#4 print_char::ch#2 print_char::ch#3 ]
|
||||
[ print_str::str#10 print_str::str#12 print_str::str#0 ]
|
||||
[ print_sword::w#3 print_sword::w#1 print_sword::w#0 ]
|
||||
[ print_char_cursor#92 print_char_cursor#102 print_char_cursor#62 print_char_cursor#97 print_char_cursor#94 print_char_cursor#96 print_char_cursor#17 print_char_cursor#2 print_char_cursor#121 print_char_cursor#1 ]
|
||||
[ print_char_cursor#92 print_char_cursor#102 print_char_cursor#62 print_char_cursor#97 print_char_cursor#94 print_char_cursor#96 print_char_cursor#17 print_char_cursor#2 print_char_cursor#122 print_char_cursor#1 ]
|
||||
[ print_word::w#3 print_word::w#5 print_word::w#2 print_word::w#1 ]
|
||||
[ print_sbyte::b#3 print_sbyte::b#1 print_sbyte::b#0 ]
|
||||
[ mul8su::m#2 mul8su::m#1 mul8su::m#0 ]
|
||||
@ -7178,7 +7190,7 @@ Allocated zp ZP_BYTE:10 [ print_byte::b#8 print_byte::b#10 print_byte::b#1 print
|
||||
Allocated zp ZP_BYTE:11 [ print_char::ch#4 print_char::ch#2 print_char::ch#3 ]
|
||||
Allocated zp ZP_WORD:12 [ print_str::str#10 print_str::str#12 print_str::str#0 ]
|
||||
Allocated zp ZP_WORD:14 [ print_sword::w#3 print_sword::w#1 print_sword::w#0 ]
|
||||
Allocated zp ZP_WORD:16 [ print_char_cursor#92 print_char_cursor#102 print_char_cursor#62 print_char_cursor#97 print_char_cursor#94 print_char_cursor#96 print_char_cursor#17 print_char_cursor#2 print_char_cursor#121 print_char_cursor#1 ]
|
||||
Allocated zp ZP_WORD:16 [ print_char_cursor#92 print_char_cursor#102 print_char_cursor#62 print_char_cursor#97 print_char_cursor#94 print_char_cursor#96 print_char_cursor#17 print_char_cursor#2 print_char_cursor#122 print_char_cursor#1 ]
|
||||
Allocated zp ZP_WORD:18 [ print_word::w#3 print_word::w#5 print_word::w#2 print_word::w#1 ]
|
||||
Allocated zp ZP_BYTE:20 [ print_sbyte::b#3 print_sbyte::b#1 print_sbyte::b#0 ]
|
||||
Allocated zp ZP_WORD:21 [ mul8su::m#2 mul8su::m#1 mul8su::m#0 ]
|
||||
@ -7549,7 +7561,7 @@ sin8u_table: {
|
||||
bne !+
|
||||
inc sintab+1
|
||||
!:
|
||||
//SEG110 [47] (byte*~) print_char_cursor#121 ← (byte*) print_line_cursor#1 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#121 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#121 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
//SEG110 [47] (byte*~) print_char_cursor#122 ← (byte*) print_line_cursor#1 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#122 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#122 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
lda print_line_cursor
|
||||
sta print_char_cursor
|
||||
lda print_line_cursor+1
|
||||
@ -7557,7 +7569,7 @@ sin8u_table: {
|
||||
//SEG111 [48] call print_str param-assignment [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 ] )
|
||||
//SEG112 [86] phi from sin8u_table::@16 to print_str [phi:sin8u_table::@16->print_str]
|
||||
print_str_from_b16:
|
||||
//SEG113 [86] phi (byte*) print_char_cursor#102 = (byte*~) print_char_cursor#121 [phi:sin8u_table::@16->print_str#0] -- register_copy
|
||||
//SEG113 [86] phi (byte*) print_char_cursor#102 = (byte*~) print_char_cursor#122 [phi:sin8u_table::@16->print_str#0] -- register_copy
|
||||
//SEG114 [86] phi (byte*) print_str::str#12 = (const string) sin8u_table::str5 [phi:sin8u_table::@16->print_str#1] -- pbuz1=pbuc1
|
||||
lda #<str5
|
||||
sta print_str.str
|
||||
@ -7747,9 +7759,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
sta _0
|
||||
//SEG172 [76] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
//SEG172 [76] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
ldy _0
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
sta print_char.ch
|
||||
//SEG173 [77] call print_char param-assignment [ print_char_cursor#17 print_byte::b#8 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::b#8 ] )
|
||||
//SEG174 [82] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
@ -7764,9 +7776,9 @@ print_byte: {
|
||||
lda #$f
|
||||
and b
|
||||
sta _2
|
||||
//SEG179 [79] (byte) print_char::ch#3 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#17 print_char::ch#3 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
//SEG179 [79] (byte) print_char::ch#3 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#17 print_char::ch#3 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
ldy _2
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
sta print_char.ch
|
||||
//SEG180 [80] call print_char param-assignment [ print_char_cursor#17 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] )
|
||||
//SEG181 [82] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
@ -7779,7 +7791,6 @@ print_byte: {
|
||||
breturn:
|
||||
//SEG185 [81] return [ print_char_cursor#17 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG186 print_char
|
||||
print_char: {
|
||||
@ -8638,6 +8649,7 @@ print_cls: {
|
||||
//SEG456 [215] return [ ] ( main:2::print_cls:5 [ ] )
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
REGISTER UPLIFT POTENTIAL REGISTERS
|
||||
Equivalence Class zp ZP_BYTE:57 [ sin8u_table::$21 ] has ALU potential.
|
||||
@ -8652,7 +8664,7 @@ Statement [44] (byte) sin8u_table::sinx_tr#0 ← (const byte) sin8u_table::mid#0
|
||||
Statement [45] *((byte*) sin8u_table::sintab#2) ← (byte) sin8u_table::sinx_tr#0 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 ] ) always clobbers reg byte y
|
||||
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:51 [ sin8u_table::sinx#0 ]
|
||||
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:58 [ sin8u_table::sinx_tr#0 ]
|
||||
Statement [47] (byte*~) print_char_cursor#121 ← (byte*) print_line_cursor#1 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#121 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#121 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [47] (byte*~) print_char_cursor#122 ← (byte*) print_line_cursor#1 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#122 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#122 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:58 [ sin8u_table::sinx_tr#0 ]
|
||||
Statement [49] (word) print_word::w#2 ← (word) sin8u_table::x#10 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#2 print_char_cursor#2 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#2 print_char_cursor#2 ] ) always clobbers reg byte a
|
||||
Statement [57] (signed word) print_sword::w#1 ← (signed word) sin8u_table::sinx_sc#0 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sword::w#1 print_char_cursor#2 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sword::w#1 print_char_cursor#2 ] ) always clobbers reg byte a
|
||||
@ -8717,7 +8729,7 @@ Statement [41] (signed word) mul8su::return#2 ← (signed word)(word) mul8su::m#
|
||||
Statement [42] (signed word) sin8u_table::sinx_sc#0 ← (signed word) mul8su::return#2 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [44] (byte) sin8u_table::sinx_tr#0 ← (const byte) sin8u_table::mid#0 + (byte~) sin8u_table::$21 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [45] *((byte*) sin8u_table::sintab#2) ← (byte) sin8u_table::sinx_tr#0 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 ] ) always clobbers reg byte a reg byte y
|
||||
Statement [47] (byte*~) print_char_cursor#121 ← (byte*) print_line_cursor#1 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#121 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#121 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [47] (byte*~) print_char_cursor#122 ← (byte*) print_line_cursor#1 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#122 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#122 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [49] (word) print_word::w#2 ← (word) sin8u_table::x#10 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#2 print_char_cursor#2 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#2 print_char_cursor#2 ] ) always clobbers reg byte a
|
||||
Statement [57] (signed word) print_sword::w#1 ← (signed word) sin8u_table::sinx_sc#0 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sword::w#1 print_char_cursor#2 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sword::w#1 print_char_cursor#2 ] ) always clobbers reg byte a
|
||||
Statement [65] (word) sin8u_table::x#1 ← (word) sin8u_table::x#10 + (word) sin8u_table::step#0 [ sin8u_table::step#0 sin8u_table::i#10 sin8u_table::x#1 sin8u_table::sintab#1 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::i#10 sin8u_table::x#1 sin8u_table::sintab#1 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
@ -8771,7 +8783,7 @@ Potential registers zp ZP_BYTE:10 [ print_byte::b#8 print_byte::b#10 print_byte:
|
||||
Potential registers zp ZP_BYTE:11 [ print_char::ch#4 print_char::ch#2 print_char::ch#3 ] : zp ZP_BYTE:11 , reg byte a , reg byte x , reg byte y ,
|
||||
Potential registers zp ZP_WORD:12 [ print_str::str#10 print_str::str#12 print_str::str#0 ] : zp ZP_WORD:12 ,
|
||||
Potential registers zp ZP_WORD:14 [ print_sword::w#3 print_sword::w#1 print_sword::w#0 ] : zp ZP_WORD:14 ,
|
||||
Potential registers zp ZP_WORD:16 [ print_char_cursor#92 print_char_cursor#102 print_char_cursor#62 print_char_cursor#97 print_char_cursor#94 print_char_cursor#96 print_char_cursor#17 print_char_cursor#2 print_char_cursor#121 print_char_cursor#1 ] : zp ZP_WORD:16 ,
|
||||
Potential registers zp ZP_WORD:16 [ print_char_cursor#92 print_char_cursor#102 print_char_cursor#62 print_char_cursor#97 print_char_cursor#94 print_char_cursor#96 print_char_cursor#17 print_char_cursor#2 print_char_cursor#122 print_char_cursor#1 ] : zp ZP_WORD:16 ,
|
||||
Potential registers zp ZP_WORD:18 [ print_word::w#3 print_word::w#5 print_word::w#2 print_word::w#1 ] : zp ZP_WORD:18 ,
|
||||
Potential registers zp ZP_BYTE:20 [ print_sbyte::b#3 print_sbyte::b#1 print_sbyte::b#0 ] : zp ZP_BYTE:20 , reg byte a , reg byte x ,
|
||||
Potential registers zp ZP_WORD:21 [ mul8su::m#2 mul8su::m#1 mul8su::m#0 ] : zp ZP_WORD:21 ,
|
||||
@ -8831,7 +8843,7 @@ Potential registers zp ZP_BYTE:93 [ divr16u::$2 ] : zp ZP_BYTE:93 , reg byte a ,
|
||||
|
||||
REGISTER UPLIFT SCOPES
|
||||
Uplift Scope [mul8u] 346.86: zp ZP_WORD:25 [ mul8u::res#2 mul8u::res#6 mul8u::res#1 ] 249.57: zp ZP_WORD:27 [ mul8u::mb#2 mul8u::mb#0 mul8u::mb#1 ] 202: zp ZP_BYTE:65 [ mul8u::$1 ] 177.67: zp ZP_BYTE:24 [ mul8u::a#3 mul8u::a#6 mul8u::a#8 mul8u::a#2 mul8u::a#0 ] 8: zp ZP_BYTE:23 [ mul8u::b#2 mul8u::b#1 ] 4: zp ZP_WORD:61 [ mul8u::return#2 ] 4: zp ZP_WORD:81 [ mul8u::return#3 ]
|
||||
Uplift Scope [] 225.55: zp ZP_WORD:8 [ print_line_cursor#12 print_line_cursor#23 print_line_cursor#1 ] 223.48: zp ZP_WORD:16 [ print_char_cursor#92 print_char_cursor#102 print_char_cursor#62 print_char_cursor#97 print_char_cursor#94 print_char_cursor#96 print_char_cursor#17 print_char_cursor#2 print_char_cursor#121 print_char_cursor#1 ]
|
||||
Uplift Scope [] 225.55: zp ZP_WORD:8 [ print_line_cursor#12 print_line_cursor#23 print_line_cursor#1 ] 223.48: zp ZP_WORD:16 [ print_char_cursor#92 print_char_cursor#102 print_char_cursor#62 print_char_cursor#97 print_char_cursor#94 print_char_cursor#96 print_char_cursor#17 print_char_cursor#2 print_char_cursor#122 print_char_cursor#1 ]
|
||||
Uplift Scope [print_str] 305.5: zp ZP_WORD:12 [ print_str::str#10 print_str::str#12 print_str::str#0 ]
|
||||
Uplift Scope [divr16u] 96.25: zp ZP_WORD:37 [ divr16u::rem#4 divr16u::rem#10 divr16u::rem#5 divr16u::rem#0 divr16u::rem#1 divr16u::rem#2 ] 37.25: zp ZP_WORD:41 [ divr16u::quotient#3 divr16u::return#0 divr16u::quotient#1 divr16u::quotient#2 ] 22: zp ZP_BYTE:92 [ divr16u::$1 ] 22: zp ZP_BYTE:93 [ divr16u::$2 ] 18.19: zp ZP_BYTE:43 [ divr16u::i#2 divr16u::i#1 ] 7.46: zp ZP_WORD:39 [ divr16u::dividend#2 divr16u::dividend#0 ] 4: zp ZP_WORD:88 [ divr16u::return#2 ]
|
||||
Uplift Scope [sin8s] 27.5: zp ZP_WORD:30 [ sin8s::x#6 sin8s::x#4 sin8s::x#2 sin8s::x#0 sin8s::x#1 ] 22: zp ZP_BYTE:50 [ sin8s::return#2 ] 13: zp ZP_BYTE:33 [ sin8s::return#0 sin8s::return#5 sin8s::sinx#1 ] 10: zp ZP_BYTE:32 [ sin8s::usinx#4 sin8s::usinx#1 sin8s::usinx#2 ] 4: zp ZP_WORD:66 [ sin8s::$6 ] 4: zp ZP_BYTE:70 [ sin8s::x2#0 ] 4: zp ZP_BYTE:74 [ sin8s::x3_6#0 ] 4: zp ZP_BYTE:77 [ sin8s::x4#0 ] 4: zp ZP_BYTE:79 [ sin8s::x5#0 ] 4: zp ZP_BYTE:80 [ sin8s::x5_128#0 ] 1: zp ZP_BYTE:72 [ sin8s::x3#0 ] 0.64: zp ZP_BYTE:68 [ sin8s::x1#0 ] 0.33: zp ZP_BYTE:75 [ sin8s::usinx#0 ] 0.06: zp ZP_BYTE:29 [ sin8s::isUpper#10 ]
|
||||
@ -8849,7 +8861,7 @@ Uplift Scope [print_ln]
|
||||
Uplift Scope [main]
|
||||
|
||||
Uplifting [mul8u] best 24241 combination zp ZP_WORD:25 [ mul8u::res#2 mul8u::res#6 mul8u::res#1 ] zp ZP_WORD:27 [ mul8u::mb#2 mul8u::mb#0 mul8u::mb#1 ] reg byte a [ mul8u::$1 ] reg byte x [ mul8u::a#3 mul8u::a#6 mul8u::a#8 mul8u::a#2 mul8u::a#0 ] reg byte a [ mul8u::b#2 mul8u::b#1 ] zp ZP_WORD:61 [ mul8u::return#2 ] zp ZP_WORD:81 [ mul8u::return#3 ]
|
||||
Uplifting [] best 24241 combination zp ZP_WORD:8 [ print_line_cursor#12 print_line_cursor#23 print_line_cursor#1 ] zp ZP_WORD:16 [ print_char_cursor#92 print_char_cursor#102 print_char_cursor#62 print_char_cursor#97 print_char_cursor#94 print_char_cursor#96 print_char_cursor#17 print_char_cursor#2 print_char_cursor#121 print_char_cursor#1 ]
|
||||
Uplifting [] best 24241 combination zp ZP_WORD:8 [ print_line_cursor#12 print_line_cursor#23 print_line_cursor#1 ] zp ZP_WORD:16 [ print_char_cursor#92 print_char_cursor#102 print_char_cursor#62 print_char_cursor#97 print_char_cursor#94 print_char_cursor#96 print_char_cursor#17 print_char_cursor#2 print_char_cursor#122 print_char_cursor#1 ]
|
||||
Uplifting [print_str] best 24241 combination zp ZP_WORD:12 [ print_str::str#10 print_str::str#12 print_str::str#0 ]
|
||||
Uplifting [divr16u] best 24051 combination zp ZP_WORD:37 [ divr16u::rem#4 divr16u::rem#10 divr16u::rem#5 divr16u::rem#0 divr16u::rem#1 divr16u::rem#2 ] zp ZP_WORD:41 [ divr16u::quotient#3 divr16u::return#0 divr16u::quotient#1 divr16u::quotient#2 ] reg byte a [ divr16u::$1 ] reg byte a [ divr16u::$2 ] reg byte x [ divr16u::i#2 divr16u::i#1 ] zp ZP_WORD:39 [ divr16u::dividend#2 divr16u::dividend#0 ] zp ZP_WORD:88 [ divr16u::return#2 ]
|
||||
Uplifting [sin8s] best 23946 combination zp ZP_WORD:30 [ sin8s::x#6 sin8s::x#4 sin8s::x#2 sin8s::x#0 sin8s::x#1 ] reg byte a [ sin8s::return#2 ] reg byte a [ sin8s::return#0 sin8s::return#5 sin8s::sinx#1 ] reg byte x [ sin8s::usinx#4 sin8s::usinx#1 sin8s::usinx#2 ] zp ZP_WORD:66 [ sin8s::$6 ] zp ZP_BYTE:70 [ sin8s::x2#0 ] zp ZP_BYTE:74 [ sin8s::x3_6#0 ] zp ZP_BYTE:77 [ sin8s::x4#0 ] zp ZP_BYTE:79 [ sin8s::x5#0 ] zp ZP_BYTE:80 [ sin8s::x5_128#0 ] zp ZP_BYTE:72 [ sin8s::x3#0 ] zp ZP_BYTE:68 [ sin8s::x1#0 ] zp ZP_BYTE:75 [ sin8s::usinx#0 ] zp ZP_BYTE:29 [ sin8s::isUpper#10 ]
|
||||
@ -8924,7 +8936,7 @@ Coalescing zero page register [ zp ZP_WORD:12 [ print_str::str#10 print_str::str
|
||||
Coalescing zero page register [ zp ZP_WORD:12 [ print_str::str#10 print_str::str#12 print_str::str#0 print_sword::w#3 print_sword::w#1 print_sword::w#0 print_word::w#3 print_word::w#5 print_word::w#2 print_word::w#1 mul8u::mb#2 mul8u::mb#0 mul8u::mb#1 ] ] with [ zp ZP_WORD:30 [ sin8s::x#6 sin8s::x#4 sin8s::x#2 sin8s::x#0 sin8s::x#1 sin8s::$6 ] ]
|
||||
Coalescing zero page register [ zp ZP_BYTE:36 [ mulu8_sel::select#5 ] ] with [ zp ZP_BYTE:51 [ sin8u_table::sinx#0 ] ]
|
||||
Allocated (was zp ZP_WORD:12) zp ZP_WORD:11 [ print_str::str#10 print_str::str#12 print_str::str#0 print_sword::w#3 print_sword::w#1 print_sword::w#0 print_word::w#3 print_word::w#5 print_word::w#2 print_word::w#1 mul8u::mb#2 mul8u::mb#0 mul8u::mb#1 sin8s::x#6 sin8s::x#4 sin8s::x#2 sin8s::x#0 sin8s::x#1 sin8s::$6 ]
|
||||
Allocated (was zp ZP_WORD:16) zp ZP_WORD:13 [ print_char_cursor#92 print_char_cursor#102 print_char_cursor#62 print_char_cursor#97 print_char_cursor#94 print_char_cursor#96 print_char_cursor#17 print_char_cursor#2 print_char_cursor#121 print_char_cursor#1 ]
|
||||
Allocated (was zp ZP_WORD:16) zp ZP_WORD:13 [ print_char_cursor#92 print_char_cursor#102 print_char_cursor#62 print_char_cursor#97 print_char_cursor#94 print_char_cursor#96 print_char_cursor#17 print_char_cursor#2 print_char_cursor#122 print_char_cursor#1 ]
|
||||
Allocated (was zp ZP_WORD:21) zp ZP_WORD:15 [ mul8su::m#2 mul8su::m#1 mul8su::m#0 mul8su::return#2 mul8u::return#2 mul8u::res#2 mul8u::res#6 mul8u::res#1 mul8u::return#3 sin8u_table::sinx_sc#0 mulu8_sel::$0 mulu8_sel::$1 ]
|
||||
Allocated (was zp ZP_BYTE:36) zp ZP_BYTE:17 [ mulu8_sel::select#5 sin8u_table::sinx#0 ]
|
||||
Allocated (was zp ZP_WORD:41) zp ZP_WORD:18 [ divr16u::quotient#3 divr16u::return#0 divr16u::quotient#1 divr16u::quotient#2 divr16u::return#2 div16u::return#2 sin8u_table::step#0 div16u::return#0 ]
|
||||
@ -9226,7 +9238,7 @@ sin8u_table: {
|
||||
bne !+
|
||||
inc sintab+1
|
||||
!:
|
||||
//SEG110 [47] (byte*~) print_char_cursor#121 ← (byte*) print_line_cursor#1 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#121 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#121 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
//SEG110 [47] (byte*~) print_char_cursor#122 ← (byte*) print_line_cursor#1 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#122 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#122 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
lda print_line_cursor
|
||||
sta print_char_cursor
|
||||
lda print_line_cursor+1
|
||||
@ -9234,7 +9246,7 @@ sin8u_table: {
|
||||
//SEG111 [48] call print_str param-assignment [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 ] )
|
||||
//SEG112 [86] phi from sin8u_table::@16 to print_str [phi:sin8u_table::@16->print_str]
|
||||
print_str_from_b16:
|
||||
//SEG113 [86] phi (byte*) print_char_cursor#102 = (byte*~) print_char_cursor#121 [phi:sin8u_table::@16->print_str#0] -- register_copy
|
||||
//SEG113 [86] phi (byte*) print_char_cursor#102 = (byte*~) print_char_cursor#122 [phi:sin8u_table::@16->print_str#0] -- register_copy
|
||||
//SEG114 [86] phi (byte*) print_str::str#12 = (const string) sin8u_table::str5 [phi:sin8u_table::@16->print_str#1] -- pbuz1=pbuc1
|
||||
lda #<str5
|
||||
sta print_str.str
|
||||
@ -9420,9 +9432,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
//SEG172 [76] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG172 [76] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG173 [77] call print_char param-assignment [ print_char_cursor#17 print_byte::b#8 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::b#8 ] )
|
||||
//SEG174 [82] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
print_char_from_print_byte:
|
||||
@ -9435,9 +9447,9 @@ print_byte: {
|
||||
//SEG178 [78] (byte~) print_byte::$2 ← (byte) print_byte::b#8 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#17 print_byte::$2 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::$2 ] ) -- vbuaa=vbuz1_band_vbuc1
|
||||
lda #$f
|
||||
and b
|
||||
//SEG179 [79] (byte) print_char::ch#3 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#17 print_char::ch#3 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG179 [79] (byte) print_char::ch#3 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#17 print_char::ch#3 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG180 [80] call print_char param-assignment [ print_char_cursor#17 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] )
|
||||
//SEG181 [82] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
print_char_from_b1:
|
||||
@ -9449,7 +9461,6 @@ print_byte: {
|
||||
breturn:
|
||||
//SEG185 [81] return [ print_char_cursor#17 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG186 print_char
|
||||
print_char: {
|
||||
@ -10203,6 +10214,7 @@ print_cls: {
|
||||
//SEG456 [215] return [ ] ( main:2::print_cls:5 [ ] )
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
ASSEMBLER OPTIMIZATIONS
|
||||
Removing instruction jmp b34
|
||||
@ -10618,8 +10630,6 @@ FINAL SYMBOL TABLE
|
||||
(byte) print_byte::b#2 b zp ZP_BYTE:10 4.0
|
||||
(byte) print_byte::b#7 b zp ZP_BYTE:10 22.0
|
||||
(byte) print_byte::b#8 b zp ZP_BYTE:10 5.25
|
||||
(byte[]) print_byte::hextab
|
||||
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -10629,7 +10639,7 @@ FINAL SYMBOL TABLE
|
||||
(byte*) print_char_cursor
|
||||
(byte*) print_char_cursor#1 print_char_cursor zp ZP_WORD:13 101.0
|
||||
(byte*) print_char_cursor#102 print_char_cursor zp ZP_WORD:13 54.0
|
||||
(byte*~) print_char_cursor#121 print_char_cursor zp ZP_WORD:13 22.0
|
||||
(byte*~) print_char_cursor#122 print_char_cursor zp ZP_WORD:13 22.0
|
||||
(byte*) print_char_cursor#17 print_char_cursor zp ZP_WORD:13 3.7073170731707323
|
||||
(byte*) print_char_cursor#2 print_char_cursor zp ZP_WORD:13 13.269230769230768
|
||||
(byte*) print_char_cursor#62 print_char_cursor zp ZP_WORD:13 6.0
|
||||
@ -10643,6 +10653,8 @@ FINAL SYMBOL TABLE
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 sc zp ZP_WORD:2 16.5
|
||||
(byte*) print_cls::sc#2 sc zp ZP_WORD:2 16.5
|
||||
(byte[]) print_hextab
|
||||
(const string) print_hextab#0 print_hextab = (string) "0123456789abcdef"
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#1 print_line_cursor zp ZP_WORD:8 8.55263157894737
|
||||
(byte*) print_line_cursor#12 print_line_cursor zp ZP_WORD:8 204.0
|
||||
@ -10809,7 +10821,7 @@ zp ZP_WORD:8 [ print_line_cursor#12 print_line_cursor#23 print_line_cursor#1 ]
|
||||
zp ZP_BYTE:10 [ print_byte::b#8 print_byte::b#10 print_byte::b#1 print_byte::b#2 print_byte::b#7 print_sbyte::b#3 print_sbyte::b#1 print_sbyte::b#0 sin8s::isUpper#10 ]
|
||||
reg byte a [ print_char::ch#4 print_char::ch#2 print_char::ch#3 ]
|
||||
zp ZP_WORD:11 [ print_str::str#10 print_str::str#12 print_str::str#0 print_sword::w#3 print_sword::w#1 print_sword::w#0 print_word::w#3 print_word::w#5 print_word::w#2 print_word::w#1 mul8u::mb#2 mul8u::mb#0 mul8u::mb#1 sin8s::x#6 sin8s::x#4 sin8s::x#2 sin8s::x#0 sin8s::x#1 sin8s::$6 ]
|
||||
zp ZP_WORD:13 [ print_char_cursor#92 print_char_cursor#102 print_char_cursor#62 print_char_cursor#97 print_char_cursor#94 print_char_cursor#96 print_char_cursor#17 print_char_cursor#2 print_char_cursor#121 print_char_cursor#1 ]
|
||||
zp ZP_WORD:13 [ print_char_cursor#92 print_char_cursor#102 print_char_cursor#62 print_char_cursor#97 print_char_cursor#94 print_char_cursor#96 print_char_cursor#17 print_char_cursor#2 print_char_cursor#122 print_char_cursor#1 ]
|
||||
zp ZP_WORD:15 [ mul8su::m#2 mul8su::m#1 mul8su::m#0 mul8su::return#2 mul8u::return#2 mul8u::res#2 mul8u::res#6 mul8u::res#1 mul8u::return#3 sin8u_table::sinx_sc#0 mulu8_sel::$0 mulu8_sel::$1 ]
|
||||
reg byte a [ mul8u::b#2 mul8u::b#1 ]
|
||||
reg byte x [ mul8u::a#3 mul8u::a#6 mul8u::a#8 mul8u::a#2 mul8u::a#0 ]
|
||||
@ -11075,14 +11087,14 @@ sin8u_table: {
|
||||
bne !+
|
||||
inc sintab+1
|
||||
!:
|
||||
//SEG110 [47] (byte*~) print_char_cursor#121 ← (byte*) print_line_cursor#1 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#121 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#121 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
//SEG110 [47] (byte*~) print_char_cursor#122 ← (byte*) print_line_cursor#1 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#122 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#122 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
lda print_line_cursor
|
||||
sta print_char_cursor
|
||||
lda print_line_cursor+1
|
||||
sta print_char_cursor+1
|
||||
//SEG111 [48] call print_str param-assignment [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 ] )
|
||||
//SEG112 [86] phi from sin8u_table::@16 to print_str [phi:sin8u_table::@16->print_str]
|
||||
//SEG113 [86] phi (byte*) print_char_cursor#102 = (byte*~) print_char_cursor#121 [phi:sin8u_table::@16->print_str#0] -- register_copy
|
||||
//SEG113 [86] phi (byte*) print_char_cursor#102 = (byte*~) print_char_cursor#122 [phi:sin8u_table::@16->print_str#0] -- register_copy
|
||||
//SEG114 [86] phi (byte*) print_str::str#12 = (const string) sin8u_table::str5 [phi:sin8u_table::@16->print_str#1] -- pbuz1=pbuc1
|
||||
lda #<str5
|
||||
sta print_str.str
|
||||
@ -11237,9 +11249,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
//SEG172 [76] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG172 [76] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#97 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG173 [77] call print_char param-assignment [ print_char_cursor#17 print_byte::b#8 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::b#8 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::b#8 ] )
|
||||
//SEG174 [82] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
//SEG175 [82] phi (byte*) print_char_cursor#62 = (byte*) print_char_cursor#97 [phi:print_byte->print_char#0] -- register_copy
|
||||
@ -11249,9 +11261,9 @@ print_byte: {
|
||||
//SEG178 [78] (byte~) print_byte::$2 ← (byte) print_byte::b#8 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#17 print_byte::$2 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::$2 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_byte::$2 ] ) -- vbuaa=vbuz1_band_vbuc1
|
||||
lda #$f
|
||||
and b
|
||||
//SEG179 [79] (byte) print_char::ch#3 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#17 print_char::ch#3 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG179 [79] (byte) print_char::ch#3 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#17 print_char::ch#3 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG180 [80] call print_char param-assignment [ print_char_cursor#17 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] )
|
||||
//SEG181 [82] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
//SEG182 [82] phi (byte*) print_char_cursor#62 = (byte*) print_char_cursor#17 [phi:print_byte::@1->print_char#0] -- register_copy
|
||||
@ -11260,7 +11272,6 @@ print_byte: {
|
||||
//SEG184 print_byte::@return
|
||||
//SEG185 [81] return [ print_char_cursor#17 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#17 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:113 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#17 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG186 print_char
|
||||
print_char: {
|
||||
@ -11884,4 +11895,5 @@ print_cls: {
|
||||
//SEG456 [215] return [ ] ( main:2::print_cls:5 [ ] )
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
|
@ -134,8 +134,6 @@
|
||||
(byte) print_byte::b#2 b zp ZP_BYTE:10 4.0
|
||||
(byte) print_byte::b#7 b zp ZP_BYTE:10 22.0
|
||||
(byte) print_byte::b#8 b zp ZP_BYTE:10 5.25
|
||||
(byte[]) print_byte::hextab
|
||||
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -145,7 +143,7 @@
|
||||
(byte*) print_char_cursor
|
||||
(byte*) print_char_cursor#1 print_char_cursor zp ZP_WORD:13 101.0
|
||||
(byte*) print_char_cursor#102 print_char_cursor zp ZP_WORD:13 54.0
|
||||
(byte*~) print_char_cursor#121 print_char_cursor zp ZP_WORD:13 22.0
|
||||
(byte*~) print_char_cursor#122 print_char_cursor zp ZP_WORD:13 22.0
|
||||
(byte*) print_char_cursor#17 print_char_cursor zp ZP_WORD:13 3.7073170731707323
|
||||
(byte*) print_char_cursor#2 print_char_cursor zp ZP_WORD:13 13.269230769230768
|
||||
(byte*) print_char_cursor#62 print_char_cursor zp ZP_WORD:13 6.0
|
||||
@ -159,6 +157,8 @@
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 sc zp ZP_WORD:2 16.5
|
||||
(byte*) print_cls::sc#2 sc zp ZP_WORD:2 16.5
|
||||
(byte[]) print_hextab
|
||||
(const string) print_hextab#0 print_hextab = (string) "0123456789abcdef"
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#1 print_line_cursor zp ZP_WORD:8 8.55263157894737
|
||||
(byte*) print_line_cursor#12 print_line_cursor zp ZP_WORD:8 204.0
|
||||
@ -325,7 +325,7 @@ zp ZP_WORD:8 [ print_line_cursor#12 print_line_cursor#23 print_line_cursor#1 ]
|
||||
zp ZP_BYTE:10 [ print_byte::b#8 print_byte::b#10 print_byte::b#1 print_byte::b#2 print_byte::b#7 print_sbyte::b#3 print_sbyte::b#1 print_sbyte::b#0 sin8s::isUpper#10 ]
|
||||
reg byte a [ print_char::ch#4 print_char::ch#2 print_char::ch#3 ]
|
||||
zp ZP_WORD:11 [ print_str::str#10 print_str::str#12 print_str::str#0 print_sword::w#3 print_sword::w#1 print_sword::w#0 print_word::w#3 print_word::w#5 print_word::w#2 print_word::w#1 mul8u::mb#2 mul8u::mb#0 mul8u::mb#1 sin8s::x#6 sin8s::x#4 sin8s::x#2 sin8s::x#0 sin8s::x#1 sin8s::$6 ]
|
||||
zp ZP_WORD:13 [ print_char_cursor#92 print_char_cursor#102 print_char_cursor#62 print_char_cursor#97 print_char_cursor#94 print_char_cursor#96 print_char_cursor#17 print_char_cursor#2 print_char_cursor#121 print_char_cursor#1 ]
|
||||
zp ZP_WORD:13 [ print_char_cursor#92 print_char_cursor#102 print_char_cursor#62 print_char_cursor#97 print_char_cursor#94 print_char_cursor#96 print_char_cursor#17 print_char_cursor#2 print_char_cursor#122 print_char_cursor#1 ]
|
||||
zp ZP_WORD:15 [ mul8su::m#2 mul8su::m#1 mul8su::m#0 mul8su::return#2 mul8u::return#2 mul8u::res#2 mul8u::res#6 mul8u::res#1 mul8u::return#3 sin8u_table::sinx_sc#0 mulu8_sel::$0 mulu8_sel::$1 ]
|
||||
reg byte a [ mul8u::b#2 mul8u::b#1 ]
|
||||
reg byte x [ mul8u::a#3 mul8u::a#6 mul8u::a#8 mul8u::a#2 mul8u::a#0 ]
|
||||
|
@ -452,15 +452,14 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
lda #$f
|
||||
and b
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
print_str: {
|
||||
.label str = 6
|
||||
@ -506,3 +505,4 @@ print_cls: {
|
||||
bne b1
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -131,8 +131,6 @@
|
||||
(byte) print_byte::b#0 b zp ZP_BYTE:11 4.0
|
||||
(byte) print_byte::b#1 b zp ZP_BYTE:11 4.0
|
||||
(byte) print_byte::b#2 b zp ZP_BYTE:11 2.0
|
||||
(byte[]) print_byte::hextab
|
||||
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -143,11 +141,11 @@
|
||||
(byte*) print_char_cursor
|
||||
(byte*) print_char_cursor#1 print_char_cursor zp ZP_WORD:9 101.0
|
||||
(byte*) print_char_cursor#120 print_char_cursor zp ZP_WORD:9 2.75
|
||||
(byte*~) print_char_cursor#141 print_char_cursor zp ZP_WORD:9 22.0
|
||||
(byte*~) print_char_cursor#142 print_char_cursor zp ZP_WORD:9 22.0
|
||||
(byte*~) print_char_cursor#146 print_char_cursor zp ZP_WORD:9 22.0
|
||||
(byte*~) print_char_cursor#150 print_char_cursor zp ZP_WORD:9 22.0
|
||||
(byte*~) print_char_cursor#158 print_char_cursor zp ZP_WORD:9 22.0
|
||||
(byte*~) print_char_cursor#143 print_char_cursor zp ZP_WORD:9 22.0
|
||||
(byte*~) print_char_cursor#147 print_char_cursor zp ZP_WORD:9 22.0
|
||||
(byte*~) print_char_cursor#151 print_char_cursor zp ZP_WORD:9 22.0
|
||||
(byte*~) print_char_cursor#159 print_char_cursor zp ZP_WORD:9 22.0
|
||||
(byte*) print_char_cursor#2 print_char_cursor zp ZP_WORD:9 51.16666666666666
|
||||
(byte*) print_char_cursor#54 print_char_cursor zp ZP_WORD:9 7.0
|
||||
(byte*) print_char_cursor#55 print_char_cursor zp ZP_WORD:9 2.106060606060605
|
||||
@ -159,6 +157,8 @@
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 sc zp ZP_WORD:4 16.5
|
||||
(byte*) print_cls::sc#2 sc zp ZP_WORD:4 16.5
|
||||
(byte[]) print_hextab
|
||||
(const string) print_hextab#0 print_hextab = (string) "0123456789abcdef"
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#1 print_line_cursor zp ZP_WORD:4 3.2265625
|
||||
(byte*) print_line_cursor#13 print_line_cursor zp ZP_WORD:4 204.0
|
||||
@ -274,7 +274,7 @@ zp ZP_WORD:6 [ printu::op#20 print_str::str#2 print_str::str#1 print_str::str#0
|
||||
zp ZP_BYTE:8 [ printu::b#20 printu::b#8 printu::b#10 printu::b#11 printu::b#12 printu::b#14 printu::b#15 printu::b#16 printu::b#0 printu::b#18 printu::b#19 printu::b#2 printu::b#3 printu::b#4 printu::b#6 printu::b#7 ]
|
||||
reg byte x [ printu::res#20 printu::res#8 printu::res#9 printu::res#10 printu::res#11 printu::res#12 printu::res#13 printu::res#14 printu::res#15 printu::res#16 printu::res#17 printu::res#0 printu::res#18 printu::res#19 printu::res#1 printu::res#2 printu::res#3 printu::res#4 printu::res#5 printu::res#6 printu::res#7 ]
|
||||
reg byte a [ print_char::ch#5 print_char::ch#0 print_char::ch#1 print_char::ch#4 ]
|
||||
zp ZP_WORD:9 [ print_char_cursor#54 print_char_cursor#94 print_char_cursor#95 print_char_cursor#142 print_char_cursor#55 print_char_cursor#146 print_char_cursor#150 print_char_cursor#120 print_char_cursor#141 print_char_cursor#158 print_char_cursor#2 print_char_cursor#1 ]
|
||||
zp ZP_WORD:9 [ print_char_cursor#54 print_char_cursor#94 print_char_cursor#95 print_char_cursor#143 print_char_cursor#55 print_char_cursor#147 print_char_cursor#151 print_char_cursor#120 print_char_cursor#142 print_char_cursor#159 print_char_cursor#2 print_char_cursor#1 ]
|
||||
zp ZP_BYTE:11 [ print_byte::b#2 print_byte::b#0 print_byte::b#1 ]
|
||||
zp ZP_BYTE:12 [ main::b#0 ]
|
||||
reg byte a [ print_byte::$0 ]
|
||||
|
@ -147,15 +147,14 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
lda #$f
|
||||
and b
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
print_char: {
|
||||
ldy #0
|
||||
@ -638,3 +637,4 @@ print_cls: {
|
||||
bne b1
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
@ -45,7 +45,7 @@ test_16s::@1: scope:[test_16s] from test_16s test_16s::@11
|
||||
test_16s::@3: scope:[test_16s] from test_16s::@1
|
||||
[23] (signed word) test_16s::res#0 ← (signed word) div16s::return#3 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 ] )
|
||||
[24] (signed word) print_sword::w#1 ← (signed word) test_16s::dividend#0 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_line_cursor#1 rem16s#3 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_line_cursor#1 rem16s#3 ] )
|
||||
[25] (byte*~) print_char_cursor#155 ← (byte*) print_line_cursor#1 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_char_cursor#155 print_line_cursor#1 rem16s#3 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_char_cursor#155 print_line_cursor#1 rem16s#3 ] )
|
||||
[25] (byte*~) print_char_cursor#156 ← (byte*) print_line_cursor#1 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_char_cursor#156 print_line_cursor#1 rem16s#3 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_char_cursor#156 print_line_cursor#1 rem16s#3 ] )
|
||||
[26] call print_sword param-assignment [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_char_cursor#17 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_char_cursor#17 ] )
|
||||
to:test_16s::@4
|
||||
test_16s::@4: scope:[test_16s] from test_16s::@3
|
||||
@ -95,7 +95,7 @@ print_ln::@return: scope:[print_ln] from print_ln::@1
|
||||
[48] return [ print_line_cursor#1 ] ( main:2::test_16s:13::print_ln:40 [ test_16s::i#10 print_line_cursor#1 ] main:2::test_8s:11::print_ln:156 [ test_8s::i#10 print_line_cursor#1 ] main:2::test_16u:9::print_ln:241 [ test_16u::i#10 print_line_cursor#1 ] main:2::test_8u:7::print_ln:269 [ test_8u::i#10 print_line_cursor#1 ] )
|
||||
to:@return
|
||||
print_sword: scope:[print_sword] from test_16s::@3 test_16s::@5 test_16s::@7 test_16s::@9
|
||||
[49] (byte*) print_char_cursor#129 ← phi( test_16s::@3/(byte*~) print_char_cursor#155 test_16s::@5/(byte*) print_char_cursor#126 test_16s::@7/(byte*) print_char_cursor#126 test_16s::@9/(byte*) print_char_cursor#126 ) [ print_sword::w#5 print_char_cursor#129 ] ( main:2::test_16s:13::print_sword:26 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_sword::w#5 print_char_cursor#129 ] main:2::test_16s:13::print_sword:30 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_sword::w#5 print_char_cursor#129 ] main:2::test_16s:13::print_sword:34 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_sword::w#5 print_char_cursor#129 ] main:2::test_16s:13::print_sword:38 [ test_16s::i#10 print_line_cursor#1 print_sword::w#5 print_char_cursor#129 ] )
|
||||
[49] (byte*) print_char_cursor#129 ← phi( test_16s::@3/(byte*~) print_char_cursor#156 test_16s::@5/(byte*) print_char_cursor#126 test_16s::@7/(byte*) print_char_cursor#126 test_16s::@9/(byte*) print_char_cursor#126 ) [ print_sword::w#5 print_char_cursor#129 ] ( main:2::test_16s:13::print_sword:26 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_sword::w#5 print_char_cursor#129 ] main:2::test_16s:13::print_sword:30 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_sword::w#5 print_char_cursor#129 ] main:2::test_16s:13::print_sword:34 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_sword::w#5 print_char_cursor#129 ] main:2::test_16s:13::print_sword:38 [ test_16s::i#10 print_line_cursor#1 print_sword::w#5 print_char_cursor#129 ] )
|
||||
[49] (signed word) print_sword::w#5 ← phi( test_16s::@3/(signed word) print_sword::w#1 test_16s::@5/(signed word) print_sword::w#2 test_16s::@7/(signed word) print_sword::w#3 test_16s::@9/(signed word) print_sword::w#4 ) [ print_sword::w#5 print_char_cursor#129 ] ( main:2::test_16s:13::print_sword:26 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_sword::w#5 print_char_cursor#129 ] main:2::test_16s:13::print_sword:30 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_sword::w#5 print_char_cursor#129 ] main:2::test_16s:13::print_sword:34 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_sword::w#5 print_char_cursor#129 ] main:2::test_16s:13::print_sword:38 [ test_16s::i#10 print_line_cursor#1 print_sword::w#5 print_char_cursor#129 ] )
|
||||
[50] if((signed word) print_sword::w#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ print_sword::w#5 print_char_cursor#129 ] ( main:2::test_16s:13::print_sword:26 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_sword::w#5 print_char_cursor#129 ] main:2::test_16s:13::print_sword:30 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_sword::w#5 print_char_cursor#129 ] main:2::test_16s:13::print_sword:34 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_sword::w#5 print_char_cursor#129 ] main:2::test_16s:13::print_sword:38 [ test_16s::i#10 print_line_cursor#1 print_sword::w#5 print_char_cursor#129 ] )
|
||||
to:print_sword::@2
|
||||
@ -116,7 +116,7 @@ print_sword::@return: scope:[print_sword] from print_sword::@1
|
||||
[57] return [ print_char_cursor#17 ] ( main:2::test_16s:13::print_sword:26 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_char_cursor#17 ] main:2::test_16s:13::print_sword:30 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_char_cursor#17 ] main:2::test_16s:13::print_sword:34 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_char_cursor#17 ] main:2::test_16s:13::print_sword:38 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#17 ] )
|
||||
to:@return
|
||||
print_word: scope:[print_word] from print_sword::@1 test_16u::@3 test_16u::@5 test_16u::@7 test_16u::@9
|
||||
[58] (byte*) print_char_cursor#132 ← phi( print_sword::@1/(byte*) print_char_cursor#128 test_16u::@3/(byte*~) print_char_cursor#162 test_16u::@5/(byte*) print_char_cursor#126 test_16u::@7/(byte*) print_char_cursor#126 test_16u::@9/(byte*) print_char_cursor#126 ) [ print_word::w#5 print_char_cursor#132 ] ( main:2::test_16s:13::print_sword:26::print_word:56 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#132 ] main:2::test_16s:13::print_sword:30::print_word:56 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#132 ] main:2::test_16s:13::print_sword:34::print_word:56 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#132 ] main:2::test_16s:13::print_sword:38::print_word:56 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#132 ] main:2::test_16u:9::print_word:227 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#132 ] main:2::test_16u:9::print_word:231 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#132 ] main:2::test_16u:9::print_word:235 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#132 ] main:2::test_16u:9::print_word:239 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#132 ] )
|
||||
[58] (byte*) print_char_cursor#132 ← phi( print_sword::@1/(byte*) print_char_cursor#128 test_16u::@3/(byte*~) print_char_cursor#163 test_16u::@5/(byte*) print_char_cursor#126 test_16u::@7/(byte*) print_char_cursor#126 test_16u::@9/(byte*) print_char_cursor#126 ) [ print_word::w#5 print_char_cursor#132 ] ( main:2::test_16s:13::print_sword:26::print_word:56 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#132 ] main:2::test_16s:13::print_sword:30::print_word:56 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#132 ] main:2::test_16s:13::print_sword:34::print_word:56 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#132 ] main:2::test_16s:13::print_sword:38::print_word:56 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#132 ] main:2::test_16u:9::print_word:227 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#132 ] main:2::test_16u:9::print_word:231 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#132 ] main:2::test_16u:9::print_word:235 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#132 ] main:2::test_16u:9::print_word:239 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#132 ] )
|
||||
[58] (word) print_word::w#5 ← phi( print_sword::@1/(word~) print_word::w#7 test_16u::@3/(word) print_word::w#1 test_16u::@5/(word) print_word::w#2 test_16u::@7/(word) print_word::w#3 test_16u::@9/(word) print_word::w#4 ) [ print_word::w#5 print_char_cursor#132 ] ( main:2::test_16s:13::print_sword:26::print_word:56 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#132 ] main:2::test_16s:13::print_sword:30::print_word:56 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#132 ] main:2::test_16s:13::print_sword:34::print_word:56 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#132 ] main:2::test_16s:13::print_sword:38::print_word:56 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#132 ] main:2::test_16u:9::print_word:227 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#132 ] main:2::test_16u:9::print_word:231 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#132 ] main:2::test_16u:9::print_word:235 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#132 ] main:2::test_16u:9::print_word:239 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#132 ] )
|
||||
[59] (byte) print_byte::b#1 ← > (word) print_word::w#5 [ print_word::w#5 print_char_cursor#132 print_byte::b#1 ] ( main:2::test_16s:13::print_sword:26::print_word:56 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#132 print_byte::b#1 ] main:2::test_16s:13::print_sword:30::print_word:56 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#132 print_byte::b#1 ] main:2::test_16s:13::print_sword:34::print_word:56 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#132 print_byte::b#1 ] main:2::test_16s:13::print_sword:38::print_word:56 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#132 print_byte::b#1 ] main:2::test_16u:9::print_word:227 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#132 print_byte::b#1 ] main:2::test_16u:9::print_word:231 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#132 print_byte::b#1 ] main:2::test_16u:9::print_word:235 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#132 print_byte::b#1 ] main:2::test_16u:9::print_word:239 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#132 print_byte::b#1 ] )
|
||||
[60] call print_byte param-assignment [ print_char_cursor#17 print_word::w#5 ] ( main:2::test_16s:13::print_sword:26::print_word:56 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_char_cursor#17 print_word::w#5 ] main:2::test_16s:13::print_sword:30::print_word:56 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_char_cursor#17 print_word::w#5 ] main:2::test_16s:13::print_sword:34::print_word:56 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_char_cursor#17 print_word::w#5 ] main:2::test_16s:13::print_sword:38::print_word:56 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#17 print_word::w#5 ] main:2::test_16u:9::print_word:227 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#17 print_word::w#5 ] main:2::test_16u:9::print_word:231 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#17 print_word::w#5 ] main:2::test_16u:9::print_word:235 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#17 print_word::w#5 ] main:2::test_16u:9::print_word:239 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#17 print_word::w#5 ] )
|
||||
@ -132,12 +132,12 @@ print_byte: scope:[print_byte] from print_sbyte::@1 print_word print_word::@1 t
|
||||
[64] (byte*) print_char_cursor#133 ← phi( print_sbyte::@1/(byte*) print_char_cursor#130 print_word/(byte*) print_char_cursor#132 print_word::@1/(byte*) print_char_cursor#17 test_8u::@3/(byte*) print_char_cursor#135 test_8u::@5/(byte*) print_char_cursor#126 test_8u::@7/(byte*) print_char_cursor#126 test_8u::@9/(byte*) print_char_cursor#126 ) [ print_byte::b#7 print_char_cursor#133 ] ( main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_byte::b#7 print_char_cursor#133 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_byte::b#7 print_char_cursor#133 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_word::w#5 print_byte::b#7 print_char_cursor#133 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_byte::b#7 print_char_cursor#133 ] main:2::test_16u:9::print_word:227::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#133 ] main:2::test_16u:9::print_word:231::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#133 ] main:2::test_16u:9::print_word:235::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#133 ] main:2::test_16u:9::print_word:239::print_byte:60 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#133 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_byte::b#7 print_char_cursor#133 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_byte::b#7 print_char_cursor#133 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_byte::b#7 print_char_cursor#133 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 print_byte::b#7 print_char_cursor#133 ] main:2::test_16u:9::print_word:227::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_byte::b#7 print_char_cursor#133 ] main:2::test_16u:9::print_word:231::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_byte::b#7 print_char_cursor#133 ] main:2::test_16u:9::print_word:235::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_byte::b#7 print_char_cursor#133 ] main:2::test_16u:9::print_word:239::print_byte:62 [ print_line_cursor#1 test_16u::i#10 print_byte::b#7 print_char_cursor#133 ] main:2::test_8s:11::print_sbyte:142::print_byte:167 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#133 ] main:2::test_8s:11::print_sbyte:146::print_byte:167 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#133 ] main:2::test_8s:11::print_sbyte:150::print_byte:167 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_byte::b#7 print_char_cursor#133 ] main:2::test_8s:11::print_sbyte:154::print_byte:167 [ print_line_cursor#1 test_8s::i#10 print_byte::b#7 print_char_cursor#133 ] main:2::test_8u:7::print_byte:255 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#7 print_char_cursor#133 ] main:2::test_8u:7::print_byte:259 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_byte::b#7 print_char_cursor#133 ] main:2::test_8u:7::print_byte:263 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_byte::b#7 print_char_cursor#133 ] main:2::test_8u:7::print_byte:267 [ print_line_cursor#41 test_8u::i#10 print_byte::b#7 print_char_cursor#133 ] )
|
||||
[64] (byte) print_byte::b#7 ← phi( print_sbyte::@1/(byte~) print_byte::b#9 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 test_8u::@3/(byte) print_byte::b#3 test_8u::@5/(byte) print_byte::b#4 test_8u::@7/(byte) print_byte::b#5 test_8u::@9/(byte) print_byte::b#6 ) [ print_byte::b#7 print_char_cursor#133 ] ( main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_byte::b#7 print_char_cursor#133 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_byte::b#7 print_char_cursor#133 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_word::w#5 print_byte::b#7 print_char_cursor#133 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_byte::b#7 print_char_cursor#133 ] main:2::test_16u:9::print_word:227::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#133 ] main:2::test_16u:9::print_word:231::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#133 ] main:2::test_16u:9::print_word:235::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#133 ] main:2::test_16u:9::print_word:239::print_byte:60 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#133 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_byte::b#7 print_char_cursor#133 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_byte::b#7 print_char_cursor#133 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_byte::b#7 print_char_cursor#133 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 print_byte::b#7 print_char_cursor#133 ] main:2::test_16u:9::print_word:227::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_byte::b#7 print_char_cursor#133 ] main:2::test_16u:9::print_word:231::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_byte::b#7 print_char_cursor#133 ] main:2::test_16u:9::print_word:235::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_byte::b#7 print_char_cursor#133 ] main:2::test_16u:9::print_word:239::print_byte:62 [ print_line_cursor#1 test_16u::i#10 print_byte::b#7 print_char_cursor#133 ] main:2::test_8s:11::print_sbyte:142::print_byte:167 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#133 ] main:2::test_8s:11::print_sbyte:146::print_byte:167 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#133 ] main:2::test_8s:11::print_sbyte:150::print_byte:167 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_byte::b#7 print_char_cursor#133 ] main:2::test_8s:11::print_sbyte:154::print_byte:167 [ print_line_cursor#1 test_8s::i#10 print_byte::b#7 print_char_cursor#133 ] main:2::test_8u:7::print_byte:255 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#7 print_char_cursor#133 ] main:2::test_8u:7::print_byte:259 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_byte::b#7 print_char_cursor#133 ] main:2::test_8u:7::print_byte:263 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_byte::b#7 print_char_cursor#133 ] main:2::test_8u:7::print_byte:267 [ print_line_cursor#41 test_8u::i#10 print_byte::b#7 print_char_cursor#133 ] )
|
||||
[65] (byte~) print_byte::$0 ← (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#7 print_char_cursor#133 print_byte::$0 ] ( main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_16u:9::print_word:227::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_16u:9::print_word:231::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_16u:9::print_word:235::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_16u:9::print_word:239::print_byte:60 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_16u:9::print_word:227::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_16u:9::print_word:231::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_16u:9::print_word:235::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_16u:9::print_word:239::print_byte:62 [ print_line_cursor#1 test_16u::i#10 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_8s:11::print_sbyte:142::print_byte:167 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_8s:11::print_sbyte:146::print_byte:167 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_8s:11::print_sbyte:150::print_byte:167 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_8s:11::print_sbyte:154::print_byte:167 [ print_line_cursor#1 test_8s::i#10 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_8u:7::print_byte:255 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_8u:7::print_byte:259 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_8u:7::print_byte:263 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] main:2::test_8u:7::print_byte:267 [ print_line_cursor#41 test_8u::i#10 print_byte::b#7 print_char_cursor#133 print_byte::$0 ] )
|
||||
[66] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] ( main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16u:9::print_word:227::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16u:9::print_word:231::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16u:9::print_word:235::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16u:9::print_word:239::print_byte:60 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16u:9::print_word:227::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16u:9::print_word:231::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16u:9::print_word:235::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16u:9::print_word:239::print_byte:62 [ print_line_cursor#1 test_16u::i#10 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_8s:11::print_sbyte:142::print_byte:167 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_8s:11::print_sbyte:146::print_byte:167 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_8s:11::print_sbyte:150::print_byte:167 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_8s:11::print_sbyte:154::print_byte:167 [ print_line_cursor#1 test_8s::i#10 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_8u:7::print_byte:255 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_8u:7::print_byte:259 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_8u:7::print_byte:263 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_8u:7::print_byte:267 [ print_line_cursor#41 test_8u::i#10 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] )
|
||||
[66] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] ( main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16u:9::print_word:227::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16u:9::print_word:231::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16u:9::print_word:235::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16u:9::print_word:239::print_byte:60 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16u:9::print_word:227::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16u:9::print_word:231::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16u:9::print_word:235::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_16u:9::print_word:239::print_byte:62 [ print_line_cursor#1 test_16u::i#10 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_8s:11::print_sbyte:142::print_byte:167 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_8s:11::print_sbyte:146::print_byte:167 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_8s:11::print_sbyte:150::print_byte:167 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_8s:11::print_sbyte:154::print_byte:167 [ print_line_cursor#1 test_8s::i#10 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_8u:7::print_byte:255 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_8u:7::print_byte:259 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_8u:7::print_byte:263 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] main:2::test_8u:7::print_byte:267 [ print_line_cursor#41 test_8u::i#10 print_byte::b#7 print_char_cursor#133 print_char::ch#2 ] )
|
||||
[67] call print_char param-assignment [ print_char_cursor#17 print_byte::b#7 ] ( main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#17 print_byte::b#7 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#17 print_byte::b#7 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#17 print_byte::b#7 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#17 print_byte::b#7 ] main:2::test_16u:9::print_word:227::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#17 print_byte::b#7 ] main:2::test_16u:9::print_word:231::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#17 print_byte::b#7 ] main:2::test_16u:9::print_word:235::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#17 print_byte::b#7 ] main:2::test_16u:9::print_word:239::print_byte:60 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#17 print_byte::b#7 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_char_cursor#17 print_byte::b#7 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_char_cursor#17 print_byte::b#7 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_char_cursor#17 print_byte::b#7 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#17 print_byte::b#7 ] main:2::test_16u:9::print_word:227::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#17 print_byte::b#7 ] main:2::test_16u:9::print_word:231::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#17 print_byte::b#7 ] main:2::test_16u:9::print_word:235::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#17 print_byte::b#7 ] main:2::test_16u:9::print_word:239::print_byte:62 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#17 print_byte::b#7 ] main:2::test_8s:11::print_sbyte:142::print_byte:167 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#17 print_byte::b#7 ] main:2::test_8s:11::print_sbyte:146::print_byte:167 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#17 print_byte::b#7 ] main:2::test_8s:11::print_sbyte:150::print_byte:167 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#17 print_byte::b#7 ] main:2::test_8s:11::print_sbyte:154::print_byte:167 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#17 print_byte::b#7 ] main:2::test_8u:7::print_byte:255 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#17 print_byte::b#7 ] main:2::test_8u:7::print_byte:259 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#17 print_byte::b#7 ] main:2::test_8u:7::print_byte:263 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#17 print_byte::b#7 ] main:2::test_8u:7::print_byte:267 [ print_line_cursor#41 test_8u::i#10 print_char_cursor#17 print_byte::b#7 ] )
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
[68] (byte~) print_byte::$2 ← (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#17 print_byte::$2 ] ( main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#17 print_byte::$2 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#17 print_byte::$2 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#17 print_byte::$2 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#17 print_byte::$2 ] main:2::test_16u:9::print_word:227::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#17 print_byte::$2 ] main:2::test_16u:9::print_word:231::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#17 print_byte::$2 ] main:2::test_16u:9::print_word:235::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#17 print_byte::$2 ] main:2::test_16u:9::print_word:239::print_byte:60 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#17 print_byte::$2 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_char_cursor#17 print_byte::$2 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_char_cursor#17 print_byte::$2 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_char_cursor#17 print_byte::$2 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#17 print_byte::$2 ] main:2::test_16u:9::print_word:227::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#17 print_byte::$2 ] main:2::test_16u:9::print_word:231::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#17 print_byte::$2 ] main:2::test_16u:9::print_word:235::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#17 print_byte::$2 ] main:2::test_16u:9::print_word:239::print_byte:62 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#17 print_byte::$2 ] main:2::test_8s:11::print_sbyte:142::print_byte:167 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#17 print_byte::$2 ] main:2::test_8s:11::print_sbyte:146::print_byte:167 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#17 print_byte::$2 ] main:2::test_8s:11::print_sbyte:150::print_byte:167 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#17 print_byte::$2 ] main:2::test_8s:11::print_sbyte:154::print_byte:167 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#17 print_byte::$2 ] main:2::test_8u:7::print_byte:255 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#17 print_byte::$2 ] main:2::test_8u:7::print_byte:259 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#17 print_byte::$2 ] main:2::test_8u:7::print_byte:263 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#17 print_byte::$2 ] main:2::test_8u:7::print_byte:267 [ print_line_cursor#41 test_8u::i#10 print_char_cursor#17 print_byte::$2 ] )
|
||||
[69] (byte) print_char::ch#3 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#17 print_char::ch#3 ] ( main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#17 print_char::ch#3 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#17 print_char::ch#3 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#17 print_char::ch#3 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#17 print_char::ch#3 ] main:2::test_16u:9::print_word:227::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#17 print_char::ch#3 ] main:2::test_16u:9::print_word:231::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#17 print_char::ch#3 ] main:2::test_16u:9::print_word:235::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#17 print_char::ch#3 ] main:2::test_16u:9::print_word:239::print_byte:60 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#17 print_char::ch#3 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_char_cursor#17 print_char::ch#3 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_char_cursor#17 print_char::ch#3 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_char_cursor#17 print_char::ch#3 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::test_16u:9::print_word:227::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#17 print_char::ch#3 ] main:2::test_16u:9::print_word:231::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#17 print_char::ch#3 ] main:2::test_16u:9::print_word:235::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#17 print_char::ch#3 ] main:2::test_16u:9::print_word:239::print_byte:62 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#17 print_char::ch#3 ] main:2::test_8s:11::print_sbyte:142::print_byte:167 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#17 print_char::ch#3 ] main:2::test_8s:11::print_sbyte:146::print_byte:167 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#17 print_char::ch#3 ] main:2::test_8s:11::print_sbyte:150::print_byte:167 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#17 print_char::ch#3 ] main:2::test_8s:11::print_sbyte:154::print_byte:167 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#17 print_char::ch#3 ] main:2::test_8u:7::print_byte:255 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#17 print_char::ch#3 ] main:2::test_8u:7::print_byte:259 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#17 print_char::ch#3 ] main:2::test_8u:7::print_byte:263 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#17 print_char::ch#3 ] main:2::test_8u:7::print_byte:267 [ print_line_cursor#41 test_8u::i#10 print_char_cursor#17 print_char::ch#3 ] )
|
||||
[69] (byte) print_char::ch#3 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#17 print_char::ch#3 ] ( main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#17 print_char::ch#3 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#17 print_char::ch#3 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#17 print_char::ch#3 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#17 print_char::ch#3 ] main:2::test_16u:9::print_word:227::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#17 print_char::ch#3 ] main:2::test_16u:9::print_word:231::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#17 print_char::ch#3 ] main:2::test_16u:9::print_word:235::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#17 print_char::ch#3 ] main:2::test_16u:9::print_word:239::print_byte:60 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#17 print_char::ch#3 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_char_cursor#17 print_char::ch#3 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_char_cursor#17 print_char::ch#3 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_char_cursor#17 print_char::ch#3 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::test_16u:9::print_word:227::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#17 print_char::ch#3 ] main:2::test_16u:9::print_word:231::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#17 print_char::ch#3 ] main:2::test_16u:9::print_word:235::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#17 print_char::ch#3 ] main:2::test_16u:9::print_word:239::print_byte:62 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#17 print_char::ch#3 ] main:2::test_8s:11::print_sbyte:142::print_byte:167 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#17 print_char::ch#3 ] main:2::test_8s:11::print_sbyte:146::print_byte:167 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#17 print_char::ch#3 ] main:2::test_8s:11::print_sbyte:150::print_byte:167 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#17 print_char::ch#3 ] main:2::test_8s:11::print_sbyte:154::print_byte:167 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#17 print_char::ch#3 ] main:2::test_8u:7::print_byte:255 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#17 print_char::ch#3 ] main:2::test_8u:7::print_byte:259 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#17 print_char::ch#3 ] main:2::test_8u:7::print_byte:263 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#17 print_char::ch#3 ] main:2::test_8u:7::print_byte:267 [ print_line_cursor#41 test_8u::i#10 print_char_cursor#17 print_char::ch#3 ] )
|
||||
[70] call print_char param-assignment [ print_char_cursor#17 ] ( main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#17 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#17 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_word::w#5 print_char_cursor#17 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#17 ] main:2::test_16u:9::print_word:227::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#17 ] main:2::test_16u:9::print_word:231::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#17 ] main:2::test_16u:9::print_word:235::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#17 ] main:2::test_16u:9::print_word:239::print_byte:60 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#17 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_char_cursor#17 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_char_cursor#17 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_char_cursor#17 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#17 ] main:2::test_16u:9::print_word:227::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#17 ] main:2::test_16u:9::print_word:231::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#17 ] main:2::test_16u:9::print_word:235::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#17 ] main:2::test_16u:9::print_word:239::print_byte:62 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#17 ] main:2::test_8s:11::print_sbyte:142::print_byte:167 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#17 ] main:2::test_8s:11::print_sbyte:146::print_byte:167 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#17 ] main:2::test_8s:11::print_sbyte:150::print_byte:167 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#17 ] main:2::test_8s:11::print_sbyte:154::print_byte:167 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#17 ] main:2::test_8u:7::print_byte:255 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#17 ] main:2::test_8u:7::print_byte:259 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#17 ] main:2::test_8u:7::print_byte:263 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#17 ] main:2::test_8u:7::print_byte:267 [ print_line_cursor#41 test_8u::i#10 print_char_cursor#17 ] )
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte::@1
|
||||
@ -283,7 +283,7 @@ test_8s::@1: scope:[test_8s] from test_8s test_8s::@11
|
||||
test_8s::@3: scope:[test_8s] from test_8s::@1
|
||||
[139] (signed byte) test_8s::res#0 ← (signed byte) div8s::return#3 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 test_8s::res#0 rem8s#3 ] ( main:2::test_8s:11 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 test_8s::res#0 rem8s#3 ] )
|
||||
[140] (signed byte) print_sbyte::b#1 ← (signed byte) test_8s::dividend#0 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 rem8s#3 ] ( main:2::test_8s:11 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 rem8s#3 ] )
|
||||
[141] (byte*~) print_char_cursor#179 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 print_char_cursor#179 rem8s#3 ] ( main:2::test_8s:11 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 print_char_cursor#179 rem8s#3 ] )
|
||||
[141] (byte*~) print_char_cursor#180 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 print_char_cursor#180 rem8s#3 ] ( main:2::test_8s:11 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 print_char_cursor#180 rem8s#3 ] )
|
||||
[142] call print_sbyte param-assignment [ print_line_cursor#1 print_char_cursor#17 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 ] ( main:2::test_8s:11 [ print_line_cursor#1 print_char_cursor#17 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 ] )
|
||||
to:test_8s::@4
|
||||
test_8s::@4: scope:[test_8s] from test_8s::@3
|
||||
@ -322,7 +322,7 @@ test_8s::@return: scope:[test_8s] from test_8s::@11
|
||||
[159] return [ print_line_cursor#1 ] ( main:2::test_8s:11 [ print_line_cursor#1 ] )
|
||||
to:@return
|
||||
print_sbyte: scope:[print_sbyte] from test_8s::@3 test_8s::@5 test_8s::@7 test_8s::@9
|
||||
[160] (byte*) print_char_cursor#131 ← phi( test_8s::@3/(byte*~) print_char_cursor#179 test_8s::@5/(byte*) print_char_cursor#126 test_8s::@7/(byte*) print_char_cursor#126 test_8s::@9/(byte*) print_char_cursor#126 ) [ print_char_cursor#131 print_sbyte::b#5 ] ( main:2::test_8s:11::print_sbyte:142 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#131 print_sbyte::b#5 ] main:2::test_8s:11::print_sbyte:146 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#131 print_sbyte::b#5 ] main:2::test_8s:11::print_sbyte:150 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#131 print_sbyte::b#5 ] main:2::test_8s:11::print_sbyte:154 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#131 print_sbyte::b#5 ] )
|
||||
[160] (byte*) print_char_cursor#131 ← phi( test_8s::@3/(byte*~) print_char_cursor#180 test_8s::@5/(byte*) print_char_cursor#126 test_8s::@7/(byte*) print_char_cursor#126 test_8s::@9/(byte*) print_char_cursor#126 ) [ print_char_cursor#131 print_sbyte::b#5 ] ( main:2::test_8s:11::print_sbyte:142 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#131 print_sbyte::b#5 ] main:2::test_8s:11::print_sbyte:146 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#131 print_sbyte::b#5 ] main:2::test_8s:11::print_sbyte:150 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#131 print_sbyte::b#5 ] main:2::test_8s:11::print_sbyte:154 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#131 print_sbyte::b#5 ] )
|
||||
[160] (signed byte) print_sbyte::b#5 ← phi( test_8s::@3/(signed byte) print_sbyte::b#1 test_8s::@5/(signed byte) print_sbyte::b#2 test_8s::@7/(signed byte) print_sbyte::b#3 test_8s::@9/(signed byte) print_sbyte::b#4 ) [ print_char_cursor#131 print_sbyte::b#5 ] ( main:2::test_8s:11::print_sbyte:142 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#131 print_sbyte::b#5 ] main:2::test_8s:11::print_sbyte:146 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#131 print_sbyte::b#5 ] main:2::test_8s:11::print_sbyte:150 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#131 print_sbyte::b#5 ] main:2::test_8s:11::print_sbyte:154 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#131 print_sbyte::b#5 ] )
|
||||
[161] if((signed byte) print_sbyte::b#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 [ print_char_cursor#131 print_sbyte::b#5 ] ( main:2::test_8s:11::print_sbyte:142 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#131 print_sbyte::b#5 ] main:2::test_8s:11::print_sbyte:146 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#131 print_sbyte::b#5 ] main:2::test_8s:11::print_sbyte:150 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#131 print_sbyte::b#5 ] main:2::test_8s:11::print_sbyte:154 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#131 print_sbyte::b#5 ] )
|
||||
to:print_sbyte::@2
|
||||
@ -456,7 +456,7 @@ test_16u::@1: scope:[test_16u] from test_16u test_16u::@11
|
||||
test_16u::@3: scope:[test_16u] from test_16u::@1
|
||||
[224] (word) test_16u::res#0 ← (word) div16u::return#3 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 ] )
|
||||
[225] (word) print_word::w#1 ← (word) test_16u::dividend#0 [ print_line_cursor#1 print_word::w#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_word::w#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] )
|
||||
[226] (byte*~) print_char_cursor#162 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_word::w#1 print_char_cursor#162 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_word::w#1 print_char_cursor#162 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] )
|
||||
[226] (byte*~) print_char_cursor#163 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_word::w#1 print_char_cursor#163 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_word::w#1 print_char_cursor#163 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] )
|
||||
[227] call print_word param-assignment [ print_line_cursor#1 print_char_cursor#17 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_char_cursor#17 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] )
|
||||
to:test_16u::@4
|
||||
test_16u::@4: scope:[test_16u] from test_16u::@3
|
||||
@ -499,7 +499,7 @@ test_8u: scope:[test_8u] from main::@1
|
||||
to:test_8u::@1
|
||||
test_8u::@1: scope:[test_8u] from test_8u test_8u::@12
|
||||
[246] (byte*) print_line_cursor#41 ← phi( test_8u/((byte*))(word/signed word/dword/signed dword) 1024 test_8u::@12/(byte*) print_line_cursor#1 ) [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 ] ( main:2::test_8u:7 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 ] )
|
||||
[246] (byte*) print_char_cursor#135 ← phi( test_8u/((byte*))(word/signed word/dword/signed dword) 1024 test_8u::@12/(byte*~) print_char_cursor#185 ) [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 ] ( main:2::test_8u:7 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 ] )
|
||||
[246] (byte*) print_char_cursor#135 ← phi( test_8u/((byte*))(word/signed word/dword/signed dword) 1024 test_8u::@12/(byte*~) print_char_cursor#186 ) [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 ] ( main:2::test_8u:7 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 ] )
|
||||
[246] (byte) test_8u::i#10 ← phi( test_8u/(byte/signed byte/word/signed word/dword/signed dword) 0 test_8u::@12/(byte) test_8u::i#1 ) [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 ] ( main:2::test_8u:7 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 ] )
|
||||
[247] (byte) test_8u::dividend#0 ← *((const byte[]) test_8u::dividends#0 + (byte) test_8u::i#10) [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 ] ( main:2::test_8u:7 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 ] )
|
||||
[248] (byte) test_8u::divisor#0 ← *((const byte[]) test_8u::divisors#0 + (byte) test_8u::i#10) [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 ] ( main:2::test_8u:7 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 ] )
|
||||
@ -549,7 +549,7 @@ test_8u::@return: scope:[test_8u] from test_8u::@11
|
||||
[272] return [ print_line_cursor#1 ] ( main:2::test_8u:7 [ print_line_cursor#1 ] )
|
||||
to:@return
|
||||
test_8u::@12: scope:[test_8u] from test_8u::@11
|
||||
[273] (byte*~) print_char_cursor#185 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 test_8u::i#1 print_char_cursor#185 ] ( main:2::test_8u:7 [ print_line_cursor#1 test_8u::i#1 print_char_cursor#185 ] )
|
||||
[273] (byte*~) print_char_cursor#186 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 test_8u::i#1 print_char_cursor#186 ] ( main:2::test_8u:7 [ print_line_cursor#1 test_8u::i#1 print_char_cursor#186 ] )
|
||||
to:test_8u::@1
|
||||
print_cls: scope:[print_cls] from main
|
||||
[274] phi() [ ] ( main:2::print_cls:5 [ ] )
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -188,8 +188,6 @@
|
||||
(byte) print_byte::b#6 b zp ZP_BYTE:7 22.0
|
||||
(byte) print_byte::b#7 b zp ZP_BYTE:7 13.5
|
||||
(byte~) print_byte::b#9 b zp ZP_BYTE:7 4.0
|
||||
(byte[]) print_byte::hextab
|
||||
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -206,11 +204,11 @@
|
||||
(byte*) print_char_cursor#132 print_char_cursor zp ZP_WORD:8 24.0
|
||||
(byte*) print_char_cursor#133 print_char_cursor zp ZP_WORD:8 17.333333333333332
|
||||
(byte*) print_char_cursor#135 print_char_cursor zp ZP_WORD:8 2.4444444444444446
|
||||
(byte*~) print_char_cursor#155 print_char_cursor zp ZP_WORD:8 22.0
|
||||
(byte*~) print_char_cursor#162 print_char_cursor zp ZP_WORD:8 22.0
|
||||
(byte*~) print_char_cursor#156 print_char_cursor zp ZP_WORD:8 22.0
|
||||
(byte*~) print_char_cursor#163 print_char_cursor zp ZP_WORD:8 22.0
|
||||
(byte*) print_char_cursor#17 print_char_cursor zp ZP_WORD:8 2.0178571428571432
|
||||
(byte*~) print_char_cursor#179 print_char_cursor zp ZP_WORD:8 22.0
|
||||
(byte*~) print_char_cursor#185 print_char_cursor zp ZP_WORD:8 22.0
|
||||
(byte*~) print_char_cursor#180 print_char_cursor zp ZP_WORD:8 22.0
|
||||
(byte*~) print_char_cursor#186 print_char_cursor zp ZP_WORD:8 22.0
|
||||
(byte*) print_char_cursor#80 print_char_cursor zp ZP_WORD:8 6.0
|
||||
(void()) print_cls()
|
||||
(label) print_cls::@1
|
||||
@ -218,6 +216,8 @@
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 sc zp ZP_WORD:3 16.5
|
||||
(byte*) print_cls::sc#2 sc zp ZP_WORD:3 16.5
|
||||
(byte[]) print_hextab
|
||||
(const string) print_hextab#0 print_hextab = (string) "0123456789abcdef"
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#1 print_line_cursor zp ZP_WORD:3 3.9099999999999993
|
||||
(byte*) print_line_cursor#20 print_line_cursor zp ZP_WORD:3 204.0
|
||||
@ -402,7 +402,7 @@ zp ZP_WORD:3 [ print_line_cursor#20 print_line_cursor#39 print_line_cursor#1 pri
|
||||
zp ZP_WORD:5 [ print_sword::w#6 print_sword::w#5 print_sword::w#1 print_sword::w#2 print_sword::w#3 print_sword::w#4 print_sword::w#0 print_word::w#5 print_word::w#7 print_word::w#1 print_word::w#2 print_word::w#3 print_word::w#4 test_16s::dividend#0 test_16u::dividend#0 print_str::str#13 print_str::str#15 print_str::str#0 ]
|
||||
zp ZP_BYTE:7 [ print_byte::b#7 print_byte::b#9 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#6 print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 test_8u::dividend#0 test_8s::dividend#0 ]
|
||||
reg byte a [ print_char::ch#4 print_char::ch#2 print_char::ch#3 ]
|
||||
zp ZP_WORD:8 [ print_char_cursor#80 print_char_cursor#133 print_char_cursor#130 print_char_cursor#132 print_char_cursor#128 print_char_cursor#129 print_char_cursor#155 print_char_cursor#126 print_char_cursor#17 print_char_cursor#162 print_char_cursor#135 print_char_cursor#131 print_char_cursor#1 print_char_cursor#179 print_char_cursor#185 div16s::dividendu#3 div16s::dividendu#7 div16s::dividendu#8 div16u::dividend#2 div16u::dividend#0 div16u::dividend#1 div16s::dividend#0 div16s::$2 divr16u::dividend#2 divr16u::dividend#1 divr16u::dividend#0 ]
|
||||
zp ZP_WORD:8 [ print_char_cursor#80 print_char_cursor#133 print_char_cursor#130 print_char_cursor#132 print_char_cursor#128 print_char_cursor#129 print_char_cursor#156 print_char_cursor#126 print_char_cursor#17 print_char_cursor#163 print_char_cursor#135 print_char_cursor#131 print_char_cursor#1 print_char_cursor#180 print_char_cursor#186 div16s::dividendu#3 div16s::dividendu#7 div16s::dividendu#8 div16u::dividend#2 div16u::dividend#0 div16u::dividend#1 div16s::dividend#0 div16s::$2 divr16u::dividend#2 divr16u::dividend#1 divr16u::dividend#0 ]
|
||||
zp ZP_WORD:10 [ div16s::divisoru#3 div16s::divisoru#4 div16s::divisoru#5 div16u::divisor#2 div16u::divisor#0 div16u::divisor#1 div16s::divisor#0 div16s::$7 divr16u::divisor#0 test_16u::divisor#0 ]
|
||||
reg byte y [ div16s::neg#4 div16s::neg#3 div16s::neg#2 ]
|
||||
zp ZP_WORD:12 [ div16s::return#2 div16s::return#6 div16s::return#0 div16s::resultu#0 div16s::return#3 test_16s::res#0 div16u::return#2 div16u::return#0 divr16u::quotient#3 divr16u::return#0 divr16u::quotient#1 divr16u::quotient#2 divr16u::return#2 div16u::return#3 test_16u::res#0 ]
|
||||
|
@ -171,15 +171,14 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
txa
|
||||
and #$f
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
print_char: {
|
||||
ldy #0
|
||||
@ -236,3 +235,4 @@ print_cls: {
|
||||
bne b1
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
@ -13,7 +13,7 @@ main: scope:[main] from @15
|
||||
to:main::@1
|
||||
main::@1: scope:[main] from main main::@18
|
||||
[6] (byte*) print_line_cursor#19 ← phi( main::@18/(byte*) print_line_cursor#1 main/((byte*))(word/signed word/dword/signed dword) 1024 ) [ main::dw#10 print_char_cursor#69 print_line_cursor#19 ] ( main:2 [ main::dw#10 print_char_cursor#69 print_line_cursor#19 ] )
|
||||
[6] (byte*) print_char_cursor#69 ← phi( main::@18/(byte*~) print_char_cursor#71 main/((byte*))(word/signed word/dword/signed dword) 1024 ) [ main::dw#10 print_char_cursor#69 print_line_cursor#19 ] ( main:2 [ main::dw#10 print_char_cursor#69 print_line_cursor#19 ] )
|
||||
[6] (byte*) print_char_cursor#69 ← phi( main::@18/(byte*~) print_char_cursor#72 main/((byte*))(word/signed word/dword/signed dword) 1024 ) [ main::dw#10 print_char_cursor#69 print_line_cursor#19 ] ( main:2 [ main::dw#10 print_char_cursor#69 print_line_cursor#19 ] )
|
||||
[6] (dword) main::dw#10 ← phi( main::@18/(dword) main::dw#1 main/(dword/signed dword) 305419896 ) [ main::dw#10 print_char_cursor#69 print_line_cursor#19 ] ( main:2 [ main::dw#10 print_char_cursor#69 print_line_cursor#19 ] )
|
||||
[7] (word~) main::$2 ← > (dword) main::dw#10 [ main::dw#10 print_char_cursor#69 print_line_cursor#19 main::$2 ] ( main:2 [ main::dw#10 print_char_cursor#69 print_line_cursor#19 main::$2 ] )
|
||||
[8] (word/signed dword/dword~) main::$32 ← (word~) main::$2 + (word/signed word/dword/signed dword) 4369 [ main::dw#10 print_char_cursor#69 print_line_cursor#19 main::$32 ] ( main:2 [ main::dw#10 print_char_cursor#69 print_line_cursor#19 main::$32 ] )
|
||||
@ -88,7 +88,7 @@ main::@return: scope:[main] from main::@17
|
||||
[47] return [ ] ( main:2 [ ] )
|
||||
to:@return
|
||||
main::@18: scope:[main] from main::@17
|
||||
[48] (byte*~) print_char_cursor#71 ← (byte*) print_line_cursor#1 [ main::dw#1 print_char_cursor#71 print_line_cursor#1 ] ( main:2 [ main::dw#1 print_char_cursor#71 print_line_cursor#1 ] )
|
||||
[48] (byte*~) print_char_cursor#72 ← (byte*) print_line_cursor#1 [ main::dw#1 print_char_cursor#72 print_line_cursor#1 ] ( main:2 [ main::dw#1 print_char_cursor#72 print_line_cursor#1 ] )
|
||||
to:main::@1
|
||||
print_ln: scope:[print_ln] from main::@16
|
||||
[49] phi() [ print_line_cursor#19 print_char_cursor#12 ] ( main:2::print_ln:44 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 ] )
|
||||
@ -105,12 +105,12 @@ print_byte: scope:[print_byte] from main::@11 main::@13 main::@15 main::@9 prin
|
||||
[54] (byte*) print_char_cursor#67 ← phi( main::@11/(byte*) print_char_cursor#12 main::@13/(byte*) print_char_cursor#12 main::@15/(byte*) print_char_cursor#12 main::@9/(byte*) print_char_cursor#12 print_word/(byte*) print_char_cursor#65 print_word::@1/(byte*) print_char_cursor#12 ) [ print_byte::b#6 print_char_cursor#67 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_byte::b#6 print_char_cursor#67 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_byte::b#6 print_char_cursor#67 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_byte::b#6 print_char_cursor#67 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] )
|
||||
[54] (byte) print_byte::b#6 ← phi( main::@11/(byte) print_byte::b#3 main::@13/(byte) print_byte::b#4 main::@15/(byte) print_byte::b#5 main::@9/(byte) print_byte::b#2 print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) [ print_byte::b#6 print_char_cursor#67 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_byte::b#6 print_char_cursor#67 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_byte::b#6 print_char_cursor#67 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_byte::b#6 print_char_cursor#67 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] )
|
||||
[55] (byte~) print_byte::$0 ← (byte) print_byte::b#6 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#6 print_char_cursor#67 print_byte::$0 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] )
|
||||
[56] (byte) print_char::ch#0 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] )
|
||||
[56] (byte) print_char::ch#0 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] )
|
||||
[57] call print_char param-assignment [ print_char_cursor#12 print_byte::b#6 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 print_byte::b#6 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::b#6 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::b#6 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 print_byte::b#6 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::b#6 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 print_byte::b#6 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] )
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
[58] (byte~) print_byte::$2 ← (byte) print_byte::b#6 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#12 print_byte::$2 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 print_byte::$2 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] )
|
||||
[59] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#1 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] )
|
||||
[59] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#1 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] )
|
||||
[60] call print_char param-assignment [ print_char_cursor#12 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] )
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte::@1
|
||||
|
@ -111,12 +111,13 @@ void print_sdword(signed dword dw) {
|
||||
print_dword((dword)dw);
|
||||
}
|
||||
|
||||
const byte[] print_hextab = "0123456789abcdef";
|
||||
|
||||
// Print a byte as HEX
|
||||
void print_byte(byte b) {
|
||||
// Table of hexadecimal digits
|
||||
const byte[] hextab = "0123456789abcdef";
|
||||
print_char(hextab[b>>4]);
|
||||
print_char(hextab[b&$f]);
|
||||
print_char(print_hextab[b>>4]);
|
||||
print_char(print_hextab[b&$f]);
|
||||
}
|
||||
|
||||
// Print a single char
|
||||
@ -276,12 +277,12 @@ print_sdword::@1:
|
||||
print_sdword::@return:
|
||||
return
|
||||
endproc // print_sdword()
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
proc (void()) print_byte((byte) print_byte::b)
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
print_byte::@return:
|
||||
return
|
||||
endproc // print_byte()
|
||||
@ -401,7 +402,6 @@ SYMBOLS
|
||||
(void~) print_byte::$3
|
||||
(label) print_byte::@return
|
||||
(byte) print_byte::b
|
||||
(byte[]) print_byte::hextab
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -419,6 +419,7 @@ SYMBOLS
|
||||
(void~) print_dword::$3
|
||||
(label) print_dword::@return
|
||||
(dword) print_dword::dw
|
||||
(byte[]) print_hextab
|
||||
(byte*) print_line_cursor
|
||||
(void()) print_ln()
|
||||
(byte*~) print_ln::$0
|
||||
@ -700,13 +701,13 @@ print_sdword::@return: scope:[print_sdword] from print_sdword::@1
|
||||
return
|
||||
to:@return
|
||||
@10: scope:[] from @9
|
||||
(byte[]) print_hextab ← (string) "0123456789abcdef"
|
||||
to:@11
|
||||
print_byte: scope:[print_byte] from
|
||||
(byte[]) print_byte::hextab ← (string) "0123456789abcdef"
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$0)
|
||||
(void~) print_byte::$1 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$0)
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_byte::hextab + (byte~) print_byte::$2)
|
||||
(void~) print_byte::$3 ← call print_char *((byte[]) print_hextab + (byte~) print_byte::$2)
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte
|
||||
return
|
||||
@ -836,7 +837,7 @@ Eliminating unused variable - keeping the call (void~) main::$25
|
||||
Eliminating unused variable - keeping the call (void~) main::$26
|
||||
Eliminating unused variable - keeping the call (void~) main::$29
|
||||
Eliminating unused variable - keeping the call (void~) main::$30
|
||||
Creating constant string variable for inline (const string) print_byte::$4 "0123456789abcdef"
|
||||
Creating constant string variable for inline (const string) $0 "0123456789abcdef"
|
||||
Removing empty block @1
|
||||
Removing empty block @2
|
||||
Removing empty block @3
|
||||
@ -846,7 +847,6 @@ Removing empty block @6
|
||||
Removing empty block @7
|
||||
Removing empty block @8
|
||||
Removing empty block @9
|
||||
Removing empty block @10
|
||||
Removing empty block @11
|
||||
Removing empty block @12
|
||||
Removing empty block @13
|
||||
@ -885,7 +885,7 @@ CONTROL FLOW GRAPH SSA WITH ASSIGNMENT CALL & RETURN
|
||||
(byte*) print_screen#0 ← ((byte*)) (word/signed word/dword/signed dword) 1024
|
||||
(byte*) print_line_cursor#0 ← (byte*) print_screen#0
|
||||
(byte*) print_char_cursor#0 ← (byte*) print_line_cursor#0
|
||||
to:@15
|
||||
to:@10
|
||||
print_ln: scope:[print_ln] from main::@16
|
||||
(byte*) print_char_cursor#64 ← phi( main::@16/(byte*) print_char_cursor#29 )
|
||||
(byte*) print_line_cursor#17 ← phi( main::@16/(byte*) print_line_cursor#19 )
|
||||
@ -957,12 +957,17 @@ print_dword::@return: scope:[print_dword] from print_dword::@2
|
||||
(byte*) print_char_cursor#8 ← (byte*) print_char_cursor#40
|
||||
return
|
||||
to:@return
|
||||
@10: scope:[] from @begin
|
||||
(byte*) print_screen#6 ← phi( @begin/(byte*) print_screen#0 )
|
||||
(byte*) print_char_cursor#71 ← phi( @begin/(byte*) print_char_cursor#0 )
|
||||
(byte*) print_line_cursor#22 ← phi( @begin/(byte*) print_line_cursor#0 )
|
||||
(byte[]) print_hextab#0 ← (const string) $0
|
||||
to:@15
|
||||
print_byte: scope:[print_byte] from main::@11 main::@13 main::@15 main::@9 print_word print_word::@1
|
||||
(byte*) print_char_cursor#67 ← phi( main::@11/(byte*) print_char_cursor#24 main::@13/(byte*) print_char_cursor#26 main::@15/(byte*) print_char_cursor#28 main::@9/(byte*) print_char_cursor#22 print_word/(byte*) print_char_cursor#65 print_word::@1/(byte*) print_char_cursor#3 )
|
||||
(byte) print_byte::b#6 ← phi( main::@11/(byte) print_byte::b#3 main::@13/(byte) print_byte::b#4 main::@15/(byte) print_byte::b#5 main::@9/(byte) print_byte::b#2 print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 )
|
||||
(byte[]) print_byte::hextab#0 ← (const string) print_byte::$4
|
||||
(byte~) print_byte::$0 ← (byte) print_byte::b#6 >> (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(byte) print_char::ch#0 ← *((byte[]) print_byte::hextab#0 + (byte~) print_byte::$0)
|
||||
(byte) print_char::ch#0 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$0)
|
||||
call print_char param-assignment
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
@ -970,7 +975,7 @@ print_byte::@1: scope:[print_byte] from print_byte
|
||||
(byte*) print_char_cursor#41 ← phi( print_byte/(byte*) print_char_cursor#13 )
|
||||
(byte*) print_char_cursor#9 ← (byte*) print_char_cursor#41
|
||||
(byte~) print_byte::$2 ← (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) 15
|
||||
(byte) print_char::ch#1 ← *((byte[]) print_byte::hextab#0 + (byte~) print_byte::$2)
|
||||
(byte) print_char::ch#1 ← *((byte[]) print_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
|
||||
@ -1032,7 +1037,7 @@ main::@3: scope:[main] from main
|
||||
(dword) main::dw#0 ← (dword/signed dword) 305419896
|
||||
to:main::@1
|
||||
main::@1: scope:[main] from main::@17 main::@3
|
||||
(byte*) print_line_cursor#33 ← phi( main::@17/(byte*) print_line_cursor#6 main::@3/(byte*) print_line_cursor#5 )
|
||||
(byte*) print_line_cursor#34 ← phi( main::@17/(byte*) print_line_cursor#6 main::@3/(byte*) print_line_cursor#5 )
|
||||
(byte*) print_char_cursor#69 ← phi( main::@17/(byte*) print_char_cursor#30 main::@3/(byte*) print_char_cursor#16 )
|
||||
(dword) main::dw#2 ← phi( main::@17/(dword) main::dw#1 main::@3/(dword) main::dw#0 )
|
||||
(dword) main::dw2#0 ← (dword) main::dw#2
|
||||
@ -1049,7 +1054,7 @@ main::@1: scope:[main] from main::@17 main::@3
|
||||
to:main::@4
|
||||
main::@4: scope:[main] from main::@1
|
||||
(dword) main::dw#16 ← phi( main::@1/(dword) main::dw#2 )
|
||||
(byte*) print_line_cursor#32 ← phi( main::@1/(byte*) print_line_cursor#33 )
|
||||
(byte*) print_line_cursor#33 ← phi( main::@1/(byte*) print_line_cursor#34 )
|
||||
(dword) main::dw2#9 ← phi( main::@1/(dword) main::dw2#2 )
|
||||
(byte*) print_char_cursor#48 ← phi( main::@1/(byte*) print_char_cursor#8 )
|
||||
(byte*) print_char_cursor#17 ← (byte*) print_char_cursor#48
|
||||
@ -1058,7 +1063,7 @@ main::@4: scope:[main] from main::@1
|
||||
to:main::@5
|
||||
main::@5: scope:[main] from main::@4
|
||||
(dword) main::dw#15 ← phi( main::@4/(dword) main::dw#16 )
|
||||
(byte*) print_line_cursor#31 ← phi( main::@4/(byte*) print_line_cursor#32 )
|
||||
(byte*) print_line_cursor#32 ← phi( main::@4/(byte*) print_line_cursor#33 )
|
||||
(dword) main::dw2#3 ← phi( main::@4/(dword) main::dw2#9 )
|
||||
(byte*) print_char_cursor#49 ← phi( main::@4/(byte*) print_char_cursor#13 )
|
||||
(byte*) print_char_cursor#18 ← (byte*) print_char_cursor#49
|
||||
@ -1068,7 +1073,7 @@ main::@5: scope:[main] from main::@4
|
||||
to:main::@6
|
||||
main::@6: scope:[main] from main::@5
|
||||
(dword) main::dw#14 ← phi( main::@5/(dword) main::dw#15 )
|
||||
(byte*) print_line_cursor#30 ← phi( main::@5/(byte*) print_line_cursor#31 )
|
||||
(byte*) print_line_cursor#31 ← phi( main::@5/(byte*) print_line_cursor#32 )
|
||||
(dword) main::dw2#10 ← phi( main::@5/(dword) main::dw2#3 )
|
||||
(byte*) print_char_cursor#50 ← phi( main::@5/(byte*) print_char_cursor#5 )
|
||||
(byte*) print_char_cursor#19 ← (byte*) print_char_cursor#50
|
||||
@ -1077,7 +1082,7 @@ main::@6: scope:[main] from main::@5
|
||||
to:main::@7
|
||||
main::@7: scope:[main] from main::@6
|
||||
(dword) main::dw#13 ← phi( main::@6/(dword) main::dw#14 )
|
||||
(byte*) print_line_cursor#29 ← phi( main::@6/(byte*) print_line_cursor#30 )
|
||||
(byte*) print_line_cursor#30 ← phi( main::@6/(byte*) print_line_cursor#31 )
|
||||
(dword) main::dw2#4 ← phi( main::@6/(dword) main::dw2#10 )
|
||||
(byte*) print_char_cursor#51 ← phi( main::@6/(byte*) print_char_cursor#13 )
|
||||
(byte*) print_char_cursor#20 ← (byte*) print_char_cursor#51
|
||||
@ -1087,7 +1092,7 @@ main::@7: scope:[main] from main::@6
|
||||
to:main::@8
|
||||
main::@8: scope:[main] from main::@7
|
||||
(dword) main::dw#12 ← phi( main::@7/(dword) main::dw#13 )
|
||||
(byte*) print_line_cursor#28 ← phi( main::@7/(byte*) print_line_cursor#29 )
|
||||
(byte*) print_line_cursor#29 ← phi( main::@7/(byte*) print_line_cursor#30 )
|
||||
(dword) main::dw2#11 ← phi( main::@7/(dword) main::dw2#4 )
|
||||
(byte*) print_char_cursor#52 ← phi( main::@7/(byte*) print_char_cursor#5 )
|
||||
(byte*) print_char_cursor#21 ← (byte*) print_char_cursor#52
|
||||
@ -1096,7 +1101,7 @@ main::@8: scope:[main] from main::@7
|
||||
to:main::@9
|
||||
main::@9: scope:[main] from main::@8
|
||||
(dword) main::dw#11 ← phi( main::@8/(dword) main::dw#12 )
|
||||
(byte*) print_line_cursor#27 ← phi( main::@8/(byte*) print_line_cursor#28 )
|
||||
(byte*) print_line_cursor#28 ← phi( main::@8/(byte*) print_line_cursor#29 )
|
||||
(dword) main::dw2#5 ← phi( main::@8/(dword) main::dw2#11 )
|
||||
(byte*) print_char_cursor#53 ← phi( main::@8/(byte*) print_char_cursor#13 )
|
||||
(byte*) print_char_cursor#22 ← (byte*) print_char_cursor#53
|
||||
@ -1107,7 +1112,7 @@ main::@9: scope:[main] from main::@8
|
||||
to:main::@10
|
||||
main::@10: scope:[main] from main::@9
|
||||
(dword) main::dw#10 ← phi( main::@9/(dword) main::dw#11 )
|
||||
(byte*) print_line_cursor#26 ← phi( main::@9/(byte*) print_line_cursor#27 )
|
||||
(byte*) print_line_cursor#27 ← phi( main::@9/(byte*) print_line_cursor#28 )
|
||||
(dword) main::dw2#12 ← phi( main::@9/(dword) main::dw2#5 )
|
||||
(byte*) print_char_cursor#54 ← phi( main::@9/(byte*) print_char_cursor#11 )
|
||||
(byte*) print_char_cursor#23 ← (byte*) print_char_cursor#54
|
||||
@ -1116,7 +1121,7 @@ main::@10: scope:[main] from main::@9
|
||||
to:main::@11
|
||||
main::@11: scope:[main] from main::@10
|
||||
(dword) main::dw#9 ← phi( main::@10/(dword) main::dw#10 )
|
||||
(byte*) print_line_cursor#25 ← phi( main::@10/(byte*) print_line_cursor#26 )
|
||||
(byte*) print_line_cursor#26 ← phi( main::@10/(byte*) print_line_cursor#27 )
|
||||
(dword) main::dw2#6 ← phi( main::@10/(dword) main::dw2#12 )
|
||||
(byte*) print_char_cursor#55 ← phi( main::@10/(byte*) print_char_cursor#13 )
|
||||
(byte*) print_char_cursor#24 ← (byte*) print_char_cursor#55
|
||||
@ -1127,7 +1132,7 @@ main::@11: scope:[main] from main::@10
|
||||
to:main::@12
|
||||
main::@12: scope:[main] from main::@11
|
||||
(dword) main::dw#8 ← phi( main::@11/(dword) main::dw#9 )
|
||||
(byte*) print_line_cursor#24 ← phi( main::@11/(byte*) print_line_cursor#25 )
|
||||
(byte*) print_line_cursor#25 ← phi( main::@11/(byte*) print_line_cursor#26 )
|
||||
(dword) main::dw2#13 ← phi( main::@11/(dword) main::dw2#6 )
|
||||
(byte*) print_char_cursor#56 ← phi( main::@11/(byte*) print_char_cursor#11 )
|
||||
(byte*) print_char_cursor#25 ← (byte*) print_char_cursor#56
|
||||
@ -1136,7 +1141,7 @@ main::@12: scope:[main] from main::@11
|
||||
to:main::@13
|
||||
main::@13: scope:[main] from main::@12
|
||||
(dword) main::dw#7 ← phi( main::@12/(dword) main::dw#8 )
|
||||
(byte*) print_line_cursor#23 ← phi( main::@12/(byte*) print_line_cursor#24 )
|
||||
(byte*) print_line_cursor#24 ← phi( main::@12/(byte*) print_line_cursor#25 )
|
||||
(dword) main::dw2#7 ← phi( main::@12/(dword) main::dw2#13 )
|
||||
(byte*) print_char_cursor#57 ← phi( main::@12/(byte*) print_char_cursor#13 )
|
||||
(byte*) print_char_cursor#26 ← (byte*) print_char_cursor#57
|
||||
@ -1147,7 +1152,7 @@ main::@13: scope:[main] from main::@12
|
||||
to:main::@14
|
||||
main::@14: scope:[main] from main::@13
|
||||
(dword) main::dw#6 ← phi( main::@13/(dword) main::dw#7 )
|
||||
(byte*) print_line_cursor#22 ← phi( main::@13/(byte*) print_line_cursor#23 )
|
||||
(byte*) print_line_cursor#23 ← phi( main::@13/(byte*) print_line_cursor#24 )
|
||||
(dword) main::dw2#14 ← phi( main::@13/(dword) main::dw2#7 )
|
||||
(byte*) print_char_cursor#58 ← phi( main::@13/(byte*) print_char_cursor#11 )
|
||||
(byte*) print_char_cursor#27 ← (byte*) print_char_cursor#58
|
||||
@ -1156,7 +1161,7 @@ main::@14: scope:[main] from main::@13
|
||||
to:main::@15
|
||||
main::@15: scope:[main] from main::@14
|
||||
(dword) main::dw#5 ← phi( main::@14/(dword) main::dw#6 )
|
||||
(byte*) print_line_cursor#21 ← phi( main::@14/(byte*) print_line_cursor#22 )
|
||||
(byte*) print_line_cursor#21 ← phi( main::@14/(byte*) print_line_cursor#23 )
|
||||
(dword) main::dw2#8 ← phi( main::@14/(dword) main::dw2#14 )
|
||||
(byte*) print_char_cursor#59 ← phi( main::@14/(byte*) print_char_cursor#13 )
|
||||
(byte*) print_char_cursor#28 ← (byte*) print_char_cursor#59
|
||||
@ -1189,10 +1194,10 @@ main::@return: scope:[main] from main::@17
|
||||
(byte*) print_char_cursor#31 ← (byte*) print_char_cursor#62
|
||||
return
|
||||
to:@return
|
||||
@15: scope:[] from @begin
|
||||
(byte*) print_screen#5 ← phi( @begin/(byte*) print_screen#0 )
|
||||
(byte*) print_char_cursor#70 ← phi( @begin/(byte*) print_char_cursor#0 )
|
||||
(byte*) print_line_cursor#20 ← phi( @begin/(byte*) print_line_cursor#0 )
|
||||
@15: scope:[] from @10
|
||||
(byte*) print_screen#5 ← phi( @10/(byte*) print_screen#6 )
|
||||
(byte*) print_char_cursor#70 ← phi( @10/(byte*) print_char_cursor#71 )
|
||||
(byte*) print_line_cursor#20 ← phi( @10/(byte*) print_line_cursor#22 )
|
||||
call main param-assignment
|
||||
to:@16
|
||||
@16: scope:[] from @15
|
||||
@ -1204,6 +1209,8 @@ main::@return: scope:[main] from main::@17
|
||||
@end: scope:[] from @16
|
||||
|
||||
SYMBOL TABLE SSA
|
||||
(const string) $0 = (string) "0123456789abcdef"
|
||||
(label) @10
|
||||
(label) @15
|
||||
(label) @16
|
||||
(label) @begin
|
||||
@ -1280,7 +1287,6 @@ SYMBOL TABLE SSA
|
||||
(void()) print_byte((byte) print_byte::b)
|
||||
(byte~) print_byte::$0
|
||||
(byte~) print_byte::$2
|
||||
(const string) print_byte::$4 = (string) "0123456789abcdef"
|
||||
(label) print_byte::@1
|
||||
(label) print_byte::@2
|
||||
(label) print_byte::@return
|
||||
@ -1293,8 +1299,6 @@ SYMBOL TABLE SSA
|
||||
(byte) print_byte::b#5
|
||||
(byte) print_byte::b#6
|
||||
(byte) print_byte::b#7
|
||||
(byte[]) print_byte::hextab
|
||||
(byte[]) print_byte::hextab#0
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -1377,6 +1381,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_char_cursor#69
|
||||
(byte*) print_char_cursor#7
|
||||
(byte*) print_char_cursor#70
|
||||
(byte*) print_char_cursor#71
|
||||
(byte*) print_char_cursor#8
|
||||
(byte*) print_char_cursor#9
|
||||
(void()) print_cls()
|
||||
@ -1399,6 +1404,8 @@ SYMBOL TABLE SSA
|
||||
(dword) print_dword::dw#0
|
||||
(dword) print_dword::dw#1
|
||||
(dword) print_dword::dw#2
|
||||
(byte[]) print_hextab
|
||||
(byte[]) print_hextab#0
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#0
|
||||
(byte*) print_line_cursor#1
|
||||
@ -1428,6 +1435,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_line_cursor#31
|
||||
(byte*) print_line_cursor#32
|
||||
(byte*) print_line_cursor#33
|
||||
(byte*) print_line_cursor#34
|
||||
(byte*) print_line_cursor#4
|
||||
(byte*) print_line_cursor#5
|
||||
(byte*) print_line_cursor#6
|
||||
@ -1447,6 +1455,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) print_screen#3
|
||||
(byte*) print_screen#4
|
||||
(byte*) print_screen#5
|
||||
(byte*) print_screen#6
|
||||
(void()) print_word((word) print_word::w)
|
||||
(byte~) print_word::$0
|
||||
(byte~) print_word::$2
|
||||
@ -1503,7 +1512,7 @@ Not aliassing across scopes: print_line_cursor#14 print_line_cursor#2
|
||||
Not aliassing across scopes: print_char_cursor#61 print_char_cursor#2
|
||||
Not aliassing across scopes: print_line_cursor#16 print_line_cursor#7
|
||||
Not aliassing across scopes: print_char_cursor#63 print_char_cursor#31
|
||||
Alias (byte*) print_line_cursor#0 = (byte*) print_screen#0 (byte*) print_char_cursor#0 (byte*) print_line_cursor#20 (byte*) print_char_cursor#70 (byte*) print_screen#5
|
||||
Alias (byte*) print_line_cursor#0 = (byte*) print_screen#0 (byte*) print_char_cursor#0 (byte*) print_line_cursor#22 (byte*) print_char_cursor#71 (byte*) print_screen#6 (byte*) print_line_cursor#20 (byte*) print_char_cursor#70 (byte*) print_screen#5
|
||||
Alias (byte*) print_line_cursor#1 = (byte*~) print_ln::$0 (byte*) print_line_cursor#10 (byte*) print_char_cursor#1 (byte*) print_line_cursor#11 (byte*) print_char_cursor#34 (byte*) print_line_cursor#2 (byte*) print_char_cursor#2
|
||||
Alias (byte) print_byte::b#0 = (byte~) print_word::$0
|
||||
Alias (word) print_word::w#4 = (word) print_word::w#5
|
||||
@ -1526,7 +1535,7 @@ Alias (dword) main::dw#10 = (dword) main::dw2#0 (dword) main::dw#2 (dword) main:
|
||||
Alias (word/signed dword/dword~) main::$32 = (word/signed dword/dword~) main::$3
|
||||
Alias (word/signed dword/dword~) main::$33 = (word/signed dword/dword~) main::$6
|
||||
Alias (dword) main::dw2#10 = (dword) main::dw2#9 (dword) main::dw2#2 (dword) main::dw2#3 (dword) main::dw2#4 (dword) main::dw2#11 (dword) main::dw2#5 (dword) main::dw2#12 (dword) main::dw2#6 (dword) main::dw2#13 (dword) main::dw2#7 (dword) main::dw2#14 (dword) main::dw2#8
|
||||
Alias (byte*) print_line_cursor#19 = (byte*) print_line_cursor#32 (byte*) print_line_cursor#33 (byte*) print_line_cursor#31 (byte*) print_line_cursor#30 (byte*) print_line_cursor#29 (byte*) print_line_cursor#28 (byte*) print_line_cursor#27 (byte*) print_line_cursor#26 (byte*) print_line_cursor#25 (byte*) print_line_cursor#24 (byte*) print_line_cursor#23 (byte*) print_line_cursor#22 (byte*) print_line_cursor#21
|
||||
Alias (byte*) print_line_cursor#19 = (byte*) print_line_cursor#33 (byte*) print_line_cursor#34 (byte*) print_line_cursor#32 (byte*) print_line_cursor#31 (byte*) print_line_cursor#30 (byte*) print_line_cursor#29 (byte*) print_line_cursor#28 (byte*) print_line_cursor#27 (byte*) print_line_cursor#26 (byte*) print_line_cursor#25 (byte*) print_line_cursor#24 (byte*) print_line_cursor#23 (byte*) print_line_cursor#21
|
||||
Alias (byte*) print_char_cursor#17 = (byte*) print_char_cursor#48
|
||||
Alias (byte*) print_char_cursor#18 = (byte*) print_char_cursor#49
|
||||
Alias (word) print_word::w#2 = (word~) main::$9
|
||||
@ -1636,7 +1645,7 @@ Simple Condition (boolean~) print_cls::$1 if((byte*) print_cls::sc#1!=(byte*~) p
|
||||
Simple Condition (boolean~) main::$31 if((dword) main::dw#1!=(dword/signed dword) 305419920) goto main::@1
|
||||
Succesful SSA optimization Pass2ConditionalJumpSimplification
|
||||
Constant (const byte*) print_line_cursor#0 = ((byte*))1024
|
||||
Constant (const string) print_byte::hextab#0 = print_byte::$4
|
||||
Constant (const string) print_hextab#0 = $0
|
||||
Constant (const dword) main::dw#0 = 305419896
|
||||
Constant (const byte) print_char::ch#2 = ' '
|
||||
Constant (const byte) print_char::ch#3 = ' '
|
||||
@ -1651,6 +1660,7 @@ Succesful SSA optimization Pass2ConstantIdentification
|
||||
Culled Empty Block (label) print_ln::@2
|
||||
Culled Empty Block (label) print_word::@2
|
||||
Culled Empty Block (label) print_dword::@2
|
||||
Culled Empty Block (label) @10
|
||||
Culled Empty Block (label) print_byte::@2
|
||||
Culled Empty Block (label) print_cls::@2
|
||||
Culled Empty Block (label) main::@3
|
||||
@ -1734,8 +1744,8 @@ Constant inlined print_char::ch#5 = (byte) ' '
|
||||
Constant inlined print_char::ch#4 = (byte) ' '
|
||||
Constant inlined print_cls::$0 = ((byte*))(word/signed word/dword/signed dword) 1024+(word/signed word/dword/signed dword) 1000
|
||||
Constant inlined print_line_cursor#0 = ((byte*))(word/signed word/dword/signed dword) 1024
|
||||
Constant inlined print_byte::$4 = (const string) print_byte::hextab#0
|
||||
Constant inlined print_cls::sc#0 = ((byte*))(word/signed word/dword/signed dword) 1024
|
||||
Constant inlined $0 = (const string) print_hextab#0
|
||||
Constant inlined print_char::ch#7 = (byte) ' '
|
||||
Constant inlined main::dw#0 = (dword/signed dword) 305419896
|
||||
Constant inlined print_char::ch#6 = (byte) ' '
|
||||
@ -1810,41 +1820,41 @@ Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Created 11 initial phi equivalence classes
|
||||
Coalesced [15] print_char_cursor#81 ← print_char_cursor#12
|
||||
Coalesced [15] print_char_cursor#82 ← print_char_cursor#12
|
||||
Coalesced [18] print_word::w#6 ← print_word::w#2
|
||||
Coalesced [19] print_char_cursor#86 ← print_char_cursor#12
|
||||
Coalesced (already) [21] print_char_cursor#82 ← print_char_cursor#12
|
||||
Coalesced [19] print_char_cursor#87 ← print_char_cursor#12
|
||||
Coalesced (already) [21] print_char_cursor#83 ← print_char_cursor#12
|
||||
Coalesced [24] print_word::w#7 ← print_word::w#3
|
||||
Coalesced (already) [25] print_char_cursor#87 ← print_char_cursor#12
|
||||
Coalesced (already) [27] print_char_cursor#83 ← print_char_cursor#12
|
||||
Coalesced (already) [25] print_char_cursor#88 ← print_char_cursor#12
|
||||
Coalesced (already) [27] print_char_cursor#84 ← print_char_cursor#12
|
||||
Coalesced [31] print_byte::b#11 ← print_byte::b#2
|
||||
Coalesced [32] print_char_cursor#75 ← print_char_cursor#12
|
||||
Coalesced (already) [34] print_char_cursor#78 ← print_char_cursor#12
|
||||
Coalesced [32] print_char_cursor#76 ← print_char_cursor#12
|
||||
Coalesced (already) [34] print_char_cursor#79 ← print_char_cursor#12
|
||||
Coalesced [38] print_byte::b#8 ← print_byte::b#3
|
||||
Coalesced (already) [39] print_char_cursor#72 ← print_char_cursor#12
|
||||
Coalesced (already) [41] print_char_cursor#79 ← print_char_cursor#12
|
||||
Coalesced (already) [39] print_char_cursor#73 ← print_char_cursor#12
|
||||
Coalesced (already) [41] print_char_cursor#80 ← print_char_cursor#12
|
||||
Coalesced [45] print_byte::b#9 ← print_byte::b#4
|
||||
Coalesced (already) [46] print_char_cursor#73 ← print_char_cursor#12
|
||||
Coalesced (already) [48] print_char_cursor#80 ← print_char_cursor#12
|
||||
Coalesced (already) [46] print_char_cursor#74 ← print_char_cursor#12
|
||||
Coalesced (already) [48] print_char_cursor#81 ← print_char_cursor#12
|
||||
Coalesced [52] print_byte::b#10 ← print_byte::b#5
|
||||
Coalesced (already) [53] print_char_cursor#74 ← print_char_cursor#12
|
||||
Coalesced (already) [53] print_char_cursor#75 ← print_char_cursor#12
|
||||
Coalesced [60] main::dw#17 ← main::dw#1
|
||||
Not coalescing [61] print_char_cursor#71 ← print_line_cursor#1
|
||||
Coalesced [62] print_line_cursor#34 ← print_line_cursor#1
|
||||
Coalesced [63] print_line_cursor#35 ← print_line_cursor#19
|
||||
Coalesced (already) [68] print_line_cursor#36 ← print_line_cursor#1
|
||||
Not coalescing [61] print_char_cursor#72 ← print_line_cursor#1
|
||||
Coalesced [62] print_line_cursor#35 ← print_line_cursor#1
|
||||
Coalesced [63] print_line_cursor#36 ← print_line_cursor#19
|
||||
Coalesced (already) [68] print_line_cursor#37 ← print_line_cursor#1
|
||||
Coalesced [72] print_char::ch#9 ← print_char::ch#0
|
||||
Coalesced (already) [73] print_char_cursor#84 ← print_char_cursor#67
|
||||
Coalesced (already) [73] print_char_cursor#85 ← print_char_cursor#67
|
||||
Coalesced [77] print_char::ch#10 ← print_char::ch#1
|
||||
Coalesced (already) [78] print_char_cursor#85 ← print_char_cursor#12
|
||||
Coalesced (already) [78] print_char_cursor#86 ← print_char_cursor#12
|
||||
Coalesced [87] print_byte::b#12 ← print_byte::b#0
|
||||
Coalesced (already) [88] print_char_cursor#76 ← print_char_cursor#65
|
||||
Coalesced (already) [88] print_char_cursor#77 ← print_char_cursor#65
|
||||
Coalesced [91] print_byte::b#13 ← print_byte::b#1
|
||||
Coalesced (already) [92] print_char_cursor#77 ← print_char_cursor#12
|
||||
Coalesced (already) [92] print_char_cursor#78 ← print_char_cursor#12
|
||||
Coalesced [96] print_word::w#8 ← print_word::w#0
|
||||
Coalesced [97] print_char_cursor#88 ← print_char_cursor#69
|
||||
Coalesced [97] print_char_cursor#89 ← print_char_cursor#69
|
||||
Coalesced [100] print_word::w#9 ← print_word::w#1
|
||||
Coalesced (already) [101] print_char_cursor#89 ← print_char_cursor#12
|
||||
Coalesced (already) [101] print_char_cursor#90 ← print_char_cursor#12
|
||||
Coalesced [110] print_cls::sc#3 ← print_cls::sc#1
|
||||
Coalesced down to 7 phi equivalence classes
|
||||
Culled Empty Block (label) print_ln::@3
|
||||
@ -1920,7 +1930,7 @@ main: scope:[main] from @15
|
||||
to:main::@1
|
||||
main::@1: scope:[main] from main main::@18
|
||||
[6] (byte*) print_line_cursor#19 ← phi( main::@18/(byte*) print_line_cursor#1 main/((byte*))(word/signed word/dword/signed dword) 1024 ) [ main::dw#10 print_char_cursor#69 print_line_cursor#19 ] ( main:2 [ main::dw#10 print_char_cursor#69 print_line_cursor#19 ] )
|
||||
[6] (byte*) print_char_cursor#69 ← phi( main::@18/(byte*~) print_char_cursor#71 main/((byte*))(word/signed word/dword/signed dword) 1024 ) [ main::dw#10 print_char_cursor#69 print_line_cursor#19 ] ( main:2 [ main::dw#10 print_char_cursor#69 print_line_cursor#19 ] )
|
||||
[6] (byte*) print_char_cursor#69 ← phi( main::@18/(byte*~) print_char_cursor#72 main/((byte*))(word/signed word/dword/signed dword) 1024 ) [ main::dw#10 print_char_cursor#69 print_line_cursor#19 ] ( main:2 [ main::dw#10 print_char_cursor#69 print_line_cursor#19 ] )
|
||||
[6] (dword) main::dw#10 ← phi( main::@18/(dword) main::dw#1 main/(dword/signed dword) 305419896 ) [ main::dw#10 print_char_cursor#69 print_line_cursor#19 ] ( main:2 [ main::dw#10 print_char_cursor#69 print_line_cursor#19 ] )
|
||||
[7] (word~) main::$2 ← > (dword) main::dw#10 [ main::dw#10 print_char_cursor#69 print_line_cursor#19 main::$2 ] ( main:2 [ main::dw#10 print_char_cursor#69 print_line_cursor#19 main::$2 ] )
|
||||
[8] (word/signed dword/dword~) main::$32 ← (word~) main::$2 + (word/signed word/dword/signed dword) 4369 [ main::dw#10 print_char_cursor#69 print_line_cursor#19 main::$32 ] ( main:2 [ main::dw#10 print_char_cursor#69 print_line_cursor#19 main::$32 ] )
|
||||
@ -1995,7 +2005,7 @@ main::@return: scope:[main] from main::@17
|
||||
[47] return [ ] ( main:2 [ ] )
|
||||
to:@return
|
||||
main::@18: scope:[main] from main::@17
|
||||
[48] (byte*~) print_char_cursor#71 ← (byte*) print_line_cursor#1 [ main::dw#1 print_char_cursor#71 print_line_cursor#1 ] ( main:2 [ main::dw#1 print_char_cursor#71 print_line_cursor#1 ] )
|
||||
[48] (byte*~) print_char_cursor#72 ← (byte*) print_line_cursor#1 [ main::dw#1 print_char_cursor#72 print_line_cursor#1 ] ( main:2 [ main::dw#1 print_char_cursor#72 print_line_cursor#1 ] )
|
||||
to:main::@1
|
||||
print_ln: scope:[print_ln] from main::@16
|
||||
[49] phi() [ print_line_cursor#19 print_char_cursor#12 ] ( main:2::print_ln:44 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 ] )
|
||||
@ -2012,12 +2022,12 @@ print_byte: scope:[print_byte] from main::@11 main::@13 main::@15 main::@9 prin
|
||||
[54] (byte*) print_char_cursor#67 ← phi( main::@11/(byte*) print_char_cursor#12 main::@13/(byte*) print_char_cursor#12 main::@15/(byte*) print_char_cursor#12 main::@9/(byte*) print_char_cursor#12 print_word/(byte*) print_char_cursor#65 print_word::@1/(byte*) print_char_cursor#12 ) [ print_byte::b#6 print_char_cursor#67 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_byte::b#6 print_char_cursor#67 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_byte::b#6 print_char_cursor#67 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_byte::b#6 print_char_cursor#67 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] )
|
||||
[54] (byte) print_byte::b#6 ← phi( main::@11/(byte) print_byte::b#3 main::@13/(byte) print_byte::b#4 main::@15/(byte) print_byte::b#5 main::@9/(byte) print_byte::b#2 print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) [ print_byte::b#6 print_char_cursor#67 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_byte::b#6 print_char_cursor#67 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_byte::b#6 print_char_cursor#67 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_byte::b#6 print_char_cursor#67 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 ] )
|
||||
[55] (byte~) print_byte::$0 ← (byte) print_byte::b#6 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#6 print_char_cursor#67 print_byte::$0 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_byte::$0 ] )
|
||||
[56] (byte) print_char::ch#0 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] )
|
||||
[56] (byte) print_char::ch#0 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] )
|
||||
[57] call print_char param-assignment [ print_char_cursor#12 print_byte::b#6 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 print_byte::b#6 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::b#6 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::b#6 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 print_byte::b#6 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::b#6 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 print_byte::b#6 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] )
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
[58] (byte~) print_byte::$2 ← (byte) print_byte::b#6 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#12 print_byte::$2 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 print_byte::$2 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] )
|
||||
[59] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#1 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] )
|
||||
[59] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#1 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] )
|
||||
[60] call print_char param-assignment [ print_char_cursor#12 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] )
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte::@1
|
||||
@ -2164,7 +2174,6 @@ VARIABLE REGISTER WEIGHTS
|
||||
(byte) print_byte::b#4 22.0
|
||||
(byte) print_byte::b#5 22.0
|
||||
(byte) print_byte::b#6 13.0
|
||||
(byte[]) print_byte::hextab
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(byte) print_char::ch
|
||||
(byte) print_char::ch#0 4.0
|
||||
@ -2176,7 +2185,7 @@ VARIABLE REGISTER WEIGHTS
|
||||
(byte*) print_char_cursor#65 14.0
|
||||
(byte*) print_char_cursor#67 16.666666666666664
|
||||
(byte*) print_char_cursor#69 1.4444444444444446
|
||||
(byte*~) print_char_cursor#71 22.0
|
||||
(byte*~) print_char_cursor#72 22.0
|
||||
(void()) print_cls()
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 16.5
|
||||
@ -2184,6 +2193,7 @@ VARIABLE REGISTER WEIGHTS
|
||||
(void()) print_dword((dword) print_dword::dw)
|
||||
(dword) print_dword::dw
|
||||
(dword) print_dword::dw#0 5.0
|
||||
(byte[]) print_hextab
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#1 46.42857142857143
|
||||
(byte*) print_line_cursor#19 0.3333333333333333
|
||||
@ -2203,7 +2213,7 @@ Initial phi equivalence classes
|
||||
[ print_line_cursor#9 print_line_cursor#19 print_line_cursor#1 ]
|
||||
[ print_byte::b#6 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#2 print_byte::b#0 print_byte::b#1 ]
|
||||
[ print_char::ch#8 print_char::ch#0 print_char::ch#1 ]
|
||||
[ print_char_cursor#44 print_char_cursor#67 print_char_cursor#12 print_char_cursor#65 print_char_cursor#69 print_char_cursor#71 ]
|
||||
[ print_char_cursor#44 print_char_cursor#67 print_char_cursor#12 print_char_cursor#65 print_char_cursor#69 print_char_cursor#72 ]
|
||||
[ print_word::w#4 print_word::w#2 print_word::w#3 print_word::w#0 print_word::w#1 ]
|
||||
[ print_cls::sc#2 print_cls::sc#1 ]
|
||||
Added variable main::$2 to zero page equivalence class [ main::$2 ]
|
||||
@ -2224,7 +2234,7 @@ Complete equivalence classes
|
||||
[ print_line_cursor#9 print_line_cursor#19 print_line_cursor#1 ]
|
||||
[ print_byte::b#6 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#2 print_byte::b#0 print_byte::b#1 ]
|
||||
[ print_char::ch#8 print_char::ch#0 print_char::ch#1 ]
|
||||
[ print_char_cursor#44 print_char_cursor#67 print_char_cursor#12 print_char_cursor#65 print_char_cursor#69 print_char_cursor#71 ]
|
||||
[ print_char_cursor#44 print_char_cursor#67 print_char_cursor#12 print_char_cursor#65 print_char_cursor#69 print_char_cursor#72 ]
|
||||
[ print_word::w#4 print_word::w#2 print_word::w#3 print_word::w#0 print_word::w#1 ]
|
||||
[ print_cls::sc#2 print_cls::sc#1 ]
|
||||
[ main::$2 ]
|
||||
@ -2244,7 +2254,7 @@ Allocated zp ZP_DWORD:2 [ main::dw#10 main::dw#1 ]
|
||||
Allocated zp ZP_WORD:6 [ print_line_cursor#9 print_line_cursor#19 print_line_cursor#1 ]
|
||||
Allocated zp ZP_BYTE:8 [ print_byte::b#6 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#2 print_byte::b#0 print_byte::b#1 ]
|
||||
Allocated zp ZP_BYTE:9 [ print_char::ch#8 print_char::ch#0 print_char::ch#1 ]
|
||||
Allocated zp ZP_WORD:10 [ print_char_cursor#44 print_char_cursor#67 print_char_cursor#12 print_char_cursor#65 print_char_cursor#69 print_char_cursor#71 ]
|
||||
Allocated zp ZP_WORD:10 [ print_char_cursor#44 print_char_cursor#67 print_char_cursor#12 print_char_cursor#65 print_char_cursor#69 print_char_cursor#72 ]
|
||||
Allocated zp ZP_WORD:12 [ print_word::w#4 print_word::w#2 print_word::w#3 print_word::w#0 print_word::w#1 ]
|
||||
Allocated zp ZP_WORD:14 [ print_cls::sc#2 print_cls::sc#1 ]
|
||||
Allocated zp ZP_WORD:16 [ main::$2 ]
|
||||
@ -2596,7 +2606,7 @@ main: {
|
||||
rts
|
||||
//SEG110 main::@18
|
||||
b18:
|
||||
//SEG111 [48] (byte*~) print_char_cursor#71 ← (byte*) print_line_cursor#1 [ main::dw#1 print_char_cursor#71 print_line_cursor#1 ] ( main:2 [ main::dw#1 print_char_cursor#71 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
//SEG111 [48] (byte*~) print_char_cursor#72 ← (byte*) print_line_cursor#1 [ main::dw#1 print_char_cursor#72 print_line_cursor#1 ] ( main:2 [ main::dw#1 print_char_cursor#72 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
lda print_line_cursor
|
||||
sta print_char_cursor
|
||||
lda print_line_cursor+1
|
||||
@ -2604,7 +2614,7 @@ main: {
|
||||
//SEG112 [6] phi from main::@18 to main::@1 [phi:main::@18->main::@1]
|
||||
b1_from_b18:
|
||||
//SEG113 [6] phi (byte*) print_line_cursor#19 = (byte*) print_line_cursor#1 [phi:main::@18->main::@1#0] -- register_copy
|
||||
//SEG114 [6] phi (byte*) print_char_cursor#69 = (byte*~) print_char_cursor#71 [phi:main::@18->main::@1#1] -- register_copy
|
||||
//SEG114 [6] phi (byte*) print_char_cursor#69 = (byte*~) print_char_cursor#72 [phi:main::@18->main::@1#1] -- register_copy
|
||||
//SEG115 [6] phi (dword) main::dw#10 = (dword) main::dw#1 [phi:main::@18->main::@1#2] -- register_copy
|
||||
jmp b1
|
||||
}
|
||||
@ -2652,9 +2662,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
sta _0
|
||||
//SEG126 [56] (byte) print_char::ch#0 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
//SEG126 [56] (byte) print_char::ch#0 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
ldy _0
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
sta print_char.ch
|
||||
//SEG127 [57] call print_char param-assignment [ print_char_cursor#12 print_byte::b#6 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 print_byte::b#6 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::b#6 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::b#6 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 print_byte::b#6 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::b#6 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 print_byte::b#6 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] )
|
||||
//SEG128 [62] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
@ -2669,9 +2679,9 @@ print_byte: {
|
||||
lda #$f
|
||||
and b
|
||||
sta _2
|
||||
//SEG133 [59] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#1 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
//SEG133 [59] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#1 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
ldy _2
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
sta print_char.ch
|
||||
//SEG134 [60] call print_char param-assignment [ print_char_cursor#12 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] )
|
||||
//SEG135 [62] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
@ -2684,7 +2694,6 @@ print_byte: {
|
||||
breturn:
|
||||
//SEG139 [61] return [ print_char_cursor#12 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG140 print_char
|
||||
print_char: {
|
||||
@ -2807,6 +2816,7 @@ print_cls: {
|
||||
//SEG183 [82] return [ ] ( main:2::print_cls:5 [ ] )
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
REGISTER UPLIFT POTENTIAL REGISTERS
|
||||
Equivalence Class zp ZP_WORD:16 [ main::$2 ] has ALU potential.
|
||||
@ -2827,7 +2837,7 @@ Statement [36] (byte) print_byte::b#4 ← > (word~) main::$23 [ main::dw#10 prin
|
||||
Statement [40] (word~) main::$27 ← < (dword) main::dw2#10 [ main::dw#10 print_line_cursor#19 main::$27 print_char_cursor#12 ] ( main:2 [ main::dw#10 print_line_cursor#19 main::$27 print_char_cursor#12 ] ) always clobbers reg byte a
|
||||
Statement [41] (byte) print_byte::b#5 ← < (word~) main::$27 [ main::dw#10 print_line_cursor#19 print_byte::b#5 print_char_cursor#12 ] ( main:2 [ main::dw#10 print_line_cursor#19 print_byte::b#5 print_char_cursor#12 ] ) always clobbers reg byte a
|
||||
Statement [46] if((dword) main::dw#1!=(dword/signed dword) 305419920) goto main::@18 [ main::dw#1 print_line_cursor#1 ] ( main:2 [ main::dw#1 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [48] (byte*~) print_char_cursor#71 ← (byte*) print_line_cursor#1 [ main::dw#1 print_char_cursor#71 print_line_cursor#1 ] ( main:2 [ main::dw#1 print_char_cursor#71 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [48] (byte*~) print_char_cursor#72 ← (byte*) print_line_cursor#1 [ main::dw#1 print_char_cursor#72 print_line_cursor#1 ] ( main:2 [ main::dw#1 print_char_cursor#72 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [51] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#9 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#1 print_char_cursor#12 ] ( main:2::print_ln:44 [ main::dw#10 print_line_cursor#1 print_char_cursor#12 ] ) always clobbers reg byte a
|
||||
Statement [52] if((byte*) print_line_cursor#1<(byte*) print_char_cursor#12) goto print_ln::@1 [ print_line_cursor#1 print_char_cursor#12 ] ( main:2::print_ln:44 [ main::dw#10 print_line_cursor#1 print_char_cursor#12 ] ) always clobbers reg byte a
|
||||
Statement [58] (byte~) print_byte::$2 ← (byte) print_byte::b#6 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#12 print_byte::$2 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 print_byte::$2 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] ) always clobbers reg byte a
|
||||
@ -2855,7 +2865,7 @@ Statement [36] (byte) print_byte::b#4 ← > (word~) main::$23 [ main::dw#10 prin
|
||||
Statement [40] (word~) main::$27 ← < (dword) main::dw2#10 [ main::dw#10 print_line_cursor#19 main::$27 print_char_cursor#12 ] ( main:2 [ main::dw#10 print_line_cursor#19 main::$27 print_char_cursor#12 ] ) always clobbers reg byte a
|
||||
Statement [41] (byte) print_byte::b#5 ← < (word~) main::$27 [ main::dw#10 print_line_cursor#19 print_byte::b#5 print_char_cursor#12 ] ( main:2 [ main::dw#10 print_line_cursor#19 print_byte::b#5 print_char_cursor#12 ] ) always clobbers reg byte a
|
||||
Statement [46] if((dword) main::dw#1!=(dword/signed dword) 305419920) goto main::@18 [ main::dw#1 print_line_cursor#1 ] ( main:2 [ main::dw#1 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [48] (byte*~) print_char_cursor#71 ← (byte*) print_line_cursor#1 [ main::dw#1 print_char_cursor#71 print_line_cursor#1 ] ( main:2 [ main::dw#1 print_char_cursor#71 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [48] (byte*~) print_char_cursor#72 ← (byte*) print_line_cursor#1 [ main::dw#1 print_char_cursor#72 print_line_cursor#1 ] ( main:2 [ main::dw#1 print_char_cursor#72 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [51] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#9 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#1 print_char_cursor#12 ] ( main:2::print_ln:44 [ main::dw#10 print_line_cursor#1 print_char_cursor#12 ] ) always clobbers reg byte a
|
||||
Statement [52] if((byte*) print_line_cursor#1<(byte*) print_char_cursor#12) goto print_ln::@1 [ print_line_cursor#1 print_char_cursor#12 ] ( main:2::print_ln:44 [ main::dw#10 print_line_cursor#1 print_char_cursor#12 ] ) always clobbers reg byte a
|
||||
Statement [58] (byte~) print_byte::$2 ← (byte) print_byte::b#6 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#12 print_byte::$2 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 print_byte::$2 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] ) always clobbers reg byte a
|
||||
@ -2870,7 +2880,7 @@ Potential registers zp ZP_DWORD:2 [ main::dw#10 main::dw#1 ] : zp ZP_DWORD:2 ,
|
||||
Potential registers zp ZP_WORD:6 [ print_line_cursor#9 print_line_cursor#19 print_line_cursor#1 ] : zp ZP_WORD:6 ,
|
||||
Potential registers zp ZP_BYTE:8 [ print_byte::b#6 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#2 print_byte::b#0 print_byte::b#1 ] : zp ZP_BYTE:8 , reg byte a , reg byte x ,
|
||||
Potential registers zp ZP_BYTE:9 [ print_char::ch#8 print_char::ch#0 print_char::ch#1 ] : zp ZP_BYTE:9 , reg byte a , reg byte x , reg byte y ,
|
||||
Potential registers zp ZP_WORD:10 [ print_char_cursor#44 print_char_cursor#67 print_char_cursor#12 print_char_cursor#65 print_char_cursor#69 print_char_cursor#71 ] : zp ZP_WORD:10 ,
|
||||
Potential registers zp ZP_WORD:10 [ print_char_cursor#44 print_char_cursor#67 print_char_cursor#12 print_char_cursor#65 print_char_cursor#69 print_char_cursor#72 ] : zp ZP_WORD:10 ,
|
||||
Potential registers zp ZP_WORD:12 [ print_word::w#4 print_word::w#2 print_word::w#3 print_word::w#0 print_word::w#1 ] : zp ZP_WORD:12 ,
|
||||
Potential registers zp ZP_WORD:14 [ print_cls::sc#2 print_cls::sc#1 ] : zp ZP_WORD:14 ,
|
||||
Potential registers zp ZP_WORD:16 [ main::$2 ] : zp ZP_WORD:16 , reg byte alu ,
|
||||
@ -2888,7 +2898,7 @@ Potential registers zp ZP_BYTE:44 [ print_byte::$0 ] : zp ZP_BYTE:44 , reg byte
|
||||
Potential registers zp ZP_BYTE:45 [ print_byte::$2 ] : zp ZP_BYTE:45 , reg byte a , reg byte x , reg byte y ,
|
||||
|
||||
REGISTER UPLIFT SCOPES
|
||||
Uplift Scope [] 250.76: zp ZP_WORD:6 [ print_line_cursor#9 print_line_cursor#19 print_line_cursor#1 ] 96.03: zp ZP_WORD:10 [ print_char_cursor#44 print_char_cursor#67 print_char_cursor#12 print_char_cursor#65 print_char_cursor#69 print_char_cursor#71 ]
|
||||
Uplift Scope [] 250.76: zp ZP_WORD:6 [ print_line_cursor#9 print_line_cursor#19 print_line_cursor#1 ] 96.03: zp ZP_WORD:10 [ print_char_cursor#44 print_char_cursor#67 print_char_cursor#12 print_char_cursor#65 print_char_cursor#69 print_char_cursor#72 ]
|
||||
Uplift Scope [main] 22: zp ZP_WORD:16 [ main::$2 ] 22: zp ZP_WORD:18 [ main::$32 ] 22: zp ZP_WORD:24 [ main::$5 ] 22: zp ZP_WORD:26 [ main::$33 ] 22: zp ZP_WORD:36 [ main::$15 ] 22: zp ZP_WORD:38 [ main::$19 ] 22: zp ZP_WORD:40 [ main::$23 ] 22: zp ZP_WORD:42 [ main::$27 ] 12.41: zp ZP_DWORD:2 [ main::dw#10 main::dw#1 ] 7.33: zp ZP_DWORD:20 [ main::dw2#1 ] 3.14: zp ZP_DWORD:28 [ main::dw2#10 ]
|
||||
Uplift Scope [print_byte] 109: zp ZP_BYTE:8 [ print_byte::b#6 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#2 print_byte::b#0 print_byte::b#1 ] 4: zp ZP_BYTE:44 [ print_byte::$0 ] 4: zp ZP_BYTE:45 [ print_byte::$2 ]
|
||||
Uplift Scope [print_word] 62: zp ZP_WORD:12 [ print_word::w#4 print_word::w#2 print_word::w#3 print_word::w#0 print_word::w#1 ]
|
||||
@ -2897,7 +2907,7 @@ Uplift Scope [print_char] 14: zp ZP_BYTE:9 [ print_char::ch#8 print_char::ch#0 p
|
||||
Uplift Scope [print_dword] 5: zp ZP_DWORD:32 [ print_dword::dw#0 ]
|
||||
Uplift Scope [print_ln]
|
||||
|
||||
Uplifting [] best 8947 combination zp ZP_WORD:6 [ print_line_cursor#9 print_line_cursor#19 print_line_cursor#1 ] zp ZP_WORD:10 [ print_char_cursor#44 print_char_cursor#67 print_char_cursor#12 print_char_cursor#65 print_char_cursor#69 print_char_cursor#71 ]
|
||||
Uplifting [] best 8947 combination zp ZP_WORD:6 [ print_line_cursor#9 print_line_cursor#19 print_line_cursor#1 ] zp ZP_WORD:10 [ print_char_cursor#44 print_char_cursor#67 print_char_cursor#12 print_char_cursor#65 print_char_cursor#69 print_char_cursor#72 ]
|
||||
Uplifting [main] best 8947 combination zp ZP_WORD:16 [ main::$2 ] zp ZP_WORD:18 [ main::$32 ] zp ZP_WORD:24 [ main::$5 ] zp ZP_WORD:26 [ main::$33 ] zp ZP_WORD:36 [ main::$15 ] zp ZP_WORD:38 [ main::$19 ] zp ZP_WORD:40 [ main::$23 ] zp ZP_WORD:42 [ main::$27 ] zp ZP_DWORD:2 [ main::dw#10 main::dw#1 ] zp ZP_DWORD:20 [ main::dw2#1 ] zp ZP_DWORD:28 [ main::dw2#10 ]
|
||||
Uplifting [print_byte] best 8895 combination reg byte x [ print_byte::b#6 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#2 print_byte::b#0 print_byte::b#1 ] reg byte a [ print_byte::$0 ] reg byte a [ print_byte::$2 ]
|
||||
Uplifting [print_word] best 8895 combination zp ZP_WORD:12 [ print_word::w#4 print_word::w#2 print_word::w#3 print_word::w#0 print_word::w#1 ]
|
||||
@ -2916,7 +2926,7 @@ Coalescing zero page register [ zp ZP_WORD:12 [ print_word::w#4 print_word::w#2
|
||||
Coalescing zero page register [ zp ZP_WORD:12 [ print_word::w#4 print_word::w#2 print_word::w#3 print_word::w#0 print_word::w#1 main::$2 main::$32 main::$5 main::$33 main::$15 ] ] with [ zp ZP_WORD:38 [ main::$19 ] ]
|
||||
Coalescing zero page register [ zp ZP_WORD:12 [ print_word::w#4 print_word::w#2 print_word::w#3 print_word::w#0 print_word::w#1 main::$2 main::$32 main::$5 main::$33 main::$15 main::$19 ] ] with [ zp ZP_WORD:40 [ main::$23 ] ]
|
||||
Coalescing zero page register [ zp ZP_WORD:12 [ print_word::w#4 print_word::w#2 print_word::w#3 print_word::w#0 print_word::w#1 main::$2 main::$32 main::$5 main::$33 main::$15 main::$19 main::$23 ] ] with [ zp ZP_WORD:42 [ main::$27 ] ]
|
||||
Allocated (was zp ZP_WORD:10) zp ZP_WORD:8 [ print_char_cursor#44 print_char_cursor#67 print_char_cursor#12 print_char_cursor#65 print_char_cursor#69 print_char_cursor#71 ]
|
||||
Allocated (was zp ZP_WORD:10) zp ZP_WORD:8 [ print_char_cursor#44 print_char_cursor#67 print_char_cursor#12 print_char_cursor#65 print_char_cursor#69 print_char_cursor#72 ]
|
||||
Allocated (was zp ZP_WORD:12) zp ZP_WORD:10 [ print_word::w#4 print_word::w#2 print_word::w#3 print_word::w#0 print_word::w#1 main::$2 main::$32 main::$5 main::$33 main::$15 main::$19 main::$23 main::$27 ]
|
||||
Allocated (was zp ZP_DWORD:20) zp ZP_DWORD:12 [ main::dw2#1 main::dw2#10 print_dword::dw#0 ]
|
||||
|
||||
@ -3237,7 +3247,7 @@ main: {
|
||||
rts
|
||||
//SEG110 main::@18
|
||||
b18:
|
||||
//SEG111 [48] (byte*~) print_char_cursor#71 ← (byte*) print_line_cursor#1 [ main::dw#1 print_char_cursor#71 print_line_cursor#1 ] ( main:2 [ main::dw#1 print_char_cursor#71 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
//SEG111 [48] (byte*~) print_char_cursor#72 ← (byte*) print_line_cursor#1 [ main::dw#1 print_char_cursor#72 print_line_cursor#1 ] ( main:2 [ main::dw#1 print_char_cursor#72 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
lda print_line_cursor
|
||||
sta print_char_cursor
|
||||
lda print_line_cursor+1
|
||||
@ -3245,7 +3255,7 @@ main: {
|
||||
//SEG112 [6] phi from main::@18 to main::@1 [phi:main::@18->main::@1]
|
||||
b1_from_b18:
|
||||
//SEG113 [6] phi (byte*) print_line_cursor#19 = (byte*) print_line_cursor#1 [phi:main::@18->main::@1#0] -- register_copy
|
||||
//SEG114 [6] phi (byte*) print_char_cursor#69 = (byte*~) print_char_cursor#71 [phi:main::@18->main::@1#1] -- register_copy
|
||||
//SEG114 [6] phi (byte*) print_char_cursor#69 = (byte*~) print_char_cursor#72 [phi:main::@18->main::@1#1] -- register_copy
|
||||
//SEG115 [6] phi (dword) main::dw#10 = (dword) main::dw#1 [phi:main::@18->main::@1#2] -- register_copy
|
||||
jmp b1
|
||||
}
|
||||
@ -3289,9 +3299,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
//SEG126 [56] (byte) print_char::ch#0 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG126 [56] (byte) print_char::ch#0 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG127 [57] call print_char param-assignment [ print_char_cursor#12 print_byte::b#6 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 print_byte::b#6 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::b#6 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::b#6 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 print_byte::b#6 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::b#6 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 print_byte::b#6 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] )
|
||||
//SEG128 [62] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
print_char_from_print_byte:
|
||||
@ -3304,9 +3314,9 @@ print_byte: {
|
||||
//SEG132 [58] (byte~) print_byte::$2 ← (byte) print_byte::b#6 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#12 print_byte::$2 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 print_byte::$2 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] ) -- vbuaa=vbuxx_band_vbuc1
|
||||
txa
|
||||
and #$f
|
||||
//SEG133 [59] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#1 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG133 [59] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#1 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG134 [60] call print_char param-assignment [ print_char_cursor#12 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] )
|
||||
//SEG135 [62] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
print_char_from_b1:
|
||||
@ -3318,7 +3328,6 @@ print_byte: {
|
||||
breturn:
|
||||
//SEG139 [61] return [ print_char_cursor#12 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG140 print_char
|
||||
print_char: {
|
||||
@ -3439,6 +3448,7 @@ print_cls: {
|
||||
//SEG183 [82] return [ ] ( main:2::print_cls:5 [ ] )
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
ASSEMBLER OPTIMIZATIONS
|
||||
Removing instruction jmp b15
|
||||
@ -3595,8 +3605,6 @@ FINAL SYMBOL TABLE
|
||||
(byte) print_byte::b#4 reg byte x 22.0
|
||||
(byte) print_byte::b#5 reg byte x 22.0
|
||||
(byte) print_byte::b#6 reg byte x 13.0
|
||||
(byte[]) print_byte::hextab
|
||||
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -3609,7 +3617,7 @@ FINAL SYMBOL TABLE
|
||||
(byte*) print_char_cursor#65 print_char_cursor zp ZP_WORD:8 14.0
|
||||
(byte*) print_char_cursor#67 print_char_cursor zp ZP_WORD:8 16.666666666666664
|
||||
(byte*) print_char_cursor#69 print_char_cursor zp ZP_WORD:8 1.4444444444444446
|
||||
(byte*~) print_char_cursor#71 print_char_cursor zp ZP_WORD:8 22.0
|
||||
(byte*~) print_char_cursor#72 print_char_cursor zp ZP_WORD:8 22.0
|
||||
(void()) print_cls()
|
||||
(label) print_cls::@1
|
||||
(label) print_cls::@return
|
||||
@ -3621,6 +3629,8 @@ FINAL SYMBOL TABLE
|
||||
(label) print_dword::@return
|
||||
(dword) print_dword::dw
|
||||
(dword) print_dword::dw#0 dw zp ZP_DWORD:12 5.0
|
||||
(byte[]) print_hextab
|
||||
(const string) print_hextab#0 print_hextab = (string) "0123456789abcdef"
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#1 print_line_cursor zp ZP_WORD:6 46.42857142857143
|
||||
(byte*) print_line_cursor#19 print_line_cursor zp ZP_WORD:6 0.3333333333333333
|
||||
@ -3643,7 +3653,7 @@ zp ZP_DWORD:2 [ main::dw#10 main::dw#1 ]
|
||||
zp ZP_WORD:6 [ print_line_cursor#9 print_line_cursor#19 print_line_cursor#1 print_cls::sc#2 print_cls::sc#1 ]
|
||||
reg byte x [ print_byte::b#6 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#2 print_byte::b#0 print_byte::b#1 ]
|
||||
reg byte a [ print_char::ch#8 print_char::ch#0 print_char::ch#1 ]
|
||||
zp ZP_WORD:8 [ print_char_cursor#44 print_char_cursor#67 print_char_cursor#12 print_char_cursor#65 print_char_cursor#69 print_char_cursor#71 ]
|
||||
zp ZP_WORD:8 [ print_char_cursor#44 print_char_cursor#67 print_char_cursor#12 print_char_cursor#65 print_char_cursor#69 print_char_cursor#72 ]
|
||||
zp ZP_WORD:10 [ print_word::w#4 print_word::w#2 print_word::w#3 print_word::w#0 print_word::w#1 main::$2 main::$32 main::$5 main::$33 main::$15 main::$19 main::$23 main::$27 ]
|
||||
zp ZP_DWORD:12 [ main::dw2#1 main::dw2#10 print_dword::dw#0 ]
|
||||
reg byte a [ print_byte::$0 ]
|
||||
@ -3906,14 +3916,14 @@ main: {
|
||||
rts
|
||||
//SEG110 main::@18
|
||||
b18:
|
||||
//SEG111 [48] (byte*~) print_char_cursor#71 ← (byte*) print_line_cursor#1 [ main::dw#1 print_char_cursor#71 print_line_cursor#1 ] ( main:2 [ main::dw#1 print_char_cursor#71 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
//SEG111 [48] (byte*~) print_char_cursor#72 ← (byte*) print_line_cursor#1 [ main::dw#1 print_char_cursor#72 print_line_cursor#1 ] ( main:2 [ main::dw#1 print_char_cursor#72 print_line_cursor#1 ] ) -- pbuz1=pbuz2
|
||||
lda print_line_cursor
|
||||
sta print_char_cursor
|
||||
lda print_line_cursor+1
|
||||
sta print_char_cursor+1
|
||||
//SEG112 [6] phi from main::@18 to main::@1 [phi:main::@18->main::@1]
|
||||
//SEG113 [6] phi (byte*) print_line_cursor#19 = (byte*) print_line_cursor#1 [phi:main::@18->main::@1#0] -- register_copy
|
||||
//SEG114 [6] phi (byte*) print_char_cursor#69 = (byte*~) print_char_cursor#71 [phi:main::@18->main::@1#1] -- register_copy
|
||||
//SEG114 [6] phi (byte*) print_char_cursor#69 = (byte*~) print_char_cursor#72 [phi:main::@18->main::@1#1] -- register_copy
|
||||
//SEG115 [6] phi (dword) main::dw#10 = (dword) main::dw#1 [phi:main::@18->main::@1#2] -- register_copy
|
||||
jmp b1
|
||||
}
|
||||
@ -3952,9 +3962,9 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
//SEG126 [56] (byte) print_char::ch#0 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG126 [56] (byte) print_char::ch#0 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_byte::b#6 print_char_cursor#67 print_char::ch#0 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG127 [57] call print_char param-assignment [ print_char_cursor#12 print_byte::b#6 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 print_byte::b#6 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::b#6 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::b#6 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 print_byte::b#6 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::b#6 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 print_byte::b#6 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::b#6 ] )
|
||||
//SEG128 [62] phi from print_byte to print_char [phi:print_byte->print_char]
|
||||
//SEG129 [62] phi (byte*) print_char_cursor#44 = (byte*) print_char_cursor#67 [phi:print_byte->print_char#0] -- register_copy
|
||||
@ -3964,9 +3974,9 @@ print_byte: {
|
||||
//SEG132 [58] (byte~) print_byte::$2 ← (byte) print_byte::b#6 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#12 print_byte::$2 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 print_byte::$2 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_byte::$2 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 print_byte::$2 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_byte::$2 ] ) -- vbuaa=vbuxx_band_vbuc1
|
||||
txa
|
||||
and #$f
|
||||
//SEG133 [59] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#1 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
//SEG133 [59] (byte) print_char::ch#1 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#12 print_char::ch#1 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 print_char::ch#1 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
//SEG134 [60] call print_char param-assignment [ print_char_cursor#12 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] )
|
||||
//SEG135 [62] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char]
|
||||
//SEG136 [62] phi (byte*) print_char_cursor#44 = (byte*) print_char_cursor#12 [phi:print_byte::@1->print_char#0] -- register_copy
|
||||
@ -3975,7 +3985,6 @@ print_byte: {
|
||||
//SEG138 print_byte::@return
|
||||
//SEG139 [61] return [ print_char_cursor#12 ] ( main:2::print_byte:27 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:32 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:37 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_byte:42 [ main::dw#10 print_line_cursor#19 print_char_cursor#12 ] main:2::print_word:18::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_word:22::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_dword:14::print_word:73::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_word::w#4 print_char_cursor#12 ] main:2::print_dword:14::print_word:75::print_byte:68 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_word::w#4 print_char_cursor#12 ] main:2::print_word:18::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_word:22::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] main:2::print_dword:14::print_word:73::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_dword::dw#0 print_char_cursor#12 ] main:2::print_dword:14::print_word:75::print_byte:70 [ main::dw#10 print_line_cursor#19 main::dw2#10 print_char_cursor#12 ] )
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
//SEG140 print_char
|
||||
print_char: {
|
||||
@ -4076,4 +4085,5 @@ print_cls: {
|
||||
//SEG183 [82] return [ ] ( main:2::print_cls:5 [ ] )
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
|
||||
|
@ -46,8 +46,6 @@
|
||||
(byte) print_byte::b#4 reg byte x 22.0
|
||||
(byte) print_byte::b#5 reg byte x 22.0
|
||||
(byte) print_byte::b#6 reg byte x 13.0
|
||||
(byte[]) print_byte::hextab
|
||||
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -60,7 +58,7 @@
|
||||
(byte*) print_char_cursor#65 print_char_cursor zp ZP_WORD:8 14.0
|
||||
(byte*) print_char_cursor#67 print_char_cursor zp ZP_WORD:8 16.666666666666664
|
||||
(byte*) print_char_cursor#69 print_char_cursor zp ZP_WORD:8 1.4444444444444446
|
||||
(byte*~) print_char_cursor#71 print_char_cursor zp ZP_WORD:8 22.0
|
||||
(byte*~) print_char_cursor#72 print_char_cursor zp ZP_WORD:8 22.0
|
||||
(void()) print_cls()
|
||||
(label) print_cls::@1
|
||||
(label) print_cls::@return
|
||||
@ -72,6 +70,8 @@
|
||||
(label) print_dword::@return
|
||||
(dword) print_dword::dw
|
||||
(dword) print_dword::dw#0 dw zp ZP_DWORD:12 5.0
|
||||
(byte[]) print_hextab
|
||||
(const string) print_hextab#0 print_hextab = (string) "0123456789abcdef"
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#1 print_line_cursor zp ZP_WORD:6 46.42857142857143
|
||||
(byte*) print_line_cursor#19 print_line_cursor zp ZP_WORD:6 0.3333333333333333
|
||||
@ -94,7 +94,7 @@ zp ZP_DWORD:2 [ main::dw#10 main::dw#1 ]
|
||||
zp ZP_WORD:6 [ print_line_cursor#9 print_line_cursor#19 print_line_cursor#1 print_cls::sc#2 print_cls::sc#1 ]
|
||||
reg byte x [ print_byte::b#6 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#2 print_byte::b#0 print_byte::b#1 ]
|
||||
reg byte a [ print_char::ch#8 print_char::ch#0 print_char::ch#1 ]
|
||||
zp ZP_WORD:8 [ print_char_cursor#44 print_char_cursor#67 print_char_cursor#12 print_char_cursor#65 print_char_cursor#69 print_char_cursor#71 ]
|
||||
zp ZP_WORD:8 [ print_char_cursor#44 print_char_cursor#67 print_char_cursor#12 print_char_cursor#65 print_char_cursor#69 print_char_cursor#72 ]
|
||||
zp ZP_WORD:10 [ print_word::w#4 print_word::w#2 print_word::w#3 print_word::w#0 print_word::w#1 main::$2 main::$32 main::$5 main::$33 main::$15 main::$19 main::$23 main::$27 ]
|
||||
zp ZP_DWORD:12 [ main::dw2#1 main::dw2#10 print_dword::dw#0 ]
|
||||
reg byte a [ print_byte::$0 ]
|
||||
|
@ -243,15 +243,14 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
txa
|
||||
and #$f
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
print_char: {
|
||||
ldy #0
|
||||
@ -815,6 +814,7 @@ print_cls: {
|
||||
bne b1
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
.align $100
|
||||
mulf_sqr1_lo: .fill $200, 0
|
||||
.align $100
|
||||
|
@ -83,7 +83,7 @@ mul16s_compare::@8: scope:[mul16s_compare] from mul16s_compare::@4
|
||||
[42] if((byte) mul16s_compare::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto mul16s_compare::@1 [ mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::i#1 print_line_cursor#1 ] ( main:2::mul16s_compare:11 [ mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::i#1 print_line_cursor#1 ] )
|
||||
to:mul16s_compare::@9
|
||||
mul16s_compare::@9: scope:[mul16s_compare] from mul16s_compare::@8
|
||||
[43] (byte*~) print_char_cursor#157 ← (byte*) print_line_cursor#1 [ print_char_cursor#157 print_line_cursor#1 ] ( main:2::mul16s_compare:11 [ print_char_cursor#157 print_line_cursor#1 ] )
|
||||
[43] (byte*~) print_char_cursor#158 ← (byte*) print_line_cursor#1 [ print_char_cursor#158 print_line_cursor#1 ] ( main:2::mul16s_compare:11 [ print_char_cursor#158 print_line_cursor#1 ] )
|
||||
[44] call print_str param-assignment [ print_line_cursor#1 print_char_cursor#112 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#112 ] )
|
||||
to:mul16s_compare::@13
|
||||
mul16s_compare::@13: scope:[mul16s_compare] from mul16s_compare::@9
|
||||
@ -103,7 +103,7 @@ print_ln::@return: scope:[print_ln] from print_ln::@1
|
||||
[51] return [ print_line_cursor#1 ] ( main:2::mul16s_compare:11::print_ln:46 [ print_line_cursor#1 ] main:2::mul16s_compare:11::mul16s_error:37::print_ln:76 [ print_line_cursor#1 ] main:2::mul16u_compare:9::print_ln:193 [ print_line_cursor#1 ] main:2::mul16u_compare:9::mul16u_error:184::print_ln:211 [ print_line_cursor#1 ] )
|
||||
to:@return
|
||||
print_str: scope:[print_str] from mul16s_compare::@9 mul16s_error mul16s_error::@2 mul16s_error::@4 mul16s_error::@6 mul16u_compare::@9 mul16u_error mul16u_error::@2 mul16u_error::@4 mul16u_error::@6
|
||||
[52] (byte*) print_char_cursor#130 ← phi( mul16s_compare::@9/(byte*~) print_char_cursor#157 mul16s_error/(byte*~) print_char_cursor#158 mul16s_error::@2/(byte*) print_char_cursor#20 mul16s_error::@4/(byte*) print_char_cursor#20 mul16s_error::@6/(byte*) print_char_cursor#20 mul16u_compare::@9/((byte*))(word/signed word/dword/signed dword) 1024 mul16u_error/((byte*))(word/signed word/dword/signed dword) 1024 mul16u_error::@2/(byte*) print_char_cursor#20 mul16u_error::@4/(byte*) print_char_cursor#20 mul16u_error::@6/(byte*) print_char_cursor#20 ) [ print_str::str#13 print_char_cursor#130 ] ( main:2::mul16s_compare:11::print_str:44 [ print_line_cursor#1 print_str::str#13 print_char_cursor#130 ] main:2::mul16s_compare:11::mul16s_error:37::print_str:60 [ mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_str::str#13 print_char_cursor#130 ] main:2::mul16s_compare:11::mul16s_error:37::print_str:64 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_str::str#13 print_char_cursor#130 ] main:2::mul16s_compare:11::mul16s_error:37::print_str:68 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_str::str#13 print_char_cursor#130 ] main:2::mul16s_compare:11::mul16s_error:37::print_str:72 [ mul16s_error::mn#0 print_line_cursor#1 print_str::str#13 print_char_cursor#130 ] main:2::mul16u_compare:9::print_str:191 [ print_str::str#13 print_char_cursor#130 ] main:2::mul16u_compare:9::mul16u_error:184::print_str:195 [ mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_str::str#13 print_char_cursor#130 ] main:2::mul16u_compare:9::mul16u_error:184::print_str:199 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_str::str#13 print_char_cursor#130 ] main:2::mul16u_compare:9::mul16u_error:184::print_str:203 [ mul16u_error::ms#0 mul16u_error::mn#0 print_str::str#13 print_char_cursor#130 ] main:2::mul16u_compare:9::mul16u_error:184::print_str:207 [ mul16u_error::mn#0 print_str::str#13 print_char_cursor#130 ] )
|
||||
[52] (byte*) print_char_cursor#130 ← phi( mul16s_compare::@9/(byte*~) print_char_cursor#158 mul16s_error/(byte*~) print_char_cursor#159 mul16s_error::@2/(byte*) print_char_cursor#20 mul16s_error::@4/(byte*) print_char_cursor#20 mul16s_error::@6/(byte*) print_char_cursor#20 mul16u_compare::@9/((byte*))(word/signed word/dword/signed dword) 1024 mul16u_error/((byte*))(word/signed word/dword/signed dword) 1024 mul16u_error::@2/(byte*) print_char_cursor#20 mul16u_error::@4/(byte*) print_char_cursor#20 mul16u_error::@6/(byte*) print_char_cursor#20 ) [ print_str::str#13 print_char_cursor#130 ] ( main:2::mul16s_compare:11::print_str:44 [ print_line_cursor#1 print_str::str#13 print_char_cursor#130 ] main:2::mul16s_compare:11::mul16s_error:37::print_str:60 [ mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_str::str#13 print_char_cursor#130 ] main:2::mul16s_compare:11::mul16s_error:37::print_str:64 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_str::str#13 print_char_cursor#130 ] main:2::mul16s_compare:11::mul16s_error:37::print_str:68 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_str::str#13 print_char_cursor#130 ] main:2::mul16s_compare:11::mul16s_error:37::print_str:72 [ mul16s_error::mn#0 print_line_cursor#1 print_str::str#13 print_char_cursor#130 ] main:2::mul16u_compare:9::print_str:191 [ print_str::str#13 print_char_cursor#130 ] main:2::mul16u_compare:9::mul16u_error:184::print_str:195 [ mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_str::str#13 print_char_cursor#130 ] main:2::mul16u_compare:9::mul16u_error:184::print_str:199 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_str::str#13 print_char_cursor#130 ] main:2::mul16u_compare:9::mul16u_error:184::print_str:203 [ mul16u_error::ms#0 mul16u_error::mn#0 print_str::str#13 print_char_cursor#130 ] main:2::mul16u_compare:9::mul16u_error:184::print_str:207 [ mul16u_error::mn#0 print_str::str#13 print_char_cursor#130 ] )
|
||||
[52] (byte*) print_str::str#13 ← phi( mul16s_compare::@9/(const string) mul16s_compare::str mul16s_error/(const string) mul16s_error::str mul16s_error::@2/(const string) mul16s_error::str1 mul16s_error::@4/(const string) mul16s_error::str2 mul16s_error::@6/(const string) mul16s_error::str3 mul16u_compare::@9/(const string) mul16u_compare::str mul16u_error/(const string) mul16u_error::str mul16u_error::@2/(const string) mul16u_error::str1 mul16u_error::@4/(const string) mul16u_error::str2 mul16u_error::@6/(const string) mul16u_error::str3 ) [ print_str::str#13 print_char_cursor#130 ] ( main:2::mul16s_compare:11::print_str:44 [ print_line_cursor#1 print_str::str#13 print_char_cursor#130 ] main:2::mul16s_compare:11::mul16s_error:37::print_str:60 [ mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_str::str#13 print_char_cursor#130 ] main:2::mul16s_compare:11::mul16s_error:37::print_str:64 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_str::str#13 print_char_cursor#130 ] main:2::mul16s_compare:11::mul16s_error:37::print_str:68 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_str::str#13 print_char_cursor#130 ] main:2::mul16s_compare:11::mul16s_error:37::print_str:72 [ mul16s_error::mn#0 print_line_cursor#1 print_str::str#13 print_char_cursor#130 ] main:2::mul16u_compare:9::print_str:191 [ print_str::str#13 print_char_cursor#130 ] main:2::mul16u_compare:9::mul16u_error:184::print_str:195 [ mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_str::str#13 print_char_cursor#130 ] main:2::mul16u_compare:9::mul16u_error:184::print_str:199 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_str::str#13 print_char_cursor#130 ] main:2::mul16u_compare:9::mul16u_error:184::print_str:203 [ mul16u_error::ms#0 mul16u_error::mn#0 print_str::str#13 print_char_cursor#130 ] main:2::mul16u_compare:9::mul16u_error:184::print_str:207 [ mul16u_error::mn#0 print_str::str#13 print_char_cursor#130 ] )
|
||||
to:print_str::@1
|
||||
print_str::@1: scope:[print_str] from print_str print_str::@2
|
||||
@ -120,7 +120,7 @@ print_str::@2: scope:[print_str] from print_str::@1
|
||||
[58] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#11 [ print_str::str#0 print_char_cursor#1 ] ( main:2::mul16s_compare:11::print_str:44 [ print_line_cursor#1 print_str::str#0 print_char_cursor#1 ] main:2::mul16s_compare:11::mul16s_error:37::print_str:60 [ mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_str::str#0 print_char_cursor#1 ] main:2::mul16s_compare:11::mul16s_error:37::print_str:64 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_str::str#0 print_char_cursor#1 ] main:2::mul16s_compare:11::mul16s_error:37::print_str:68 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_str::str#0 print_char_cursor#1 ] main:2::mul16s_compare:11::mul16s_error:37::print_str:72 [ mul16s_error::mn#0 print_line_cursor#1 print_str::str#0 print_char_cursor#1 ] main:2::mul16u_compare:9::print_str:191 [ print_str::str#0 print_char_cursor#1 ] main:2::mul16u_compare:9::mul16u_error:184::print_str:195 [ mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_str::str#0 print_char_cursor#1 ] main:2::mul16u_compare:9::mul16u_error:184::print_str:199 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_str::str#0 print_char_cursor#1 ] main:2::mul16u_compare:9::mul16u_error:184::print_str:203 [ mul16u_error::ms#0 mul16u_error::mn#0 print_str::str#0 print_char_cursor#1 ] main:2::mul16u_compare:9::mul16u_error:184::print_str:207 [ mul16u_error::mn#0 print_str::str#0 print_char_cursor#1 ] )
|
||||
to:print_str::@1
|
||||
mul16s_error: scope:[mul16s_error] from mul16s_compare::@6
|
||||
[59] (byte*~) print_char_cursor#158 ← (byte*) print_line_cursor#1 [ mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_char_cursor#158 ] ( main:2::mul16s_compare:11::mul16s_error:37 [ mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_char_cursor#158 ] )
|
||||
[59] (byte*~) print_char_cursor#159 ← (byte*) print_line_cursor#1 [ mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_char_cursor#159 ] ( main:2::mul16s_compare:11::mul16s_error:37 [ mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_char_cursor#159 ] )
|
||||
[60] call print_str param-assignment [ mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_char_cursor#112 ] ( main:2::mul16s_compare:11::mul16s_error:37 [ mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_char_cursor#112 ] )
|
||||
to:mul16s_error::@1
|
||||
mul16s_error::@1: scope:[mul16s_error] from mul16s_error
|
||||
@ -208,12 +208,12 @@ print_byte: scope:[print_byte] from print_word print_word::@1
|
||||
[99] (byte*) print_char_cursor#120 ← phi( print_word/(byte*) print_char_cursor#116 print_word::@1/(byte*) print_char_cursor#20 ) [ print_byte::b#2 print_char_cursor#120 ] ( main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:89::print_byte:95 [ mul16s_error::mn#0 print_line_cursor#1 print_dword::dw#3 print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:89::print_byte:95 [ print_line_cursor#1 print_dword::dw#3 print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:89::print_byte:95 [ mul16u_error::mn#0 print_dword::dw#3 print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:89::print_byte:95 [ print_dword::dw#3 print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:91::print_byte:95 [ mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:91::print_byte:95 [ print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:91::print_byte:95 [ mul16u_error::mn#0 print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:91::print_byte:95 [ print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:62::print_word:118::print_byte:95 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:66::print_word:118::print_byte:95 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:197::print_byte:95 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:201::print_byte:95 [ mul16u_error::ms#0 mul16u_error::mn#0 print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:89::print_byte:97 [ mul16s_error::mn#0 print_line_cursor#1 print_dword::dw#3 print_byte::b#2 print_char_cursor#120 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:89::print_byte:97 [ print_line_cursor#1 print_dword::dw#3 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:89::print_byte:97 [ mul16u_error::mn#0 print_dword::dw#3 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:89::print_byte:97 [ print_dword::dw#3 print_byte::b#2 print_char_cursor#120 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:91::print_byte:97 [ mul16s_error::mn#0 print_line_cursor#1 print_byte::b#2 print_char_cursor#120 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:91::print_byte:97 [ print_line_cursor#1 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:91::print_byte:97 [ mul16u_error::mn#0 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:91::print_byte:97 [ print_byte::b#2 print_char_cursor#120 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:62::print_word:118::print_byte:97 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_byte::b#2 print_char_cursor#120 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:66::print_word:118::print_byte:97 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:197::print_byte:97 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:201::print_byte:97 [ mul16u_error::ms#0 mul16u_error::mn#0 print_byte::b#2 print_char_cursor#120 ] )
|
||||
[99] (byte) print_byte::b#2 ← phi( print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) [ print_byte::b#2 print_char_cursor#120 ] ( main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:89::print_byte:95 [ mul16s_error::mn#0 print_line_cursor#1 print_dword::dw#3 print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:89::print_byte:95 [ print_line_cursor#1 print_dword::dw#3 print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:89::print_byte:95 [ mul16u_error::mn#0 print_dword::dw#3 print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:89::print_byte:95 [ print_dword::dw#3 print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:91::print_byte:95 [ mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:91::print_byte:95 [ print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:91::print_byte:95 [ mul16u_error::mn#0 print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:91::print_byte:95 [ print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:62::print_word:118::print_byte:95 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:66::print_word:118::print_byte:95 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:197::print_byte:95 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:201::print_byte:95 [ mul16u_error::ms#0 mul16u_error::mn#0 print_word::w#5 print_byte::b#2 print_char_cursor#120 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:89::print_byte:97 [ mul16s_error::mn#0 print_line_cursor#1 print_dword::dw#3 print_byte::b#2 print_char_cursor#120 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:89::print_byte:97 [ print_line_cursor#1 print_dword::dw#3 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:89::print_byte:97 [ mul16u_error::mn#0 print_dword::dw#3 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:89::print_byte:97 [ print_dword::dw#3 print_byte::b#2 print_char_cursor#120 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:91::print_byte:97 [ mul16s_error::mn#0 print_line_cursor#1 print_byte::b#2 print_char_cursor#120 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:91::print_byte:97 [ print_line_cursor#1 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:91::print_byte:97 [ mul16u_error::mn#0 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:91::print_byte:97 [ print_byte::b#2 print_char_cursor#120 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:62::print_word:118::print_byte:97 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_byte::b#2 print_char_cursor#120 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:66::print_word:118::print_byte:97 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:197::print_byte:97 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_byte::b#2 print_char_cursor#120 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:201::print_byte:97 [ mul16u_error::ms#0 mul16u_error::mn#0 print_byte::b#2 print_char_cursor#120 ] )
|
||||
[100] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#2 print_char_cursor#120 print_byte::$0 ] ( main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:89::print_byte:95 [ mul16s_error::mn#0 print_line_cursor#1 print_dword::dw#3 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:89::print_byte:95 [ print_line_cursor#1 print_dword::dw#3 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:89::print_byte:95 [ mul16u_error::mn#0 print_dword::dw#3 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:89::print_byte:95 [ print_dword::dw#3 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:91::print_byte:95 [ mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:91::print_byte:95 [ print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:91::print_byte:95 [ mul16u_error::mn#0 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:91::print_byte:95 [ print_word::w#5 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:62::print_word:118::print_byte:95 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:66::print_word:118::print_byte:95 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:197::print_byte:95 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:201::print_byte:95 [ mul16u_error::ms#0 mul16u_error::mn#0 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:89::print_byte:97 [ mul16s_error::mn#0 print_line_cursor#1 print_dword::dw#3 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:89::print_byte:97 [ print_line_cursor#1 print_dword::dw#3 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:89::print_byte:97 [ mul16u_error::mn#0 print_dword::dw#3 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:89::print_byte:97 [ print_dword::dw#3 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:91::print_byte:97 [ mul16s_error::mn#0 print_line_cursor#1 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:91::print_byte:97 [ print_line_cursor#1 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:91::print_byte:97 [ mul16u_error::mn#0 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:91::print_byte:97 [ print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:62::print_word:118::print_byte:97 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:66::print_word:118::print_byte:97 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:197::print_byte:97 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:201::print_byte:97 [ mul16u_error::ms#0 mul16u_error::mn#0 print_byte::b#2 print_char_cursor#120 print_byte::$0 ] )
|
||||
[101] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] ( main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:89::print_byte:95 [ mul16s_error::mn#0 print_line_cursor#1 print_dword::dw#3 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:89::print_byte:95 [ print_line_cursor#1 print_dword::dw#3 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:89::print_byte:95 [ mul16u_error::mn#0 print_dword::dw#3 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:89::print_byte:95 [ print_dword::dw#3 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:91::print_byte:95 [ mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:91::print_byte:95 [ print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:91::print_byte:95 [ mul16u_error::mn#0 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:91::print_byte:95 [ print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:62::print_word:118::print_byte:95 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:66::print_word:118::print_byte:95 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:197::print_byte:95 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:201::print_byte:95 [ mul16u_error::ms#0 mul16u_error::mn#0 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:89::print_byte:97 [ mul16s_error::mn#0 print_line_cursor#1 print_dword::dw#3 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:89::print_byte:97 [ print_line_cursor#1 print_dword::dw#3 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:89::print_byte:97 [ mul16u_error::mn#0 print_dword::dw#3 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:89::print_byte:97 [ print_dword::dw#3 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:91::print_byte:97 [ mul16s_error::mn#0 print_line_cursor#1 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:91::print_byte:97 [ print_line_cursor#1 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:91::print_byte:97 [ mul16u_error::mn#0 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:91::print_byte:97 [ print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:62::print_word:118::print_byte:97 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:66::print_word:118::print_byte:97 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:197::print_byte:97 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:201::print_byte:97 [ mul16u_error::ms#0 mul16u_error::mn#0 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] )
|
||||
[101] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] ( main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:89::print_byte:95 [ mul16s_error::mn#0 print_line_cursor#1 print_dword::dw#3 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:89::print_byte:95 [ print_line_cursor#1 print_dword::dw#3 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:89::print_byte:95 [ mul16u_error::mn#0 print_dword::dw#3 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:89::print_byte:95 [ print_dword::dw#3 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:91::print_byte:95 [ mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:91::print_byte:95 [ print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:91::print_byte:95 [ mul16u_error::mn#0 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:91::print_byte:95 [ print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:62::print_word:118::print_byte:95 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:66::print_word:118::print_byte:95 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:197::print_byte:95 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:201::print_byte:95 [ mul16u_error::ms#0 mul16u_error::mn#0 print_word::w#5 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:89::print_byte:97 [ mul16s_error::mn#0 print_line_cursor#1 print_dword::dw#3 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:89::print_byte:97 [ print_line_cursor#1 print_dword::dw#3 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:89::print_byte:97 [ mul16u_error::mn#0 print_dword::dw#3 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:89::print_byte:97 [ print_dword::dw#3 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:91::print_byte:97 [ mul16s_error::mn#0 print_line_cursor#1 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:91::print_byte:97 [ print_line_cursor#1 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:91::print_byte:97 [ mul16u_error::mn#0 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:91::print_byte:97 [ print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:62::print_word:118::print_byte:97 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:66::print_word:118::print_byte:97 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:197::print_byte:97 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:201::print_byte:97 [ mul16u_error::ms#0 mul16u_error::mn#0 print_byte::b#2 print_char_cursor#120 print_char::ch#2 ] )
|
||||
[102] call print_char param-assignment [ print_char_cursor#20 print_byte::b#2 ] ( main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:89::print_byte:95 [ mul16s_error::mn#0 print_line_cursor#1 print_dword::dw#3 print_word::w#5 print_char_cursor#20 print_byte::b#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:89::print_byte:95 [ print_line_cursor#1 print_dword::dw#3 print_word::w#5 print_char_cursor#20 print_byte::b#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:89::print_byte:95 [ mul16u_error::mn#0 print_dword::dw#3 print_word::w#5 print_char_cursor#20 print_byte::b#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:89::print_byte:95 [ print_dword::dw#3 print_word::w#5 print_char_cursor#20 print_byte::b#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:91::print_byte:95 [ mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_char_cursor#20 print_byte::b#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:91::print_byte:95 [ print_line_cursor#1 print_word::w#5 print_char_cursor#20 print_byte::b#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:91::print_byte:95 [ mul16u_error::mn#0 print_word::w#5 print_char_cursor#20 print_byte::b#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:91::print_byte:95 [ print_word::w#5 print_char_cursor#20 print_byte::b#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:62::print_word:118::print_byte:95 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_char_cursor#20 print_byte::b#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:66::print_word:118::print_byte:95 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_char_cursor#20 print_byte::b#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:197::print_byte:95 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_word::w#5 print_char_cursor#20 print_byte::b#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:201::print_byte:95 [ mul16u_error::ms#0 mul16u_error::mn#0 print_word::w#5 print_char_cursor#20 print_byte::b#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:89::print_byte:97 [ mul16s_error::mn#0 print_line_cursor#1 print_dword::dw#3 print_char_cursor#20 print_byte::b#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:89::print_byte:97 [ print_line_cursor#1 print_dword::dw#3 print_char_cursor#20 print_byte::b#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:89::print_byte:97 [ mul16u_error::mn#0 print_dword::dw#3 print_char_cursor#20 print_byte::b#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:89::print_byte:97 [ print_dword::dw#3 print_char_cursor#20 print_byte::b#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:91::print_byte:97 [ mul16s_error::mn#0 print_line_cursor#1 print_char_cursor#20 print_byte::b#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:91::print_byte:97 [ print_line_cursor#1 print_char_cursor#20 print_byte::b#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:91::print_byte:97 [ mul16u_error::mn#0 print_char_cursor#20 print_byte::b#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:91::print_byte:97 [ print_char_cursor#20 print_byte::b#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:62::print_word:118::print_byte:97 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_char_cursor#20 print_byte::b#2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:66::print_word:118::print_byte:97 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_char_cursor#20 print_byte::b#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:197::print_byte:97 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_char_cursor#20 print_byte::b#2 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:201::print_byte:97 [ mul16u_error::ms#0 mul16u_error::mn#0 print_char_cursor#20 print_byte::b#2 ] )
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
[103] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#20 print_byte::$2 ] ( main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:89::print_byte:95 [ mul16s_error::mn#0 print_line_cursor#1 print_dword::dw#3 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:89::print_byte:95 [ print_line_cursor#1 print_dword::dw#3 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:89::print_byte:95 [ mul16u_error::mn#0 print_dword::dw#3 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:89::print_byte:95 [ print_dword::dw#3 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:91::print_byte:95 [ mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:91::print_byte:95 [ print_line_cursor#1 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:91::print_byte:95 [ mul16u_error::mn#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:91::print_byte:95 [ print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:62::print_word:118::print_byte:95 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:66::print_word:118::print_byte:95 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:197::print_byte:95 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:201::print_byte:95 [ mul16u_error::ms#0 mul16u_error::mn#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:89::print_byte:97 [ mul16s_error::mn#0 print_line_cursor#1 print_dword::dw#3 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:89::print_byte:97 [ print_line_cursor#1 print_dword::dw#3 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:89::print_byte:97 [ mul16u_error::mn#0 print_dword::dw#3 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:89::print_byte:97 [ print_dword::dw#3 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:91::print_byte:97 [ mul16s_error::mn#0 print_line_cursor#1 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:91::print_byte:97 [ print_line_cursor#1 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:91::print_byte:97 [ mul16u_error::mn#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:91::print_byte:97 [ print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:62::print_word:118::print_byte:97 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:66::print_word:118::print_byte:97 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:197::print_byte:97 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:201::print_byte:97 [ mul16u_error::ms#0 mul16u_error::mn#0 print_char_cursor#20 print_byte::$2 ] )
|
||||
[104] (byte) print_char::ch#3 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#20 print_char::ch#3 ] ( main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:89::print_byte:95 [ mul16s_error::mn#0 print_line_cursor#1 print_dword::dw#3 print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:89::print_byte:95 [ print_line_cursor#1 print_dword::dw#3 print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:89::print_byte:95 [ mul16u_error::mn#0 print_dword::dw#3 print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:89::print_byte:95 [ print_dword::dw#3 print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:91::print_byte:95 [ mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:91::print_byte:95 [ print_line_cursor#1 print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:91::print_byte:95 [ mul16u_error::mn#0 print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:91::print_byte:95 [ print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:62::print_word:118::print_byte:95 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:66::print_word:118::print_byte:95 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:197::print_byte:95 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:201::print_byte:95 [ mul16u_error::ms#0 mul16u_error::mn#0 print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:89::print_byte:97 [ mul16s_error::mn#0 print_line_cursor#1 print_dword::dw#3 print_char_cursor#20 print_char::ch#3 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:89::print_byte:97 [ print_line_cursor#1 print_dword::dw#3 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:89::print_byte:97 [ mul16u_error::mn#0 print_dword::dw#3 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:89::print_byte:97 [ print_dword::dw#3 print_char_cursor#20 print_char::ch#3 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:91::print_byte:97 [ mul16s_error::mn#0 print_line_cursor#1 print_char_cursor#20 print_char::ch#3 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:91::print_byte:97 [ print_line_cursor#1 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:91::print_byte:97 [ mul16u_error::mn#0 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:91::print_byte:97 [ print_char_cursor#20 print_char::ch#3 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:62::print_word:118::print_byte:97 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_char_cursor#20 print_char::ch#3 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:66::print_word:118::print_byte:97 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:197::print_byte:97 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:201::print_byte:97 [ mul16u_error::ms#0 mul16u_error::mn#0 print_char_cursor#20 print_char::ch#3 ] )
|
||||
[104] (byte) print_char::ch#3 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#20 print_char::ch#3 ] ( main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:89::print_byte:95 [ mul16s_error::mn#0 print_line_cursor#1 print_dword::dw#3 print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:89::print_byte:95 [ print_line_cursor#1 print_dword::dw#3 print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:89::print_byte:95 [ mul16u_error::mn#0 print_dword::dw#3 print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:89::print_byte:95 [ print_dword::dw#3 print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:91::print_byte:95 [ mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:91::print_byte:95 [ print_line_cursor#1 print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:91::print_byte:95 [ mul16u_error::mn#0 print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:91::print_byte:95 [ print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:62::print_word:118::print_byte:95 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:66::print_word:118::print_byte:95 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:197::print_byte:95 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:201::print_byte:95 [ mul16u_error::ms#0 mul16u_error::mn#0 print_word::w#5 print_char_cursor#20 print_char::ch#3 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:89::print_byte:97 [ mul16s_error::mn#0 print_line_cursor#1 print_dword::dw#3 print_char_cursor#20 print_char::ch#3 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:89::print_byte:97 [ print_line_cursor#1 print_dword::dw#3 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:89::print_byte:97 [ mul16u_error::mn#0 print_dword::dw#3 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:89::print_byte:97 [ print_dword::dw#3 print_char_cursor#20 print_char::ch#3 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:91::print_byte:97 [ mul16s_error::mn#0 print_line_cursor#1 print_char_cursor#20 print_char::ch#3 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:91::print_byte:97 [ print_line_cursor#1 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:91::print_byte:97 [ mul16u_error::mn#0 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:91::print_byte:97 [ print_char_cursor#20 print_char::ch#3 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:62::print_word:118::print_byte:97 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_char_cursor#20 print_char::ch#3 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:66::print_word:118::print_byte:97 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:197::print_byte:97 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_char_cursor#20 print_char::ch#3 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:201::print_byte:97 [ mul16u_error::ms#0 mul16u_error::mn#0 print_char_cursor#20 print_char::ch#3 ] )
|
||||
[105] call print_char param-assignment [ print_char_cursor#20 ] ( main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:89::print_byte:95 [ mul16s_error::mn#0 print_line_cursor#1 print_dword::dw#3 print_word::w#5 print_char_cursor#20 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:89::print_byte:95 [ print_line_cursor#1 print_dword::dw#3 print_word::w#5 print_char_cursor#20 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:89::print_byte:95 [ mul16u_error::mn#0 print_dword::dw#3 print_word::w#5 print_char_cursor#20 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:89::print_byte:95 [ print_dword::dw#3 print_word::w#5 print_char_cursor#20 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:91::print_byte:95 [ mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_char_cursor#20 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:91::print_byte:95 [ print_line_cursor#1 print_word::w#5 print_char_cursor#20 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:91::print_byte:95 [ mul16u_error::mn#0 print_word::w#5 print_char_cursor#20 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:91::print_byte:95 [ print_word::w#5 print_char_cursor#20 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:62::print_word:118::print_byte:95 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_char_cursor#20 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:66::print_word:118::print_byte:95 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_word::w#5 print_char_cursor#20 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:197::print_byte:95 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_word::w#5 print_char_cursor#20 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:201::print_byte:95 [ mul16u_error::ms#0 mul16u_error::mn#0 print_word::w#5 print_char_cursor#20 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:89::print_byte:97 [ mul16s_error::mn#0 print_line_cursor#1 print_dword::dw#3 print_char_cursor#20 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:89::print_byte:97 [ print_line_cursor#1 print_dword::dw#3 print_char_cursor#20 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:89::print_byte:97 [ mul16u_error::mn#0 print_dword::dw#3 print_char_cursor#20 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:89::print_byte:97 [ print_dword::dw#3 print_char_cursor#20 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:70::print_dword:85::print_word:91::print_byte:97 [ mul16s_error::mn#0 print_line_cursor#1 print_char_cursor#20 ] main:2::mul16s_compare:11::mul16s_error:37::print_sdword:74::print_dword:85::print_word:91::print_byte:97 [ print_line_cursor#1 print_char_cursor#20 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:205::print_word:91::print_byte:97 [ mul16u_error::mn#0 print_char_cursor#20 ] main:2::mul16u_compare:9::mul16u_error:184::print_dword:209::print_word:91::print_byte:97 [ print_char_cursor#20 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:62::print_word:118::print_byte:97 [ mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_char_cursor#20 ] main:2::mul16s_compare:11::mul16s_error:37::print_sword:66::print_word:118::print_byte:97 [ mul16s_error::ms#0 mul16s_error::mn#0 print_line_cursor#1 print_char_cursor#20 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:197::print_byte:97 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 print_char_cursor#20 ] main:2::mul16u_compare:9::mul16u_error:184::print_word:201::print_byte:97 [ mul16u_error::ms#0 mul16u_error::mn#0 print_char_cursor#20 ] )
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte::@1
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -272,8 +272,6 @@
|
||||
(byte) print_byte::b#0 reg byte x 4.0
|
||||
(byte) print_byte::b#1 reg byte x 4.0
|
||||
(byte) print_byte::b#2 reg byte x 2.0
|
||||
(byte[]) print_byte::hextab
|
||||
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -290,8 +288,8 @@
|
||||
(byte*) print_char_cursor#118 print_char_cursor zp ZP_WORD:14 3.0
|
||||
(byte*) print_char_cursor#120 print_char_cursor zp ZP_WORD:14 2.0
|
||||
(byte*) print_char_cursor#130 print_char_cursor zp ZP_WORD:14 18.0
|
||||
(byte*~) print_char_cursor#157 print_char_cursor zp ZP_WORD:14 4.0
|
||||
(byte*~) print_char_cursor#158 print_char_cursor zp ZP_WORD:14 4.0
|
||||
(byte*~) print_char_cursor#159 print_char_cursor zp ZP_WORD:14 4.0
|
||||
(byte*) print_char_cursor#20 print_char_cursor zp ZP_WORD:14 0.7179487179487181
|
||||
(byte*) print_char_cursor#76 print_char_cursor zp ZP_WORD:14 6.0
|
||||
(void()) print_cls()
|
||||
@ -308,6 +306,8 @@
|
||||
(dword) print_dword::dw#1 dw zp ZP_DWORD:10 4.0
|
||||
(dword) print_dword::dw#2 dw zp ZP_DWORD:10 4.0
|
||||
(dword) print_dword::dw#3 dw zp ZP_DWORD:10 3.333333333333333
|
||||
(byte[]) print_hextab
|
||||
(const string) print_hextab#0 print_hextab = (string) "0123456789abcdef"
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#1 print_line_cursor zp ZP_WORD:6 0.7068965517241378
|
||||
(byte*) print_line_cursor#20 print_line_cursor zp ZP_WORD:6 24.0
|
||||
@ -367,7 +367,7 @@ zp ZP_WORD:8 [ print_str::str#11 print_str::str#13 print_str::str#0 mul16u::a#3
|
||||
zp ZP_DWORD:10 [ print_sdword::dw#4 print_sdword::dw#3 print_sdword::dw#1 print_sdword::dw#2 print_sdword::dw#0 print_dword::dw#3 print_dword::dw#1 print_dword::dw#2 print_dword::dw#0 mul16s_error::ms#0 mul16s_compare::ms#0 mul16u_compare::ms#0 mul16u_error::ms#0 muls16s::m#5 muls16s::return#0 muls16s::m#3 muls16s::m#1 muls16s::m#2 muls16s::return#2 muls16u::return#0 muls16u::m#3 muls16u::m#1 muls16u::return#2 ]
|
||||
reg byte x [ print_byte::b#2 print_byte::b#0 print_byte::b#1 ]
|
||||
reg byte a [ print_char::ch#4 print_char::ch#2 print_char::ch#3 ]
|
||||
zp ZP_WORD:14 [ print_char_cursor#76 print_char_cursor#120 print_char_cursor#116 print_char_cursor#117 print_char_cursor#118 print_char_cursor#130 print_char_cursor#157 print_char_cursor#158 print_char_cursor#113 print_char_cursor#112 print_char_cursor#20 print_char_cursor#1 print_char_cursor#114 ]
|
||||
zp ZP_WORD:14 [ print_char_cursor#76 print_char_cursor#120 print_char_cursor#116 print_char_cursor#117 print_char_cursor#118 print_char_cursor#130 print_char_cursor#158 print_char_cursor#159 print_char_cursor#113 print_char_cursor#112 print_char_cursor#20 print_char_cursor#1 print_char_cursor#114 ]
|
||||
zp ZP_DWORD:16 [ mul16s::m#4 mul16s::m#5 mul16s::m#1 mul16s::m#0 mul16s::m#2 mul16u::return#2 mul16s::return#0 mul16u::res#2 mul16u::res#6 mul16u::res#1 mul16u::return#3 mul16s::return#2 mul16s_compare::mn#0 mul16s_error::mn#0 mul16u_compare::mn#0 mul16u_error::mn#0 ]
|
||||
zp ZP_WORD:20 [ mul16u::b#2 mul16u::b#3 mul16u::b#1 mul16u_compare::b#2 mul16u_compare::b#5 mul16u_compare::b#1 muls16u::b#0 mul16u_error::b#0 ]
|
||||
zp ZP_DWORD:22 [ mul16u::mb#2 mul16u::mb#0 mul16u::mb#1 ]
|
||||
|
@ -218,15 +218,14 @@ print_byte: {
|
||||
lsr
|
||||
lsr
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
txa
|
||||
and #$f
|
||||
tay
|
||||
lda hextab,y
|
||||
lda print_hextab,y
|
||||
jsr print_char
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
print_char: {
|
||||
ldy #0
|
||||
@ -834,6 +833,7 @@ print_cls: {
|
||||
bne b1
|
||||
rts
|
||||
}
|
||||
print_hextab: .text "0123456789abcdef"
|
||||
.align $100
|
||||
mulf_sqr1_lo: .fill $200, 0
|
||||
.align $100
|
||||
|
@ -97,7 +97,7 @@ mul8s_compare::@10: scope:[mul8s_compare] from mul8s_compare::@5
|
||||
[52] if((signed byte) mul8s_compare::a#1!=-(byte/word/signed word/dword/signed dword) 128) goto mul8s_compare::@1 [ mul8s_compare::a#1 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#1 print_line_cursor#1 ] )
|
||||
to:mul8s_compare::@11
|
||||
mul8s_compare::@11: scope:[mul8s_compare] from mul8s_compare::@10
|
||||
[53] (byte*~) print_char_cursor#188 ← (byte*) print_line_cursor#1 [ print_char_cursor#188 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ print_char_cursor#188 print_line_cursor#1 ] )
|
||||
[53] (byte*~) print_char_cursor#189 ← (byte*) print_line_cursor#1 [ print_char_cursor#189 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ print_char_cursor#189 print_line_cursor#1 ] )
|
||||
[54] call print_str param-assignment [ print_line_cursor#1 print_char_cursor#130 ] ( main:2::mul8s_compare:15 [ print_line_cursor#1 print_char_cursor#130 ] )
|
||||
to:mul8s_compare::@16
|
||||
mul8s_compare::@16: scope:[mul8s_compare] from mul8s_compare::@11
|
||||
@ -120,7 +120,7 @@ print_ln::@return: scope:[print_ln] from print_ln::@1
|
||||
[62] return [ print_line_cursor#1 ] ( main:2::mul8s_compare:15::print_ln:56 [ print_line_cursor#1 ] main:2::mul8s_compare:15::mul8s_error:47::print_ln:91 [ print_line_cursor#1 ] main:2::mul8u_compare:13::print_ln:229 [ print_line_cursor#1 ] main:2::mul8u_compare:13::mul8u_error:220::print_ln:252 [ print_line_cursor#1 ] main:2::mulf_tables_cmp:11::print_ln:280 [ print_line_cursor#1 ] )
|
||||
to:@return
|
||||
print_str: scope:[print_str] from mul8s_compare::@11 mul8s_error mul8s_error::@2 mul8s_error::@4 mul8s_error::@6 mul8s_error::@8 mul8u_compare::@11 mul8u_error mul8u_error::@2 mul8u_error::@4 mul8u_error::@6 mul8u_error::@8 mulf_tables_cmp::@3 mulf_tables_cmp::@5 mulf_tables_cmp::@7
|
||||
[63] (byte*) print_char_cursor#149 ← phi( mul8s_compare::@11/(byte*~) print_char_cursor#188 mul8s_error/(byte*~) print_char_cursor#189 mul8s_error::@2/(byte*) print_char_cursor#17 mul8s_error::@4/(byte*) print_char_cursor#17 mul8s_error::@6/(byte*) print_char_cursor#17 mul8s_error::@8/(byte*) print_char_cursor#17 mul8u_compare::@11/(byte*) print_char_cursor#30 mul8u_error/(byte*) print_char_cursor#30 mul8u_error::@2/(byte*) print_char_cursor#17 mul8u_error::@4/(byte*) print_char_cursor#17 mul8u_error::@6/(byte*) print_char_cursor#17 mul8u_error::@8/(byte*) print_char_cursor#17 mulf_tables_cmp::@3/((byte*))(word/signed word/dword/signed dword) 1024 mulf_tables_cmp::@5/((byte*))(word/signed word/dword/signed dword) 1024 mulf_tables_cmp::@7/(byte*) print_char_cursor#17 ) [ print_str::str#18 print_char_cursor#149 ] ( main:2::mul8s_compare:15::print_str:54 [ print_line_cursor#1 print_str::str#18 print_char_cursor#149 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:71 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_str::str#18 print_char_cursor#149 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:75 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_str::str#18 print_char_cursor#149 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:79 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_str::str#18 print_char_cursor#149 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:83 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_str::str#18 print_char_cursor#149 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:87 [ mul8s_error::mf#0 print_line_cursor#1 print_str::str#18 print_char_cursor#149 ] main:2::mul8u_compare:13::print_str:227 [ print_line_cursor#10 print_str::str#18 print_char_cursor#149 ] main:2::mul8u_compare:13::mul8u_error:220::print_str:232 [ print_line_cursor#10 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_str::str#18 print_char_cursor#149 ] main:2::mul8u_compare:13::mul8u_error:220::print_str:236 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_str::str#18 print_char_cursor#149 ] main:2::mul8u_compare:13::mul8u_error:220::print_str:240 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_str::str#18 print_char_cursor#149 ] main:2::mul8u_compare:13::mul8u_error:220::print_str:244 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_str::str#18 print_char_cursor#149 ] main:2::mul8u_compare:13::mul8u_error:220::print_str:248 [ print_line_cursor#10 mul8u_error::mf#0 print_str::str#18 print_char_cursor#149 ] main:2::mulf_tables_cmp:11::print_str:265 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 print_str::str#18 print_char_cursor#149 ] main:2::mulf_tables_cmp:11::print_str:269 [ mulf_tables_cmp::kc_sqr#2 print_str::str#18 print_char_cursor#149 ] main:2::mulf_tables_cmp:11::print_str:278 [ print_str::str#18 print_char_cursor#149 ] )
|
||||
[63] (byte*) print_char_cursor#149 ← phi( mul8s_compare::@11/(byte*~) print_char_cursor#189 mul8s_error/(byte*~) print_char_cursor#190 mul8s_error::@2/(byte*) print_char_cursor#17 mul8s_error::@4/(byte*) print_char_cursor#17 mul8s_error::@6/(byte*) print_char_cursor#17 mul8s_error::@8/(byte*) print_char_cursor#17 mul8u_compare::@11/(byte*) print_char_cursor#30 mul8u_error/(byte*) print_char_cursor#30 mul8u_error::@2/(byte*) print_char_cursor#17 mul8u_error::@4/(byte*) print_char_cursor#17 mul8u_error::@6/(byte*) print_char_cursor#17 mul8u_error::@8/(byte*) print_char_cursor#17 mulf_tables_cmp::@3/((byte*))(word/signed word/dword/signed dword) 1024 mulf_tables_cmp::@5/((byte*))(word/signed word/dword/signed dword) 1024 mulf_tables_cmp::@7/(byte*) print_char_cursor#17 ) [ print_str::str#18 print_char_cursor#149 ] ( main:2::mul8s_compare:15::print_str:54 [ print_line_cursor#1 print_str::str#18 print_char_cursor#149 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:71 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_str::str#18 print_char_cursor#149 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:75 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_str::str#18 print_char_cursor#149 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:79 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_str::str#18 print_char_cursor#149 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:83 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_str::str#18 print_char_cursor#149 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:87 [ mul8s_error::mf#0 print_line_cursor#1 print_str::str#18 print_char_cursor#149 ] main:2::mul8u_compare:13::print_str:227 [ print_line_cursor#10 print_str::str#18 print_char_cursor#149 ] main:2::mul8u_compare:13::mul8u_error:220::print_str:232 [ print_line_cursor#10 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_str::str#18 print_char_cursor#149 ] main:2::mul8u_compare:13::mul8u_error:220::print_str:236 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_str::str#18 print_char_cursor#149 ] main:2::mul8u_compare:13::mul8u_error:220::print_str:240 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_str::str#18 print_char_cursor#149 ] main:2::mul8u_compare:13::mul8u_error:220::print_str:244 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_str::str#18 print_char_cursor#149 ] main:2::mul8u_compare:13::mul8u_error:220::print_str:248 [ print_line_cursor#10 mul8u_error::mf#0 print_str::str#18 print_char_cursor#149 ] main:2::mulf_tables_cmp:11::print_str:265 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 print_str::str#18 print_char_cursor#149 ] main:2::mulf_tables_cmp:11::print_str:269 [ mulf_tables_cmp::kc_sqr#2 print_str::str#18 print_char_cursor#149 ] main:2::mulf_tables_cmp:11::print_str:278 [ print_str::str#18 print_char_cursor#149 ] )
|
||||
[63] (byte*) print_str::str#18 ← phi( mul8s_compare::@11/(const string) mul8s_compare::str mul8s_error/(const string) mul8s_error::str mul8s_error::@2/(const string) mul8s_error::str1 mul8s_error::@4/(const string) mul8s_error::str2 mul8s_error::@6/(const string) mul8s_error::str3 mul8s_error::@8/(const string) mul8s_error::str4 mul8u_compare::@11/(const string) mul8u_compare::str mul8u_error/(const string) mul8u_error::str mul8u_error::@2/(const string) mul8u_error::str1 mul8u_error::@4/(const string) mul8u_error::str2 mul8u_error::@6/(const string) mul8u_error::str3 mul8u_error::@8/(const string) mul8u_error::str4 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 ) [ print_str::str#18 print_char_cursor#149 ] ( main:2::mul8s_compare:15::print_str:54 [ print_line_cursor#1 print_str::str#18 print_char_cursor#149 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:71 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_str::str#18 print_char_cursor#149 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:75 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_str::str#18 print_char_cursor#149 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:79 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_str::str#18 print_char_cursor#149 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:83 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_str::str#18 print_char_cursor#149 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:87 [ mul8s_error::mf#0 print_line_cursor#1 print_str::str#18 print_char_cursor#149 ] main:2::mul8u_compare:13::print_str:227 [ print_line_cursor#10 print_str::str#18 print_char_cursor#149 ] main:2::mul8u_compare:13::mul8u_error:220::print_str:232 [ print_line_cursor#10 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_str::str#18 print_char_cursor#149 ] main:2::mul8u_compare:13::mul8u_error:220::print_str:236 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_str::str#18 print_char_cursor#149 ] main:2::mul8u_compare:13::mul8u_error:220::print_str:240 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_str::str#18 print_char_cursor#149 ] main:2::mul8u_compare:13::mul8u_error:220::print_str:244 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_str::str#18 print_char_cursor#149 ] main:2::mul8u_compare:13::mul8u_error:220::print_str:248 [ print_line_cursor#10 mul8u_error::mf#0 print_str::str#18 print_char_cursor#149 ] main:2::mulf_tables_cmp:11::print_str:265 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 print_str::str#18 print_char_cursor#149 ] main:2::mulf_tables_cmp:11::print_str:269 [ mulf_tables_cmp::kc_sqr#2 print_str::str#18 print_char_cursor#149 ] main:2::mulf_tables_cmp:11::print_str:278 [ print_str::str#18 print_char_cursor#149 ] )
|
||||
to:print_str::@1
|
||||
print_str::@1: scope:[print_str] from print_str print_str::@2
|
||||
@ -137,7 +137,7 @@ print_str::@2: scope:[print_str] from print_str::@1
|
||||
[69] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#16 [ print_str::str#0 print_char_cursor#1 ] ( main:2::mul8s_compare:15::print_str:54 [ print_line_cursor#1 print_str::str#0 print_char_cursor#1 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:71 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_str::str#0 print_char_cursor#1 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:75 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_str::str#0 print_char_cursor#1 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:79 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_str::str#0 print_char_cursor#1 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:83 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_str::str#0 print_char_cursor#1 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:87 [ mul8s_error::mf#0 print_line_cursor#1 print_str::str#0 print_char_cursor#1 ] main:2::mul8u_compare:13::print_str:227 [ print_line_cursor#10 print_str::str#0 print_char_cursor#1 ] main:2::mul8u_compare:13::mul8u_error:220::print_str:232 [ print_line_cursor#10 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_str::str#0 print_char_cursor#1 ] main:2::mul8u_compare:13::mul8u_error:220::print_str:236 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_str::str#0 print_char_cursor#1 ] main:2::mul8u_compare:13::mul8u_error:220::print_str:240 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_str::str#0 print_char_cursor#1 ] main:2::mul8u_compare:13::mul8u_error:220::print_str:244 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_str::str#0 print_char_cursor#1 ] main:2::mul8u_compare:13::mul8u_error:220::print_str:248 [ print_line_cursor#10 mul8u_error::mf#0 print_str::str#0 print_char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:265 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 print_str::str#0 print_char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:269 [ mulf_tables_cmp::kc_sqr#2 print_str::str#0 print_char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:278 [ print_str::str#0 print_char_cursor#1 ] )
|
||||
to:print_str::@1
|
||||
mul8s_error: scope:[mul8s_error] from mul8s_compare::@8
|
||||
[70] (byte*~) print_char_cursor#189 ← (byte*) print_line_cursor#1 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#189 ] ( main:2::mul8s_compare:15::mul8s_error:47 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#189 ] )
|
||||
[70] (byte*~) print_char_cursor#190 ← (byte*) print_line_cursor#1 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#190 ] ( main:2::mul8s_compare:15::mul8s_error:47 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#190 ] )
|
||||
[71] call print_str param-assignment [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#130 ] ( main:2::mul8s_compare:15::mul8s_error:47 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#130 ] )
|
||||
to:mul8s_error::@1
|
||||
mul8s_error::@1: scope:[mul8s_error] from mul8s_error
|
||||
@ -220,12 +220,12 @@ print_byte: scope:[print_byte] from mul8u_error::@1 mul8u_error::@3 print_sbyte
|
||||
[108] (byte*) print_char_cursor#137 ← phi( mul8u_error::@1/(byte*) print_char_cursor#130 mul8u_error::@3/(byte*) print_char_cursor#130 print_sbyte::@1/(byte*) print_char_cursor#134 print_word/(byte*) print_char_cursor#136 print_word::@1/(byte*) print_char_cursor#17 ) [ print_byte::b#5 print_char_cursor#137 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#137 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#137 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104 [ print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#137 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:242::print_byte:104 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#137 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:246::print_byte:104 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#137 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:250::print_byte:104 [ print_line_cursor#10 print_word::w#6 print_byte::b#5 print_char_cursor#137 ] main:2::mulf_tables_cmp:11::print_word:267::print_byte:104 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 print_char_cursor#137 ] main:2::mulf_tables_cmp:11::print_word:271::print_byte:104 [ print_word::w#6 print_byte::b#5 print_char_cursor#137 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#137 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106 [ mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#137 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106 [ print_line_cursor#1 print_byte::b#5 print_char_cursor#137 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:242::print_byte:106 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#137 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:246::print_byte:106 [ print_line_cursor#10 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#137 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:250::print_byte:106 [ print_line_cursor#10 print_byte::b#5 print_char_cursor#137 ] main:2::mulf_tables_cmp:11::print_word:267::print_byte:106 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 print_char_cursor#137 ] main:2::mulf_tables_cmp:11::print_word:271::print_byte:106 [ print_byte::b#5 print_char_cursor#137 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:127 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#137 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:127 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#137 ] main:2::mul8u_compare:13::mul8u_error:220::print_byte:234 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#137 ] main:2::mul8u_compare:13::mul8u_error:220::print_byte:238 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#137 ] )
|
||||
[108] (byte) print_byte::b#5 ← phi( mul8u_error::@1/(byte) print_byte::b#3 mul8u_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 print_char_cursor#137 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#137 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#137 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104 [ print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#137 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:242::print_byte:104 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#137 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:246::print_byte:104 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#137 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:250::print_byte:104 [ print_line_cursor#10 print_word::w#6 print_byte::b#5 print_char_cursor#137 ] main:2::mulf_tables_cmp:11::print_word:267::print_byte:104 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 print_char_cursor#137 ] main:2::mulf_tables_cmp:11::print_word:271::print_byte:104 [ print_word::w#6 print_byte::b#5 print_char_cursor#137 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#137 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106 [ mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#137 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106 [ print_line_cursor#1 print_byte::b#5 print_char_cursor#137 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:242::print_byte:106 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#137 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:246::print_byte:106 [ print_line_cursor#10 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#137 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:250::print_byte:106 [ print_line_cursor#10 print_byte::b#5 print_char_cursor#137 ] main:2::mulf_tables_cmp:11::print_word:267::print_byte:106 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 print_char_cursor#137 ] main:2::mulf_tables_cmp:11::print_word:271::print_byte:106 [ print_byte::b#5 print_char_cursor#137 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:127 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#137 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:127 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#137 ] main:2::mul8u_compare:13::mul8u_error:220::print_byte:234 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#137 ] main:2::mul8u_compare:13::mul8u_error:220::print_byte:238 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#137 ] )
|
||||
[109] (byte~) print_byte::$0 ← (byte) print_byte::b#5 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#5 print_char_cursor#137 print_byte::$0 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#137 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#137 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104 [ print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#137 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:242::print_byte:104 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#137 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:246::print_byte:104 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#137 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:250::print_byte:104 [ print_line_cursor#10 print_word::w#6 print_byte::b#5 print_char_cursor#137 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:267::print_byte:104 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 print_char_cursor#137 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:271::print_byte:104 [ print_word::w#6 print_byte::b#5 print_char_cursor#137 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#137 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106 [ mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#137 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106 [ print_line_cursor#1 print_byte::b#5 print_char_cursor#137 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:242::print_byte:106 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#137 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:246::print_byte:106 [ print_line_cursor#10 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#137 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:250::print_byte:106 [ print_line_cursor#10 print_byte::b#5 print_char_cursor#137 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:267::print_byte:106 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 print_char_cursor#137 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:271::print_byte:106 [ print_byte::b#5 print_char_cursor#137 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:127 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#137 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:127 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#137 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:220::print_byte:234 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#137 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:220::print_byte:238 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#137 print_byte::$0 ] )
|
||||
[110] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104 [ print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:242::print_byte:104 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:246::print_byte:104 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:250::print_byte:104 [ print_line_cursor#10 print_word::w#6 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:267::print_byte:104 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:271::print_byte:104 [ print_word::w#6 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106 [ mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106 [ print_line_cursor#1 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:242::print_byte:106 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:246::print_byte:106 [ print_line_cursor#10 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:250::print_byte:106 [ print_line_cursor#10 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:267::print_byte:106 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:271::print_byte:106 [ print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:127 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:127 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8u_compare:13::mul8u_error:220::print_byte:234 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8u_compare:13::mul8u_error:220::print_byte:238 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] )
|
||||
[110] (byte) print_char::ch#2 ← *((const string) print_hextab#0 + (byte~) print_byte::$0) [ print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104 [ print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:242::print_byte:104 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:246::print_byte:104 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:250::print_byte:104 [ print_line_cursor#10 print_word::w#6 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:267::print_byte:104 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:271::print_byte:104 [ print_word::w#6 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106 [ mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106 [ print_line_cursor#1 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:242::print_byte:106 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:246::print_byte:106 [ print_line_cursor#10 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:250::print_byte:106 [ print_line_cursor#10 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:267::print_byte:106 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:271::print_byte:106 [ print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:127 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:127 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8u_compare:13::mul8u_error:220::print_byte:234 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] main:2::mul8u_compare:13::mul8u_error:220::print_byte:238 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#137 print_char::ch#2 ] )
|
||||
[111] call print_char param-assignment [ print_char_cursor#17 print_byte::b#5 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#17 print_byte::b#5 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#17 print_byte::b#5 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104 [ print_line_cursor#1 print_word::w#6 print_char_cursor#17 print_byte::b#5 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:242::print_byte:104 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_char_cursor#17 print_byte::b#5 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:246::print_byte:104 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_char_cursor#17 print_byte::b#5 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:250::print_byte:104 [ print_line_cursor#10 print_word::w#6 print_char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:267::print_byte:104 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:271::print_byte:104 [ print_word::w#6 print_char_cursor#17 print_byte::b#5 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#17 print_byte::b#5 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#17 print_byte::b#5 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106 [ print_line_cursor#1 print_char_cursor#17 print_byte::b#5 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:242::print_byte:106 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#17 print_byte::b#5 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:246::print_byte:106 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#17 print_byte::b#5 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:250::print_byte:106 [ print_line_cursor#10 print_char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:267::print_byte:106 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:271::print_byte:106 [ print_char_cursor#17 print_byte::b#5 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:127 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#17 print_byte::b#5 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:127 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#17 print_byte::b#5 ] main:2::mul8u_compare:13::mul8u_error:220::print_byte:234 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#17 print_byte::b#5 ] main:2::mul8u_compare:13::mul8u_error:220::print_byte:238 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#17 print_byte::b#5 ] )
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
[112] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ print_char_cursor#17 print_byte::$2 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#17 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#17 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104 [ print_line_cursor#1 print_word::w#6 print_char_cursor#17 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:242::print_byte:104 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_char_cursor#17 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:246::print_byte:104 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_char_cursor#17 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:250::print_byte:104 [ print_line_cursor#10 print_word::w#6 print_char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:267::print_byte:104 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:271::print_byte:104 [ print_word::w#6 print_char_cursor#17 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#17 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#17 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106 [ print_line_cursor#1 print_char_cursor#17 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:242::print_byte:106 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#17 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:246::print_byte:106 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#17 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:250::print_byte:106 [ print_line_cursor#10 print_char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:267::print_byte:106 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:271::print_byte:106 [ print_char_cursor#17 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:127 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#17 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:127 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#17 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:220::print_byte:234 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#17 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:220::print_byte:238 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#17 print_byte::$2 ] )
|
||||
[113] (byte) print_char::ch#3 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#17 print_char::ch#3 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#17 print_char::ch#3 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#17 print_char::ch#3 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104 [ print_line_cursor#1 print_word::w#6 print_char_cursor#17 print_char::ch#3 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:242::print_byte:104 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_char_cursor#17 print_char::ch#3 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:246::print_byte:104 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_char_cursor#17 print_char::ch#3 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:250::print_byte:104 [ print_line_cursor#10 print_word::w#6 print_char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:267::print_byte:104 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:271::print_byte:104 [ print_word::w#6 print_char_cursor#17 print_char::ch#3 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106 [ print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:242::print_byte:106 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#17 print_char::ch#3 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:246::print_byte:106 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#17 print_char::ch#3 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:250::print_byte:106 [ print_line_cursor#10 print_char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:267::print_byte:106 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:271::print_byte:106 [ print_char_cursor#17 print_char::ch#3 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:127 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:127 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::mul8u_compare:13::mul8u_error:220::print_byte:234 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#17 print_char::ch#3 ] main:2::mul8u_compare:13::mul8u_error:220::print_byte:238 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#17 print_char::ch#3 ] )
|
||||
[113] (byte) print_char::ch#3 ← *((const string) print_hextab#0 + (byte~) print_byte::$2) [ print_char_cursor#17 print_char::ch#3 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#17 print_char::ch#3 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#17 print_char::ch#3 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104 [ print_line_cursor#1 print_word::w#6 print_char_cursor#17 print_char::ch#3 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:242::print_byte:104 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_char_cursor#17 print_char::ch#3 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:246::print_byte:104 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_char_cursor#17 print_char::ch#3 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:250::print_byte:104 [ print_line_cursor#10 print_word::w#6 print_char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:267::print_byte:104 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:271::print_byte:104 [ print_word::w#6 print_char_cursor#17 print_char::ch#3 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106 [ print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:242::print_byte:106 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#17 print_char::ch#3 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:246::print_byte:106 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#17 print_char::ch#3 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:250::print_byte:106 [ print_line_cursor#10 print_char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:267::print_byte:106 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:271::print_byte:106 [ print_char_cursor#17 print_char::ch#3 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:127 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:127 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#17 print_char::ch#3 ] main:2::mul8u_compare:13::mul8u_error:220::print_byte:234 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#17 print_char::ch#3 ] main:2::mul8u_compare:13::mul8u_error:220::print_byte:238 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#17 print_char::ch#3 ] )
|
||||
[114] call print_char param-assignment [ print_char_cursor#17 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#17 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#17 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104 [ print_line_cursor#1 print_word::w#6 print_char_cursor#17 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:242::print_byte:104 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_char_cursor#17 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:246::print_byte:104 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_char_cursor#17 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:250::print_byte:104 [ print_line_cursor#10 print_word::w#6 print_char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:267::print_byte:104 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:271::print_byte:104 [ print_word::w#6 print_char_cursor#17 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#17 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#17 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106 [ print_line_cursor#1 print_char_cursor#17 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:242::print_byte:106 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#17 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:246::print_byte:106 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#17 ] main:2::mul8u_compare:13::mul8u_error:220::print_word:250::print_byte:106 [ print_line_cursor#10 print_char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:267::print_byte:106 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:271::print_byte:106 [ print_char_cursor#17 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:127 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#17 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:127 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#17 ] main:2::mul8u_compare:13::mul8u_error:220::print_byte:234 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#17 ] main:2::mul8u_compare:13::mul8u_error:220::print_byte:238 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#17 ] )
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte::@1
|
||||
@ -545,7 +545,7 @@ mulf_tables_cmp::@8: scope:[mulf_tables_cmp] from mulf_tables_cmp::@7
|
||||
to:mulf_tables_cmp::@return
|
||||
mulf_tables_cmp::@return: scope:[mulf_tables_cmp] from mulf_tables_cmp::@10 mulf_tables_cmp::@8
|
||||
[272] (byte*) print_line_cursor#10 ← phi( mulf_tables_cmp::@10/(byte*) print_line_cursor#1 mulf_tables_cmp::@8/((byte*))(word/signed word/dword/signed dword) 1024 ) [ print_line_cursor#10 print_char_cursor#30 ] ( main:2::mulf_tables_cmp:11 [ print_line_cursor#10 print_char_cursor#30 ] )
|
||||
[272] (byte*) print_char_cursor#30 ← phi( mulf_tables_cmp::@10/(byte*~) print_char_cursor#222 mulf_tables_cmp::@8/(byte*) print_char_cursor#17 ) [ print_line_cursor#10 print_char_cursor#30 ] ( main:2::mulf_tables_cmp:11 [ print_line_cursor#10 print_char_cursor#30 ] )
|
||||
[272] (byte*) print_char_cursor#30 ← phi( mulf_tables_cmp::@10/(byte*~) print_char_cursor#223 mulf_tables_cmp::@8/(byte*) print_char_cursor#17 ) [ print_line_cursor#10 print_char_cursor#30 ] ( main:2::mulf_tables_cmp:11 [ print_line_cursor#10 print_char_cursor#30 ] )
|
||||
[273] return [ print_line_cursor#10 print_char_cursor#30 ] ( main:2::mulf_tables_cmp:11 [ print_line_cursor#10 print_char_cursor#30 ] )
|
||||
to:@return
|
||||
mulf_tables_cmp::@2: scope:[mulf_tables_cmp] from mulf_tables_cmp::@1
|
||||
@ -560,7 +560,7 @@ mulf_tables_cmp::@5: scope:[mulf_tables_cmp] from mulf_tables_cmp::@2
|
||||
mulf_tables_cmp::@10: scope:[mulf_tables_cmp] from mulf_tables_cmp::@5
|
||||
[279] phi() [ print_char_cursor#130 ] ( main:2::mulf_tables_cmp:11 [ print_char_cursor#130 ] )
|
||||
[280] call print_ln param-assignment [ print_line_cursor#1 ] ( main:2::mulf_tables_cmp:11 [ print_line_cursor#1 ] )
|
||||
[281] (byte*~) print_char_cursor#222 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#222 ] ( main:2::mulf_tables_cmp:11 [ print_line_cursor#1 print_char_cursor#222 ] )
|
||||
[281] (byte*~) print_char_cursor#223 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#223 ] ( main:2::mulf_tables_cmp:11 [ print_line_cursor#1 print_char_cursor#223 ] )
|
||||
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!- }
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -354,8 +354,6 @@
|
||||
(byte) print_byte::b#4 reg byte x 4.0
|
||||
(byte) print_byte::b#5 reg byte x 3.5
|
||||
(byte~) print_byte::b#9 reg byte x 4.0
|
||||
(byte[]) print_byte::hextab
|
||||
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
@ -372,9 +370,9 @@
|
||||
(byte*) print_char_cursor#137 print_char_cursor zp ZP_WORD:10 3.9999999999999996
|
||||
(byte*) print_char_cursor#149 print_char_cursor zp ZP_WORD:10 28.0
|
||||
(byte*) print_char_cursor#17 print_char_cursor zp ZP_WORD:10 0.8095238095238098
|
||||
(byte*~) print_char_cursor#188 print_char_cursor zp ZP_WORD:10 4.0
|
||||
(byte*~) print_char_cursor#189 print_char_cursor zp ZP_WORD:10 4.0
|
||||
(byte*~) print_char_cursor#222 print_char_cursor zp ZP_WORD:10 4.0
|
||||
(byte*~) print_char_cursor#190 print_char_cursor zp ZP_WORD:10 4.0
|
||||
(byte*~) print_char_cursor#223 print_char_cursor zp ZP_WORD:10 4.0
|
||||
(byte*) print_char_cursor#30 print_char_cursor zp ZP_WORD:10 0.1951219512195122
|
||||
(byte*) print_char_cursor#82 print_char_cursor zp ZP_WORD:10 6.0
|
||||
(void()) print_cls()
|
||||
@ -383,6 +381,8 @@
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 sc zp ZP_WORD:4 16.5
|
||||
(byte*) print_cls::sc#2 sc zp ZP_WORD:4 16.5
|
||||
(byte[]) print_hextab
|
||||
(const string) print_hextab#0 print_hextab = (string) "0123456789abcdef"
|
||||
(byte*) print_line_cursor
|
||||
(byte*) print_line_cursor#1 print_line_cursor zp ZP_WORD:4 0.6338028169014083
|
||||
(byte*) print_line_cursor#10 print_line_cursor zp ZP_WORD:4 0.09523809523809523
|
||||
@ -443,7 +443,7 @@ zp ZP_WORD:6 [ print_str::str#16 print_str::str#18 print_str::str#0 mul8u::mb#2
|
||||
zp ZP_WORD:8 [ print_sword::w#5 print_sword::w#4 print_sword::w#1 print_sword::w#2 print_sword::w#3 print_sword::w#0 print_word::w#6 print_word::w#3 print_word::w#4 print_word::w#5 print_word::w#11 print_word::w#12 print_word::w#13 mul8s_error::ms#0 mulf_tables_cmp::asm_sqr#2 mulf_tables_cmp::asm_sqr#1 mul8s_compare::ms#0 mul8u_compare::ms#0 mul8u_error::ms#0 muls8s::m#5 muls8s::return#0 muls8s::m#3 muls8s::m#1 muls8s::m#2 muls8s::return#2 muls8u::return#0 muls8u::m#3 muls8u::m#1 muls8u::return#2 mulf_init::sqr#3 mulf_init::sqr#4 mulf_init::sqr#1 mulf_init::sqr#2 ]
|
||||
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_char::ch#4 print_char::ch#2 print_char::ch#3 ]
|
||||
zp ZP_WORD:10 [ print_char_cursor#82 print_char_cursor#137 print_char_cursor#136 print_char_cursor#132 print_char_cursor#149 print_char_cursor#188 print_char_cursor#189 print_char_cursor#131 print_char_cursor#130 print_char_cursor#17 print_char_cursor#30 print_char_cursor#1 print_char_cursor#134 print_char_cursor#222 ]
|
||||
zp ZP_WORD:10 [ print_char_cursor#82 print_char_cursor#137 print_char_cursor#136 print_char_cursor#132 print_char_cursor#149 print_char_cursor#189 print_char_cursor#190 print_char_cursor#131 print_char_cursor#130 print_char_cursor#17 print_char_cursor#30 print_char_cursor#1 print_char_cursor#134 print_char_cursor#223 ]
|
||||
reg byte x [ print_sbyte::b#4 print_sbyte::b#3 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#0 ]
|
||||
zp ZP_WORD:12 [ mul8s::m#4 mul8s::m#5 mul8s::m#1 mul8s::m#0 mul8s::m#2 mul8s::return#2 mul8u::return#2 mul8u::res#2 mul8u::res#6 mul8u::res#1 mul8u::return#3 mul8s_compare::mn#0 mul8s_error::mn#0 mul8u_compare::mn#0 mul8u_error::mn#0 ]
|
||||
reg byte a [ mul8u::b#2 mul8u::b#3 mul8u::b#1 ]
|
||||
|
Loading…
Reference in New Issue
Block a user