mirror of
https://gitlab.com/camelot/kickc.git
synced 2025-04-20 04:37:53 +00:00
Added support for specifying CONIO screen/color address and default text color using a #define. Thanks to @Sepa for contributing the code.
This commit is contained in:
parent
47e2bfbd19
commit
1c941b86a6
@ -1,4 +1,4 @@
|
||||
//KICKC FRAGMENT CACHE 974006396 97400843e
|
||||
//KICKC FRAGMENT CACHE a359b420f a359b6324
|
||||
//FRAGMENT vbuzz=vbuc1
|
||||
ldz #{c1}
|
||||
//FRAGMENT vbuzz_lt_vbuc1_then_la1
|
||||
|
@ -1,4 +1,4 @@
|
||||
//KICKC FRAGMENT CACHE 974006396 97400843e
|
||||
//KICKC FRAGMENT CACHE a359b420f a359b6324
|
||||
//FRAGMENT _deref_pbuc1=vbuc2
|
||||
lda #{c2}
|
||||
sta {c1}
|
||||
@ -1164,261 +1164,11 @@ inc
|
||||
stx {c1}
|
||||
//FRAGMENT _deref_pbuc1=vbuzz
|
||||
stz {c1}
|
||||
//FRAGMENT vbuz1=_deref_pbuc1_plus_1
|
||||
lda {c1}
|
||||
inc
|
||||
sta {z1}
|
||||
//FRAGMENT vbuz1=_stackidxbyte_vbuc1
|
||||
tsx
|
||||
lda STACK_BASE+{c1},x
|
||||
sta {z1}
|
||||
//FRAGMENT pbuz1_derefidx_vbuz2=vbuz3
|
||||
lda {z3}
|
||||
ldz {z2}
|
||||
sta ({z1}),z
|
||||
//FRAGMENT pbuz1_derefidx_vbuz2=vbuc1
|
||||
lda #{c1}
|
||||
ldz {z2}
|
||||
sta ({z1}),z
|
||||
//FRAGMENT vwuz1=_word_vbuz2
|
||||
lda {z2}
|
||||
sta {z1}
|
||||
lda #0
|
||||
sta {z1}+1
|
||||
//FRAGMENT vwuz1=vwuz2_rol_2
|
||||
lda {z2}
|
||||
asl
|
||||
sta {z1}
|
||||
lda {z2}+1
|
||||
rol
|
||||
sta {z1}+1
|
||||
asl {z1}
|
||||
rol {z1}+1
|
||||
//FRAGMENT vwuz1=vwuz2_plus_vwuz3
|
||||
lda {z2}
|
||||
clc
|
||||
adc {z3}
|
||||
sta {z1}
|
||||
lda {z2}+1
|
||||
adc {z3}+1
|
||||
sta {z1}+1
|
||||
//FRAGMENT vwuz1=vwuz2_rol_4
|
||||
lda {z2}
|
||||
asl
|
||||
sta {z1}
|
||||
lda {z2}+1
|
||||
rol
|
||||
sta {z1}+1
|
||||
asl {z1}
|
||||
rol {z1}+1
|
||||
asl {z1}
|
||||
rol {z1}+1
|
||||
asl {z1}
|
||||
rol {z1}+1
|
||||
//FRAGMENT pbuz1=pbuc1_plus_vwuz2
|
||||
lda {z2}
|
||||
clc
|
||||
adc #<{c1}
|
||||
sta {z1}
|
||||
lda {z2}+1
|
||||
adc #>{c1}
|
||||
sta {z1}+1
|
||||
//FRAGMENT pbuz1=pbuz2
|
||||
lda {z2}
|
||||
sta {z1}
|
||||
lda {z2}+1
|
||||
sta {z1}+1
|
||||
//FRAGMENT pbuz1=pbuz1_plus_vbuc1
|
||||
lda #{c1}
|
||||
clc
|
||||
adc {z1}
|
||||
sta {z1}
|
||||
bcc !+
|
||||
inc {z1}+1
|
||||
!:
|
||||
//FRAGMENT 0_neq_vbuz1_then_la1
|
||||
lda {z1}
|
||||
bne {la1}
|
||||
//FRAGMENT _stackpushbyte_=vbuz1
|
||||
lda {z1}
|
||||
pha
|
||||
//FRAGMENT call_vprc1
|
||||
jsr {c1}
|
||||
//FRAGMENT _stackpullbyte_1
|
||||
pla
|
||||
//FRAGMENT pvoz1=pvoc1
|
||||
lda #<{c1}
|
||||
sta {z1}
|
||||
lda #>{c1}
|
||||
sta {z1}+1
|
||||
//FRAGMENT pbuz1=pbuz1_minus_vbuc1
|
||||
sec
|
||||
lda {z1}
|
||||
sbc #{c1}
|
||||
sta {z1}
|
||||
lda {z1}+1
|
||||
sbc #0
|
||||
sta {z1}+1
|
||||
//FRAGMENT pbuz1=pbuz2_plus_vwuc1
|
||||
lda {z2}
|
||||
clc
|
||||
adc #<{c1}
|
||||
sta {z1}
|
||||
lda {z2}+1
|
||||
adc #>{c1}
|
||||
sta {z1}+1
|
||||
//FRAGMENT pbuz1_neq_pbuz2_then_la1
|
||||
lda {z1}+1
|
||||
cmp {z2}+1
|
||||
bne {la1}
|
||||
lda {z1}
|
||||
cmp {z2}
|
||||
bne {la1}
|
||||
//FRAGMENT _deref_pbuz1=_deref_pbuz2
|
||||
ldy #0
|
||||
lda ({z2}),y
|
||||
ldy #0
|
||||
sta ({z1}),y
|
||||
//FRAGMENT pbuz1=pbuz2_plus_vbuc1
|
||||
lda #{c1}
|
||||
clc
|
||||
adc {z2}
|
||||
sta {z1}
|
||||
lda #0
|
||||
adc {z2}+1
|
||||
sta {z1}+1
|
||||
//FRAGMENT _deref_pbuz1=vbuz2
|
||||
lda {z2}
|
||||
ldy #0
|
||||
sta ({z1}),y
|
||||
//FRAGMENT vbuaa=_deref_pbuc1_plus_1
|
||||
lda {c1}
|
||||
inc
|
||||
//FRAGMENT vbuxx=_deref_pbuc1_plus_1
|
||||
ldx {c1}
|
||||
inx
|
||||
//FRAGMENT vbuaa=_stackidxbyte_vbuc1
|
||||
tsx
|
||||
lda STACK_BASE+{c1},x
|
||||
//FRAGMENT vbuxx=_stackidxbyte_vbuc1
|
||||
tsx
|
||||
lda STACK_BASE+{c1},x
|
||||
tax
|
||||
//FRAGMENT vbuyy=_stackidxbyte_vbuc1
|
||||
tsx
|
||||
lda STACK_BASE+{c1},x
|
||||
tay
|
||||
//FRAGMENT vbuzz=_stackidxbyte_vbuc1
|
||||
tsx
|
||||
lda STACK_BASE+{c1},x
|
||||
taz
|
||||
//FRAGMENT pbuz1_derefidx_vbuz2=vbuaa
|
||||
ldz {z2}
|
||||
sta ({z1}),z
|
||||
//FRAGMENT pbuz1_derefidx_vbuz2=vbuxx
|
||||
txa
|
||||
ldz {z2}
|
||||
sta ({z1}),z
|
||||
//FRAGMENT pbuz1_derefidx_vbuz2=vbuyy
|
||||
tya
|
||||
ldz {z2}
|
||||
sta ({z1}),z
|
||||
//FRAGMENT pbuz1_derefidx_vbuz2=vbuzz
|
||||
tza
|
||||
ldz {z2}
|
||||
sta ({z1}),z
|
||||
//FRAGMENT vbuz1=vbuxx
|
||||
stx {z1}
|
||||
//FRAGMENT vwuz1=_word_vbuxx
|
||||
txa
|
||||
sta {z1}
|
||||
lda #0
|
||||
sta {z1}+1
|
||||
//FRAGMENT vwuz1=_word_vbuyy
|
||||
tya
|
||||
sta {z1}
|
||||
lda #0
|
||||
sta {z1}+1
|
||||
//FRAGMENT vwuz1=_word_vbuzz
|
||||
tza
|
||||
sta {z1}
|
||||
lda #0
|
||||
sta {z1}+1
|
||||
//FRAGMENT 0_neq_vbuaa_then_la1
|
||||
cmp #0
|
||||
bne {la1}
|
||||
//FRAGMENT _stackpushbyte_=vbuaa
|
||||
pha
|
||||
//FRAGMENT _deref_pbuz1=vbuxx
|
||||
txa
|
||||
ldy #0
|
||||
sta ({z1}),y
|
||||
//FRAGMENT _deref_pbuz1=vbuyy
|
||||
tya
|
||||
ldy #0
|
||||
sta ({z1}),y
|
||||
//FRAGMENT _deref_pbuz1=vbuzz
|
||||
tza
|
||||
ldy #0
|
||||
sta ({z1}),y
|
||||
//FRAGMENT 0_neq_vbuxx_then_la1
|
||||
cpx #0
|
||||
bne {la1}
|
||||
//FRAGMENT _stackpushbyte_=vbuxx
|
||||
txa
|
||||
pha
|
||||
//FRAGMENT 0_neq_vbuyy_then_la1
|
||||
cpy #0
|
||||
bne {la1}
|
||||
//FRAGMENT _stackpushbyte_=vbuyy
|
||||
tya
|
||||
pha
|
||||
//FRAGMENT 0_neq_vbuzz_then_la1
|
||||
cpz #0
|
||||
bne {la1}
|
||||
//FRAGMENT _stackpushbyte_=vbuzz
|
||||
tza
|
||||
pha
|
||||
//FRAGMENT vbuz1=vbuyy
|
||||
sty {z1}
|
||||
//FRAGMENT vbuz1=vbuzz
|
||||
stz {z1}
|
||||
//FRAGMENT vbuxx=vbuaa
|
||||
tax
|
||||
//FRAGMENT vbuyy=_deref_pbuc1_plus_1
|
||||
ldy {c1}
|
||||
iny
|
||||
//FRAGMENT vbuxx=vbuyy
|
||||
tya
|
||||
tax
|
||||
//FRAGMENT vbuzz=_deref_pbuc1_plus_1
|
||||
lda {c1}
|
||||
inc
|
||||
taz
|
||||
//FRAGMENT vbuxx=vbuzz
|
||||
tza
|
||||
tax
|
||||
//FRAGMENT vwuz1=vwuz2_plus_vwuz1
|
||||
clc
|
||||
lda {z1}
|
||||
adc {z2}
|
||||
sta {z1}
|
||||
lda {z1}+1
|
||||
adc {z2}+1
|
||||
sta {z1}+1
|
||||
//FRAGMENT pbuz1=pbuc1_plus_vwuz1
|
||||
lda {z1}
|
||||
clc
|
||||
adc #<{c1}
|
||||
sta {z1}
|
||||
lda {z1}+1
|
||||
adc #>{c1}
|
||||
sta {z1}+1
|
||||
//FRAGMENT vwuz1=vwuz1_rol_4
|
||||
asw {z1}
|
||||
asw {z1}
|
||||
asw {z1}
|
||||
asw {z1}
|
||||
//FRAGMENT vwuz1=vwuc1
|
||||
lda #<{c1}
|
||||
sta {z1}
|
||||
@ -1437,10 +1187,23 @@ sta {z1}
|
||||
lda {z1}+1
|
||||
adc #>{c1}
|
||||
sta {z1}+1
|
||||
//FRAGMENT pbuz1=pbuz1_plus_vbuc1
|
||||
lda #{c1}
|
||||
clc
|
||||
adc {z1}
|
||||
sta {z1}
|
||||
bcc !+
|
||||
inc {z1}+1
|
||||
!:
|
||||
//FRAGMENT pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuz2
|
||||
ldy {z2}
|
||||
lda ({z3}),y
|
||||
sta ({z1}),y
|
||||
//FRAGMENT vwuz1=_word_vbuz2
|
||||
lda {z2}
|
||||
sta {z1}
|
||||
lda #0
|
||||
sta {z1}+1
|
||||
//FRAGMENT pwuz1=pwuz1_plus_vbuc1
|
||||
lda #{c1}
|
||||
clc
|
||||
@ -1514,6 +1277,21 @@ sta ({z1}),y
|
||||
sta {z1}
|
||||
lda #0
|
||||
sta {z1}+1
|
||||
//FRAGMENT vwuz1=_word_vbuxx
|
||||
txa
|
||||
sta {z1}
|
||||
lda #0
|
||||
sta {z1}+1
|
||||
//FRAGMENT vwuz1=_word_vbuyy
|
||||
tya
|
||||
sta {z1}
|
||||
lda #0
|
||||
sta {z1}+1
|
||||
//FRAGMENT vwuz1=_word_vbuzz
|
||||
tza
|
||||
sta {z1}
|
||||
lda #0
|
||||
sta {z1}+1
|
||||
//FRAGMENT vbuz1=vbuaa_rol_1
|
||||
asl
|
||||
sta {z1}
|
||||
@ -2399,6 +2177,10 @@ ldy {z1}+1
|
||||
//FRAGMENT vbuzz=_byte1_vduz1
|
||||
lda {z1}+1
|
||||
taz
|
||||
//FRAGMENT vbuz1=vbuxx
|
||||
stx {z1}
|
||||
//FRAGMENT vbuz1=vbuyy
|
||||
sty {z1}
|
||||
//FRAGMENT pbuc1_derefidx_vbuyy=vbuaa
|
||||
sta {c1},y
|
||||
//FRAGMENT pbuc1_derefidx_vbuzz=vbuaa
|
||||
@ -2420,6 +2202,10 @@ tza
|
||||
tax
|
||||
tya
|
||||
sta {c1},x
|
||||
//FRAGMENT vbuz1=vbuzz
|
||||
stz {z1}
|
||||
//FRAGMENT vbuxx=vbuaa
|
||||
tax
|
||||
//FRAGMENT vbuyy=vbuaa
|
||||
tay
|
||||
//FRAGMENT vbuzz=vbuaa
|
||||
|
@ -1,4 +1,4 @@
|
||||
//KICKC FRAGMENT CACHE 974006396 97400843e
|
||||
//KICKC FRAGMENT CACHE a359b420f a359b6324
|
||||
//FRAGMENT vbuz1=vbuc1
|
||||
lda #{c1}
|
||||
sta {z1}
|
||||
|
1059
src/main/fragment/cache/fragment-cache-mos6502x.asm
vendored
1059
src/main/fragment/cache/fragment-cache-mos6502x.asm
vendored
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,4 @@
|
||||
//KICKC FRAGMENT CACHE 974006396 97400843e
|
||||
//KICKC FRAGMENT CACHE a359b420f a359b6324
|
||||
//FRAGMENT _deref_pbuc1=_inc__deref_pbuc1
|
||||
inc {c1}
|
||||
//FRAGMENT isr_hardware_all_entry
|
||||
|
@ -1,4 +1,4 @@
|
||||
//KICKC FRAGMENT CACHE 974006396 97400843e
|
||||
//KICKC FRAGMENT CACHE a359b420f a359b6324
|
||||
//FRAGMENT vbuz1=_deref_pbuc1
|
||||
lda {c1}
|
||||
sta {z1}
|
||||
|
@ -7,11 +7,17 @@
|
||||
// The screen height
|
||||
#define CONIO_HEIGHT 25
|
||||
// The text screen address
|
||||
char * const CONIO_SCREEN_TEXT = DEFAULT_SCREEN;
|
||||
#ifndef CONIO_SCREEN_TEXT
|
||||
#define CONIO_SCREEN_TEXT DEFAULT_SCREEN
|
||||
#endif
|
||||
// The color screen address
|
||||
char * const CONIO_SCREEN_COLORS = COLORRAM;
|
||||
#ifndef CONIO_SCREEN_COLORS
|
||||
#define CONIO_SCREEN_COLORS COLORRAM
|
||||
#endif
|
||||
// The default text color
|
||||
const char CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE;
|
||||
#ifndef CONIO_TEXTCOLOR_DEFAULT
|
||||
#define CONIO_TEXTCOLOR_DEFAULT LIGHT_BLUE
|
||||
#endif
|
||||
|
||||
// Use the shared CMB flat memory implementation
|
||||
#include "conio-cbm-shared.c"
|
||||
|
@ -22,9 +22,13 @@
|
||||
char* CONIO_SCREEN_TEXT = DEFAULT_SCREEN;
|
||||
char CONIO_SCREEN_BANK = 0; // Default screen of the CX16 emulator uses memory bank 0 for text.
|
||||
// The default text color
|
||||
const char CONIO_TEXTCOLOR_DEFAULT = WHITE;
|
||||
#ifndef CONIO_TEXTCOLOR_DEFAULT
|
||||
#define CONIO_TEXTCOLOR_DEFAULT WHITE
|
||||
#endif
|
||||
// The default back color
|
||||
const char CONIO_BACKCOLOR_DEFAULT = BLUE;
|
||||
#ifndef CONIO_BACKCOLOR_DEFAULT
|
||||
#define CONIO_BACKCOLOR_DEFAULT BLUE
|
||||
#endif
|
||||
|
||||
|
||||
// This requires the following constants to be defined
|
||||
|
@ -13,11 +13,17 @@
|
||||
// The screen height
|
||||
#define CONIO_HEIGHT 25
|
||||
// The text screen address
|
||||
char * const CONIO_SCREEN_TEXT = DEFAULT_SCREEN;
|
||||
#ifndef CONIO_SCREEN_TEXT
|
||||
#define CONIO_SCREEN_TEXT DEFAULT_SCREEN
|
||||
#endif
|
||||
// The color screen address
|
||||
char * const CONIO_SCREEN_COLORS = COLORRAM;
|
||||
#ifndef CONIO_SCREEN_COLORS
|
||||
#define CONIO_SCREEN_COLORS COLORRAM
|
||||
#endif
|
||||
// The default text color
|
||||
const char CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE;
|
||||
#ifndef CONIO_TEXTCOLOR_DEFAULT
|
||||
#define CONIO_TEXTCOLOR_DEFAULT LIGHT_BLUE
|
||||
#endif
|
||||
|
||||
// Use the shared CBM flat memory implementation
|
||||
#include "conio-cbm-shared.c"
|
||||
|
@ -11,7 +11,9 @@
|
||||
// The number of bytes on the screen
|
||||
#define CONIO_BYTES CONIO_HEIGHT*CONIO_WIDTH
|
||||
// The text screen address
|
||||
char * const CONIO_SCREEN_TEXT = PPU_NAME_TABLE_0;
|
||||
#ifndef CONIO_SCREEN_TEXT
|
||||
#define CONIO_SCREEN_TEXT PPU_NAME_TABLE_0
|
||||
#endif
|
||||
|
||||
// Return true if there's any key pressed, return false if not
|
||||
unsigned char kbhit (void) {
|
||||
|
@ -7,11 +7,17 @@
|
||||
// The screen height
|
||||
#define CONIO_HEIGHT 25
|
||||
// The text screen address
|
||||
char * const CONIO_SCREEN_TEXT = DEFAULT_SCREEN;
|
||||
#ifndef CONIO_SCREEN_TEXT
|
||||
#define CONIO_SCREEN_TEXT DEFAULT_SCREEN
|
||||
#endif
|
||||
// The color screen address
|
||||
char * const CONIO_SCREEN_COLORS = DEFAULT_COLORRAM;
|
||||
#ifndef CONIO_SCREEN_COLORS
|
||||
#define CONIO_SCREEN_COLORS DEFAULT_COLORRAM
|
||||
#endif
|
||||
// The default text color
|
||||
const char CONIO_TEXTCOLOR_DEFAULT = 0;
|
||||
#ifndef CONIO_TEXTCOLOR_DEFAULT
|
||||
#define CONIO_TEXTCOLOR_DEFAULT 0
|
||||
#endif
|
||||
|
||||
// Use the shared CMB flat memory implementation
|
||||
#include "conio-cbm-shared.c"
|
||||
|
@ -7,11 +7,17 @@
|
||||
// The screen height
|
||||
#define CONIO_HEIGHT 23
|
||||
// The text screen address
|
||||
char * const CONIO_SCREEN_TEXT = DEFAULT_SCREEN;
|
||||
#ifndef CONIO_SCREEN_TEXT
|
||||
#define CONIO_SCREEN_TEXT DEFAULT_SCREEN
|
||||
#endif
|
||||
// The color screen address
|
||||
char * const CONIO_SCREEN_COLORS = DEFAULT_COLORRAM;
|
||||
#ifndef CONIO_SCREEN_COLORS
|
||||
#define CONIO_SCREEN_COLORS DEFAULT_COLORRAM
|
||||
#endif
|
||||
// The default text color
|
||||
const char CONIO_TEXTCOLOR_DEFAULT = BLUE;
|
||||
#ifndef CONIO_TEXTCOLOR_DEFAULT
|
||||
#define CONIO_TEXTCOLOR_DEFAULT BLUE
|
||||
#endif
|
||||
|
||||
// Use the shared CMB flat memory implementation
|
||||
#include "conio-cbm-shared.c"
|
||||
|
@ -9,6 +9,11 @@ import java.io.IOException;
|
||||
*/
|
||||
public class TestProgramsThorough extends TestPrograms {
|
||||
|
||||
//@Test
|
||||
//public void testComplexSwinkiblues() throws IOException {
|
||||
// compileAndCompare("complex/swinkiblues/kielbasa.c", log());
|
||||
//}
|
||||
|
||||
@Test
|
||||
public void testCx16VeralibTilemap8bpp8() throws IOException {
|
||||
compileAndCompare("examples/cx16/veralib/tilemap_8bpp_8_x_8.c");
|
||||
|
@ -26,8 +26,8 @@ CONTROL FLOW GRAPH SSA
|
||||
|
||||
void clrscr()
|
||||
clrscr: scope:[clrscr] from main
|
||||
clrscr::line_text#0 = CONIO_SCREEN_TEXT
|
||||
clrscr::line_cols#0 = CONIO_SCREEN_COLORS
|
||||
clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
clrscr::line_cols#0 = COLORRAM
|
||||
clrscr::l#0 = 0
|
||||
to:clrscr::@1
|
||||
clrscr::@1: scope:[clrscr] from clrscr clrscr::@6
|
||||
@ -46,8 +46,8 @@ clrscr::@2: scope:[clrscr] from clrscr::@1
|
||||
clrscr::@3: scope:[clrscr] from clrscr::@1
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
to:clrscr::@return
|
||||
clrscr::@4: scope:[clrscr] from clrscr::@2 clrscr::@5
|
||||
clrscr::l#4 = phi( clrscr::@2/clrscr::l#5, clrscr::@5/clrscr::l#6 )
|
||||
@ -104,9 +104,9 @@ gotoxy::@2: scope:[gotoxy] from gotoxy::@1 gotoxy::@4
|
||||
conio_cursor_y = gotoxy::y#4
|
||||
gotoxy::$7 = (unsigned int)gotoxy::y#4
|
||||
gotoxy::line_offset#0 = gotoxy::$7 * $28
|
||||
gotoxy::$5 = CONIO_SCREEN_TEXT + gotoxy::line_offset#0
|
||||
gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0
|
||||
conio_line_text = gotoxy::$5
|
||||
gotoxy::$6 = CONIO_SCREEN_COLORS + gotoxy::line_offset#0
|
||||
gotoxy::$6 = COLORRAM + gotoxy::line_offset#0
|
||||
conio_line_color = gotoxy::$6
|
||||
to:gotoxy::@return
|
||||
gotoxy::@4: scope:[gotoxy] from gotoxy::@1
|
||||
@ -338,28 +338,28 @@ cscroll::@1: scope:[cscroll] from cscroll
|
||||
if(cscroll::$7) goto cscroll::@3
|
||||
to:cscroll::@2
|
||||
cscroll::@3: scope:[cscroll] from cscroll::@1
|
||||
memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
memcpy::num#0 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#2 = memcpy::return#1
|
||||
to:cscroll::@4
|
||||
cscroll::@4: scope:[cscroll] from cscroll::@3
|
||||
memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
memcpy::destination#1 = (void *)COLORRAM
|
||||
memcpy::source#1 = (void *)COLORRAM+$28
|
||||
memcpy::num#1 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#3 = memcpy::return#1
|
||||
to:cscroll::@5
|
||||
cscroll::@5: scope:[cscroll] from cscroll::@4
|
||||
memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
memset::c#0 = ' '
|
||||
memset::num#0 = $28
|
||||
call memset
|
||||
memset::return#2 = memset::return#1
|
||||
to:cscroll::@6
|
||||
cscroll::@6: scope:[cscroll] from cscroll::@5
|
||||
memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
memset::c#1 = conio_textcolor
|
||||
memset::num#1 = $28
|
||||
call memset
|
||||
@ -1025,9 +1025,9 @@ __start: scope:[__start] from
|
||||
__start::__init1: scope:[__start] from __start
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
conio_textcolor = LIGHT_BLUE
|
||||
conio_scroll_enable = 1
|
||||
call conio_c64_init
|
||||
to:__start::@2
|
||||
@ -1045,9 +1045,6 @@ __start::@return: scope:[__start] from __start::@3
|
||||
SYMBOL TABLE SSA
|
||||
__constant char BINARY = 2
|
||||
__constant char * const COLORRAM = (char *)$d800
|
||||
__constant char * const CONIO_SCREEN_COLORS = COLORRAM
|
||||
__constant char * const CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
__constant const char CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
__constant char DECIMAL = $a
|
||||
__constant char * const DEFAULT_SCREEN = (char *)$400
|
||||
__constant char DIGITS[] = "0123456789abcdef"z
|
||||
@ -1758,15 +1755,15 @@ Adding number conversion cast (unumber) 0 in strlen::$0 = 0 != *strlen::str#2
|
||||
Adding number conversion cast (unumber) 0 in strupr::$1 = 0 != *strupr::src#2
|
||||
Adding number conversion cast (unumber) $19 in cscroll::$0 = conio_cursor_y == $19
|
||||
Adding number conversion cast (unumber) 0 in cscroll::$7 = 0 != conio_scroll_enable
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#0 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#1 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#0 = $28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)COLORRAM+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#1 = $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_text = conio_line_text - $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_color - $28
|
||||
@ -2216,23 +2213,23 @@ Constant right-side identified [114] memcpy::num#0 = (unumber)$19*$28-$28
|
||||
Constant right-side identified [119] memcpy::num#1 = (unumber)$19*$28-$28
|
||||
Constant right-side identified [146] conio_c64_init::line#1 = (unumber)$19-1
|
||||
Successful SSA optimization Pass2ConstantRValueConsolidation
|
||||
Constant clrscr::line_text#0 = CONIO_SCREEN_TEXT
|
||||
Constant clrscr::line_cols#0 = CONIO_SCREEN_COLORS
|
||||
Constant clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
Constant clrscr::line_cols#0 = COLORRAM
|
||||
Constant clrscr::l#0 = 0
|
||||
Constant clrscr::c#0 = 0
|
||||
Constant gotoxy::y#0 = 0
|
||||
Constant gotoxy::x#0 = 0
|
||||
Constant strlen::len#0 = 0
|
||||
Constant memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
Constant memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Constant memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
Constant memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Constant memcpy::num#0 = (unumber)$19*$28-$28
|
||||
Constant memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
Constant memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Constant memcpy::destination#1 = (void *)COLORRAM
|
||||
Constant memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant memcpy::num#1 = (unumber)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)CONIO_SCREEN_TEXT+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant memset::c#0 = ' '
|
||||
Constant memset::num#0 = $28
|
||||
Constant memset::str#1 = (void *)CONIO_SCREEN_COLORS+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant memset::num#1 = $28
|
||||
Constant gotoxy::x#1 = 0
|
||||
Constant gotoxy::y#1 = 0
|
||||
@ -2271,7 +2268,7 @@ Constant printf_sint::format_radix#0 = DECIMAL
|
||||
Constant printf_str::putc#1 = &cputc
|
||||
Constant printf_str::s#2 = test_casting::s
|
||||
Constant main::signed_char_value#0 = -5
|
||||
Constant conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
Constant conio_textcolor = LIGHT_BLUE
|
||||
Constant conio_scroll_enable = 1
|
||||
Successful SSA optimization Pass2ConstantIdentification
|
||||
Constant memset::c#1 = conio_textcolor
|
||||
@ -2592,15 +2589,12 @@ Constant inlined clrscr::l#0 = 0
|
||||
Constant inlined conio_c64_init::line#1 = (char)$19-1
|
||||
Constant inlined memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant inlined utoa::digit#0 = 0
|
||||
Constant inlined CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
Constant inlined printf_str::s#1 = printf_number_buffer::buffer_digits#0
|
||||
Constant inlined main::signed_char_value#0 = -5
|
||||
Constant inlined printf_str::s#2 = test_casting::s
|
||||
Constant inlined utoa::$4 = utoa::max_digits#1-1
|
||||
Constant inlined CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
Constant inlined memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant inlined memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant inlined CONIO_SCREEN_COLORS = COLORRAM
|
||||
Constant inlined clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
Constant inlined utoa::started#1 = 1
|
||||
Constant inlined utoa::started#0 = 0
|
||||
|
@ -375,8 +375,8 @@ uctoa_append::@return: scope:[uctoa_append] from uctoa_append::@3
|
||||
|
||||
void clrscr()
|
||||
clrscr: scope:[clrscr] from main::@3
|
||||
clrscr::line_text#0 = CONIO_SCREEN_TEXT
|
||||
clrscr::line_cols#0 = CONIO_SCREEN_COLORS
|
||||
clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
clrscr::line_cols#0 = COLORRAM
|
||||
clrscr::l#0 = 0
|
||||
to:clrscr::@1
|
||||
clrscr::@1: scope:[clrscr] from clrscr clrscr::@6
|
||||
@ -395,8 +395,8 @@ clrscr::@2: scope:[clrscr] from clrscr::@1
|
||||
clrscr::@3: scope:[clrscr] from clrscr::@1
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
to:clrscr::@return
|
||||
clrscr::@4: scope:[clrscr] from clrscr::@2 clrscr::@5
|
||||
clrscr::l#4 = phi( clrscr::@2/clrscr::l#5, clrscr::@5/clrscr::l#6 )
|
||||
@ -453,9 +453,9 @@ gotoxy::@2: scope:[gotoxy] from gotoxy::@1 gotoxy::@4
|
||||
conio_cursor_y = gotoxy::y#4
|
||||
gotoxy::$7 = (unsigned int)gotoxy::y#4
|
||||
gotoxy::line_offset#0 = gotoxy::$7 * $28
|
||||
gotoxy::$5 = CONIO_SCREEN_TEXT + gotoxy::line_offset#0
|
||||
gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0
|
||||
conio_line_text = gotoxy::$5
|
||||
gotoxy::$6 = CONIO_SCREEN_COLORS + gotoxy::line_offset#0
|
||||
gotoxy::$6 = COLORRAM + gotoxy::line_offset#0
|
||||
conio_line_color = gotoxy::$6
|
||||
to:gotoxy::@return
|
||||
gotoxy::@4: scope:[gotoxy] from gotoxy::@1
|
||||
@ -521,28 +521,28 @@ cscroll::@1: scope:[cscroll] from cscroll
|
||||
if(cscroll::$7) goto cscroll::@3
|
||||
to:cscroll::@2
|
||||
cscroll::@3: scope:[cscroll] from cscroll::@1
|
||||
memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
memcpy::num#0 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#2 = memcpy::return#1
|
||||
to:cscroll::@4
|
||||
cscroll::@4: scope:[cscroll] from cscroll::@3
|
||||
memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
memcpy::destination#1 = (void *)COLORRAM
|
||||
memcpy::source#1 = (void *)COLORRAM+$28
|
||||
memcpy::num#1 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#3 = memcpy::return#1
|
||||
to:cscroll::@5
|
||||
cscroll::@5: scope:[cscroll] from cscroll::@4
|
||||
memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
memset::c#0 = ' '
|
||||
memset::num#0 = $28
|
||||
call memset
|
||||
memset::return#2 = memset::return#1
|
||||
to:cscroll::@6
|
||||
cscroll::@6: scope:[cscroll] from cscroll::@5
|
||||
memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
memset::c#1 = conio_textcolor
|
||||
memset::num#1 = $28
|
||||
call memset
|
||||
@ -1141,9 +1141,9 @@ __start: scope:[__start] from
|
||||
__start::__init1: scope:[__start] from __start
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
conio_textcolor = LIGHT_BLUE
|
||||
conio_scroll_enable = 1
|
||||
call conio_c64_init
|
||||
to:__start::@2
|
||||
@ -1162,9 +1162,6 @@ __start::@return: scope:[__start] from __start::@3
|
||||
SYMBOL TABLE SSA
|
||||
__constant char BINARY = 2
|
||||
__constant char * const COLORRAM = (char *)$d800
|
||||
__constant char * const CONIO_SCREEN_COLORS = COLORRAM
|
||||
__constant char * const CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
__constant const char CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
__constant char DECIMAL = $a
|
||||
__constant char * const DEFAULT_FONT_MIXED = (char *)$1800
|
||||
__constant char * const DEFAULT_SCREEN = (char *)$400
|
||||
@ -1955,15 +1952,15 @@ Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_col
|
||||
Adding number conversion cast (unumber) 0 in conio_cursor_x = 0
|
||||
Adding number conversion cast (unumber) $19 in cscroll::$0 = conio_cursor_y == $19
|
||||
Adding number conversion cast (unumber) 0 in cscroll::$7 = 0 != conio_scroll_enable
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#0 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#1 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#0 = $28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)COLORRAM+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#1 = $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_text = conio_line_text - $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_color - $28
|
||||
@ -2527,22 +2524,22 @@ Constant uctoa::started#0 = 0
|
||||
Constant uctoa::digit#0 = 0
|
||||
Constant uctoa::started#1 = 1
|
||||
Constant uctoa_append::digit#0 = 0
|
||||
Constant clrscr::line_text#0 = CONIO_SCREEN_TEXT
|
||||
Constant clrscr::line_cols#0 = CONIO_SCREEN_COLORS
|
||||
Constant clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
Constant clrscr::line_cols#0 = COLORRAM
|
||||
Constant clrscr::l#0 = 0
|
||||
Constant clrscr::c#0 = 0
|
||||
Constant gotoxy::y#0 = 0
|
||||
Constant gotoxy::x#0 = 0
|
||||
Constant memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
Constant memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Constant memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
Constant memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Constant memcpy::num#0 = (unumber)$19*$28-$28
|
||||
Constant memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
Constant memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Constant memcpy::destination#1 = (void *)COLORRAM
|
||||
Constant memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant memcpy::num#1 = (unumber)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)CONIO_SCREEN_TEXT+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant memset::c#0 = ' '
|
||||
Constant memset::num#0 = $28
|
||||
Constant memset::str#1 = (void *)CONIO_SCREEN_COLORS+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant memset::num#1 = $28
|
||||
Constant gotoxy::x#1 = 0
|
||||
Constant gotoxy::y#1 = 0
|
||||
@ -2576,7 +2573,7 @@ Constant printf_uchar::format_radix#0 = HEXADECIMAL
|
||||
Constant printf_str::putc#3 = &cputc
|
||||
Constant printf_str::s#4 = main::s2
|
||||
Constant petscii_to_screencode::return#7 = $5e
|
||||
Constant conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
Constant conio_textcolor = LIGHT_BLUE
|
||||
Constant conio_scroll_enable = 1
|
||||
Successful SSA optimization Pass2ConstantIdentification
|
||||
Constant memset::c#1 = conio_textcolor
|
||||
@ -2898,7 +2895,6 @@ Constant inlined strlen::len#0 = 0
|
||||
Constant inlined petscii_to_screencode::return#7 = $5e
|
||||
Constant inlined printf_str::s#3 = main::s1
|
||||
Constant inlined printf_str::s#4 = main::s2
|
||||
Constant inlined CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
Constant inlined printf_str::s#1 = printf_number_buffer::buffer_digits#0
|
||||
Constant inlined printf_str::s#2 = main::s
|
||||
Constant inlined printf_number_buffer::padding#2 = 0
|
||||
@ -2928,11 +2924,9 @@ Constant inlined memcpy::destination#1 = (void *)COLORRAM
|
||||
Constant inlined conio_c64_init::line#1 = (char)$19-1
|
||||
Constant inlined memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant inlined printf_number_buffer::format_min_length#0 = printf_uchar::format_min_length#0
|
||||
Constant inlined CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
Constant inlined memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant inlined memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant inlined printf_padding::i#0 = 0
|
||||
Constant inlined CONIO_SCREEN_COLORS = COLORRAM
|
||||
Constant inlined printf_number_buffer::putc#0 = printf_uchar::putc#0
|
||||
Constant inlined uctoa::buffer#5 = (char *)&printf_buffer+OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS
|
||||
Constant inlined memcpy::num#1 = (unsigned int)$19*$28-$28
|
||||
|
@ -125,9 +125,9 @@ gotoxy::@2: scope:[gotoxy] from gotoxy::@1 gotoxy::@4
|
||||
conio_cursor_y = gotoxy::y#4
|
||||
gotoxy::$7 = (unsigned int)gotoxy::y#4
|
||||
gotoxy::line_offset#0 = gotoxy::$7 * $28
|
||||
gotoxy::$5 = CONIO_SCREEN_TEXT + gotoxy::line_offset#0
|
||||
gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0
|
||||
conio_line_text = gotoxy::$5
|
||||
gotoxy::$6 = CONIO_SCREEN_COLORS + gotoxy::line_offset#0
|
||||
gotoxy::$6 = COLORRAM + gotoxy::line_offset#0
|
||||
conio_line_color = gotoxy::$6
|
||||
to:gotoxy::@return
|
||||
gotoxy::@4: scope:[gotoxy] from gotoxy::@1
|
||||
@ -193,28 +193,28 @@ cscroll::@1: scope:[cscroll] from cscroll
|
||||
if(cscroll::$7) goto cscroll::@3
|
||||
to:cscroll::@2
|
||||
cscroll::@3: scope:[cscroll] from cscroll::@1
|
||||
memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
memcpy::num#0 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#2 = memcpy::return#1
|
||||
to:cscroll::@4
|
||||
cscroll::@4: scope:[cscroll] from cscroll::@3
|
||||
memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
memcpy::destination#1 = (void *)COLORRAM
|
||||
memcpy::source#1 = (void *)COLORRAM+$28
|
||||
memcpy::num#1 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#3 = memcpy::return#1
|
||||
to:cscroll::@5
|
||||
cscroll::@5: scope:[cscroll] from cscroll::@4
|
||||
memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
memset::c#0 = ' '
|
||||
memset::num#0 = $28
|
||||
call memset
|
||||
memset::return#2 = memset::return#1
|
||||
to:cscroll::@6
|
||||
cscroll::@6: scope:[cscroll] from cscroll::@5
|
||||
memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
memset::c#1 = conio_textcolor
|
||||
memset::num#1 = $28
|
||||
call memset
|
||||
@ -303,9 +303,9 @@ __start: scope:[__start] from
|
||||
__start::__init1: scope:[__start] from __start
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
conio_textcolor = LIGHT_BLUE
|
||||
conio_scroll_enable = 1
|
||||
call conio_c64_init
|
||||
to:__start::@2
|
||||
@ -322,9 +322,6 @@ __start::@return: scope:[__start] from __start::@3
|
||||
|
||||
SYMBOL TABLE SSA
|
||||
__constant char * const COLORRAM = (char *)$d800
|
||||
__constant char * const CONIO_SCREEN_COLORS = COLORRAM
|
||||
__constant char * const CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
__constant const char CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
__constant char * const DEFAULT_SCREEN = (char *)$400
|
||||
__constant const char LIGHT_BLUE = $e
|
||||
__constant char RADIX::BINARY = 2
|
||||
@ -498,15 +495,15 @@ Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_col
|
||||
Adding number conversion cast (unumber) 0 in conio_cursor_x = 0
|
||||
Adding number conversion cast (unumber) $19 in cscroll::$0 = conio_cursor_y == $19
|
||||
Adding number conversion cast (unumber) 0 in cscroll::$7 = 0 != conio_scroll_enable
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#0 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#1 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#0 = $28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)COLORRAM+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#1 = $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_text = conio_line_text - $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_color - $28
|
||||
@ -652,16 +649,16 @@ Constant right-side identified [98] conio_c64_init::line#1 = (unumber)$19-1
|
||||
Successful SSA optimization Pass2ConstantRValueConsolidation
|
||||
Constant gotoxy::y#0 = 0
|
||||
Constant gotoxy::x#0 = 0
|
||||
Constant memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
Constant memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Constant memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
Constant memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Constant memcpy::num#0 = (unumber)$19*$28-$28
|
||||
Constant memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
Constant memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Constant memcpy::destination#1 = (void *)COLORRAM
|
||||
Constant memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant memcpy::num#1 = (unumber)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)CONIO_SCREEN_TEXT+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant memset::c#0 = ' '
|
||||
Constant memset::num#0 = $28
|
||||
Constant memset::str#1 = (void *)CONIO_SCREEN_COLORS+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant memset::num#1 = $28
|
||||
Constant gotoxy::x#1 = 0
|
||||
Constant gotoxy::y#1 = 0
|
||||
@ -670,7 +667,7 @@ Constant conio_c64_init::line#1 = (unumber)$19-1
|
||||
Constant printf_str::c#0 = 0
|
||||
Constant printf_str::putc#0 = &cputc
|
||||
Constant printf_str::s#1 = main::s
|
||||
Constant conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
Constant conio_textcolor = LIGHT_BLUE
|
||||
Constant conio_scroll_enable = 1
|
||||
Successful SSA optimization Pass2ConstantIdentification
|
||||
Constant memset::c#1 = conio_textcolor
|
||||
@ -745,7 +742,6 @@ Inlining constant with var siblings conio_c64_init::line#1
|
||||
Inlining constant with var siblings printf_str::s#1
|
||||
Constant inlined memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant inlined memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant inlined CONIO_SCREEN_COLORS = COLORRAM
|
||||
Constant inlined conio_textcolor = LIGHT_BLUE
|
||||
Constant inlined memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
Constant inlined memset::num#1 = $28
|
||||
@ -757,11 +753,9 @@ Constant inlined memcpy::num#0 = (unsigned int)$19*$28-$28
|
||||
Constant inlined conio_c64_init::line#1 = (char)$19-1
|
||||
Constant inlined memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant inlined gotoxy::y#0 = 0
|
||||
Constant inlined CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
Constant inlined printf_str::s#1 = main::s
|
||||
Constant inlined memset::c#0 = ' '
|
||||
Constant inlined memset::c#1 = LIGHT_BLUE
|
||||
Constant inlined CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
Successful SSA optimization Pass2ConstantInlining
|
||||
Alias candidate removed (volatile)conio_line_text = gotoxy::$5
|
||||
Alias candidate removed (volatile)conio_line_color = gotoxy::$6
|
||||
|
@ -143,9 +143,9 @@ gotoxy::@2: scope:[gotoxy] from gotoxy::@1 gotoxy::@4
|
||||
conio_cursor_y = gotoxy::y#4
|
||||
gotoxy::$7 = (unsigned int)gotoxy::y#4
|
||||
gotoxy::line_offset#0 = gotoxy::$7 * $50
|
||||
gotoxy::$5 = CONIO_SCREEN_TEXT + gotoxy::line_offset#0
|
||||
gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0
|
||||
conio_line_text = gotoxy::$5
|
||||
gotoxy::$6 = CONIO_SCREEN_COLORS + gotoxy::line_offset#0
|
||||
gotoxy::$6 = COLORRAM + gotoxy::line_offset#0
|
||||
conio_line_color = gotoxy::$6
|
||||
to:gotoxy::@return
|
||||
gotoxy::@4: scope:[gotoxy] from gotoxy::@1
|
||||
@ -232,28 +232,28 @@ cscroll::@1: scope:[cscroll] from cscroll
|
||||
if(cscroll::$7) goto cscroll::@3
|
||||
to:cscroll::@2
|
||||
cscroll::@3: scope:[cscroll] from cscroll::@1
|
||||
memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$50
|
||||
memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
memcpy::source#0 = (void *)DEFAULT_SCREEN+$50
|
||||
memcpy::num#0 = $19*$50-$50
|
||||
call memcpy
|
||||
memcpy::return#2 = memcpy::return#1
|
||||
to:cscroll::@4
|
||||
cscroll::@4: scope:[cscroll] from cscroll::@3
|
||||
memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$50
|
||||
memcpy::destination#1 = (void *)COLORRAM
|
||||
memcpy::source#1 = (void *)COLORRAM+$50
|
||||
memcpy::num#1 = $19*$50-$50
|
||||
call memcpy
|
||||
memcpy::return#3 = memcpy::return#1
|
||||
to:cscroll::@5
|
||||
cscroll::@5: scope:[cscroll] from cscroll::@4
|
||||
memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$50-$50
|
||||
memset::str#0 = (void *)DEFAULT_SCREEN+$19*$50-$50
|
||||
memset::c#0 = ' '
|
||||
memset::num#0 = $50
|
||||
call memset
|
||||
memset::return#2 = memset::return#1
|
||||
to:cscroll::@6
|
||||
cscroll::@6: scope:[cscroll] from cscroll::@5
|
||||
memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$50-$50
|
||||
memset::str#1 = (void *)COLORRAM+$19*$50-$50
|
||||
memset::c#1 = conio_textcolor
|
||||
memset::num#1 = $50
|
||||
call memset
|
||||
@ -356,9 +356,9 @@ __start: scope:[__start] from
|
||||
__start::__init1: scope:[__start] from __start
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
conio_textcolor = LIGHT_BLUE
|
||||
conio_scroll_enable = 1
|
||||
call conio_mega65_init
|
||||
to:__start::@2
|
||||
@ -375,9 +375,6 @@ __start::@return: scope:[__start] from __start::@3
|
||||
|
||||
SYMBOL TABLE SSA
|
||||
__constant char * const COLORRAM = (char *)$d800
|
||||
__constant char * const CONIO_SCREEN_COLORS = COLORRAM
|
||||
__constant char * const CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
__constant const char CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
__constant const char CRAM2K = 1
|
||||
__constant char * const DEFAULT_SCREEN = (char *)$800
|
||||
__constant volatile char * const IO_BANK = (char *)$d030
|
||||
@ -580,15 +577,15 @@ Adding number conversion cast (unumber) $f in memoryRemap::$8 = memoryRemap::$7
|
||||
Adding number conversion cast (unumber) memoryRemap::$8 in memoryRemap::$8 = memoryRemap::$7 & (unumber)$f
|
||||
Adding number conversion cast (unumber) $19 in cscroll::$0 = conio_cursor_y == $19
|
||||
Adding number conversion cast (unumber) 0 in cscroll::$7 = 0 != conio_scroll_enable
|
||||
Adding number conversion cast (unumber) $50 in memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$50
|
||||
Adding number conversion cast (unumber) $50 in memcpy::source#0 = (void *)DEFAULT_SCREEN+$50
|
||||
Adding number conversion cast (unumber) $19*$50-$50 in memcpy::num#0 = $19*$50-$50
|
||||
Adding number conversion cast (unumber) $50 in memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$50
|
||||
Adding number conversion cast (unumber) $50 in memcpy::source#1 = (void *)COLORRAM+$50
|
||||
Adding number conversion cast (unumber) $19*$50-$50 in memcpy::num#1 = $19*$50-$50
|
||||
Adding number conversion cast (unumber) $50 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$50-$50
|
||||
Adding number conversion cast (unumber) $19*$50 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$50-(unumber)$50
|
||||
Adding number conversion cast (unumber) $50 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$50-$50
|
||||
Adding number conversion cast (unumber) $19*$50 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$50-(unumber)$50
|
||||
Adding number conversion cast (unumber) $50 in memset::num#0 = $50
|
||||
Adding number conversion cast (unumber) $50 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$50-$50
|
||||
Adding number conversion cast (unumber) $19*$50 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$50-(unumber)$50
|
||||
Adding number conversion cast (unumber) $50 in memset::str#1 = (void *)COLORRAM+$19*$50-$50
|
||||
Adding number conversion cast (unumber) $19*$50 in memset::str#1 = (void *)COLORRAM+$19*$50-(unumber)$50
|
||||
Adding number conversion cast (unumber) $50 in memset::num#1 = $50
|
||||
Adding number conversion cast (unumber) $50 in conio_line_text = conio_line_text - $50
|
||||
Adding number conversion cast (unumber) $50 in conio_line_color = conio_line_color - $50
|
||||
@ -773,16 +770,16 @@ Constant right-side identified [119] conio_mega65_init::line#1 = (unumber)$19-1
|
||||
Successful SSA optimization Pass2ConstantRValueConsolidation
|
||||
Constant gotoxy::y#0 = 0
|
||||
Constant gotoxy::x#0 = 0
|
||||
Constant memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
Constant memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$50
|
||||
Constant memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
Constant memcpy::source#0 = (void *)DEFAULT_SCREEN+$50
|
||||
Constant memcpy::num#0 = (unumber)$19*$50-$50
|
||||
Constant memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
Constant memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$50
|
||||
Constant memcpy::destination#1 = (void *)COLORRAM
|
||||
Constant memcpy::source#1 = (void *)COLORRAM+$50
|
||||
Constant memcpy::num#1 = (unumber)$19*$50-$50
|
||||
Constant memset::str#0 = (void *)CONIO_SCREEN_TEXT+(unsigned int)$19*$50-$50
|
||||
Constant memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$50-$50
|
||||
Constant memset::c#0 = ' '
|
||||
Constant memset::num#0 = $50
|
||||
Constant memset::str#1 = (void *)CONIO_SCREEN_COLORS+(unsigned int)$19*$50-$50
|
||||
Constant memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$50-$50
|
||||
Constant memset::num#1 = $50
|
||||
Constant gotoxy::x#1 = 0
|
||||
Constant gotoxy::y#1 = 0
|
||||
@ -794,7 +791,7 @@ Constant conio_mega65_init::line#1 = (unumber)$19-1
|
||||
Constant printf_str::c#0 = 0
|
||||
Constant printf_str::putc#0 = &cputc
|
||||
Constant printf_str::s#1 = main::s
|
||||
Constant conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
Constant conio_textcolor = LIGHT_BLUE
|
||||
Constant conio_scroll_enable = 1
|
||||
Successful SSA optimization Pass2ConstantIdentification
|
||||
Constant memset::c#1 = conio_textcolor
|
||||
@ -910,7 +907,6 @@ Inlining constant with var siblings conio_mega65_init::line#1
|
||||
Inlining constant with var siblings printf_str::s#1
|
||||
Constant inlined memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$50-$50
|
||||
Constant inlined memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$50-$50
|
||||
Constant inlined CONIO_SCREEN_COLORS = COLORRAM
|
||||
Constant inlined conio_textcolor = LIGHT_BLUE
|
||||
Constant inlined memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
Constant inlined memset::num#1 = $50
|
||||
@ -923,12 +919,10 @@ Constant inlined memcpy::num#0 = (unsigned int)$19*$50-$50
|
||||
Constant inlined memcpy::source#1 = (void *)COLORRAM+$50
|
||||
Constant inlined gotoxy::y#0 = 0
|
||||
Constant inlined memoryRemap::$3 = 0
|
||||
Constant inlined CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
Constant inlined printf_str::s#1 = main::s
|
||||
Constant inlined memset::c#0 = ' '
|
||||
Constant inlined memset::c#1 = LIGHT_BLUE
|
||||
Constant inlined memoryRemap::$8 = 0
|
||||
Constant inlined CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
Successful SSA optimization Pass2ConstantInlining
|
||||
Alias candidate removed (volatile)conio_line_text = gotoxy::$5
|
||||
Alias candidate removed (volatile)conio_line_color = gotoxy::$6
|
||||
|
@ -127,9 +127,9 @@ gotoxy::@2: scope:[gotoxy] from gotoxy::@1 gotoxy::@4
|
||||
conio_cursor_y = gotoxy::y#4
|
||||
gotoxy::$7 = (unsigned int)gotoxy::y#4
|
||||
gotoxy::line_offset#0 = gotoxy::$7 * $28
|
||||
gotoxy::$5 = CONIO_SCREEN_TEXT + gotoxy::line_offset#0
|
||||
gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0
|
||||
conio_line_text = gotoxy::$5
|
||||
gotoxy::$6 = CONIO_SCREEN_COLORS + gotoxy::line_offset#0
|
||||
gotoxy::$6 = COLORRAM + gotoxy::line_offset#0
|
||||
conio_line_color = gotoxy::$6
|
||||
to:gotoxy::@return
|
||||
gotoxy::@4: scope:[gotoxy] from gotoxy::@1
|
||||
@ -195,28 +195,28 @@ cscroll::@1: scope:[cscroll] from cscroll
|
||||
if(cscroll::$7) goto cscroll::@3
|
||||
to:cscroll::@2
|
||||
cscroll::@3: scope:[cscroll] from cscroll::@1
|
||||
memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
memcpy::num#0 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#2 = memcpy::return#1
|
||||
to:cscroll::@4
|
||||
cscroll::@4: scope:[cscroll] from cscroll::@3
|
||||
memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
memcpy::destination#1 = (void *)COLORRAM
|
||||
memcpy::source#1 = (void *)COLORRAM+$28
|
||||
memcpy::num#1 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#3 = memcpy::return#1
|
||||
to:cscroll::@5
|
||||
cscroll::@5: scope:[cscroll] from cscroll::@4
|
||||
memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
memset::c#0 = ' '
|
||||
memset::num#0 = $28
|
||||
call memset
|
||||
memset::return#2 = memset::return#1
|
||||
to:cscroll::@6
|
||||
cscroll::@6: scope:[cscroll] from cscroll::@5
|
||||
memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
memset::c#1 = conio_textcolor
|
||||
memset::num#1 = $28
|
||||
call memset
|
||||
@ -341,9 +341,9 @@ __start: scope:[__start] from
|
||||
__start::__init1: scope:[__start] from __start
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
conio_textcolor = LIGHT_BLUE
|
||||
conio_scroll_enable = 1
|
||||
call conio_c64_init
|
||||
to:__start::@2
|
||||
@ -360,9 +360,6 @@ __start::@return: scope:[__start] from __start::@3
|
||||
|
||||
SYMBOL TABLE SSA
|
||||
__constant char * const COLORRAM = (char *)$d800
|
||||
__constant char * const CONIO_SCREEN_COLORS = COLORRAM
|
||||
__constant char * const CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
__constant const char CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
__constant char * const DEFAULT_SCREEN = (char *)$400
|
||||
__constant const char LIGHT_BLUE = $e
|
||||
__constant char RADIX::BINARY = 2
|
||||
@ -545,15 +542,15 @@ Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_col
|
||||
Adding number conversion cast (unumber) 0 in conio_cursor_x = 0
|
||||
Adding number conversion cast (unumber) $19 in cscroll::$0 = conio_cursor_y == $19
|
||||
Adding number conversion cast (unumber) 0 in cscroll::$7 = 0 != conio_scroll_enable
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#0 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#1 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#0 = $28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)COLORRAM+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#1 = $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_text = conio_line_text - $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_color - $28
|
||||
@ -697,16 +694,16 @@ Constant right-side identified [98] conio_c64_init::line#1 = (unumber)$19-1
|
||||
Successful SSA optimization Pass2ConstantRValueConsolidation
|
||||
Constant gotoxy::y#0 = 0
|
||||
Constant gotoxy::x#0 = 0
|
||||
Constant memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
Constant memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Constant memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
Constant memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Constant memcpy::num#0 = (unumber)$19*$28-$28
|
||||
Constant memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
Constant memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Constant memcpy::destination#1 = (void *)COLORRAM
|
||||
Constant memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant memcpy::num#1 = (unumber)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)CONIO_SCREEN_TEXT+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant memset::c#0 = ' '
|
||||
Constant memset::num#0 = $28
|
||||
Constant memset::str#1 = (void *)CONIO_SCREEN_COLORS+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant memset::num#1 = $28
|
||||
Constant gotoxy::x#1 = 0
|
||||
Constant gotoxy::y#1 = 0
|
||||
@ -719,7 +716,7 @@ Constant printf_str::putc#1 = &cputc
|
||||
Constant printf_str::s#2 = world::s
|
||||
Constant f1::fn#0 = &hello
|
||||
Constant f1::fn#1 = &world
|
||||
Constant conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
Constant conio_textcolor = LIGHT_BLUE
|
||||
Constant conio_scroll_enable = 1
|
||||
Successful SSA optimization Pass2ConstantIdentification
|
||||
Constant memset::c#1 = conio_textcolor
|
||||
@ -797,7 +794,6 @@ Inlining constant with var siblings f1::fn#1
|
||||
Constant inlined memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant inlined memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant inlined f1::fn#1 = &world
|
||||
Constant inlined CONIO_SCREEN_COLORS = COLORRAM
|
||||
Constant inlined f1::fn#0 = &hello
|
||||
Constant inlined printf_str::putc#0 = &cputc
|
||||
Constant inlined conio_textcolor = LIGHT_BLUE
|
||||
@ -812,12 +808,10 @@ Constant inlined memcpy::num#0 = (unsigned int)$19*$28-$28
|
||||
Constant inlined conio_c64_init::line#1 = (char)$19-1
|
||||
Constant inlined memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant inlined gotoxy::y#0 = 0
|
||||
Constant inlined CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
Constant inlined printf_str::s#1 = hello::s
|
||||
Constant inlined printf_str::s#2 = world::s
|
||||
Constant inlined memset::c#0 = ' '
|
||||
Constant inlined memset::c#1 = LIGHT_BLUE
|
||||
Constant inlined CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
Successful SSA optimization Pass2ConstantInlining
|
||||
Alias candidate removed (volatile)conio_line_text = gotoxy::$5
|
||||
Alias candidate removed (volatile)conio_line_color = gotoxy::$6
|
||||
|
@ -135,8 +135,8 @@ strlen::@return: scope:[strlen] from strlen::@3
|
||||
|
||||
void clrscr()
|
||||
clrscr: scope:[clrscr] from main
|
||||
clrscr::line_text#0 = CONIO_SCREEN_TEXT
|
||||
clrscr::line_cols#0 = CONIO_SCREEN_COLORS
|
||||
clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
clrscr::line_cols#0 = COLORRAM
|
||||
clrscr::l#0 = 0
|
||||
to:clrscr::@1
|
||||
clrscr::@1: scope:[clrscr] from clrscr clrscr::@6
|
||||
@ -155,8 +155,8 @@ clrscr::@2: scope:[clrscr] from clrscr::@1
|
||||
clrscr::@3: scope:[clrscr] from clrscr::@1
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
to:clrscr::@return
|
||||
clrscr::@4: scope:[clrscr] from clrscr::@2 clrscr::@5
|
||||
clrscr::l#4 = phi( clrscr::@2/clrscr::l#5, clrscr::@5/clrscr::l#6 )
|
||||
@ -213,9 +213,9 @@ gotoxy::@2: scope:[gotoxy] from gotoxy::@1 gotoxy::@4
|
||||
conio_cursor_y = gotoxy::y#4
|
||||
gotoxy::$7 = (unsigned int)gotoxy::y#4
|
||||
gotoxy::line_offset#0 = gotoxy::$7 * $28
|
||||
gotoxy::$5 = CONIO_SCREEN_TEXT + gotoxy::line_offset#0
|
||||
gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0
|
||||
conio_line_text = gotoxy::$5
|
||||
gotoxy::$6 = CONIO_SCREEN_COLORS + gotoxy::line_offset#0
|
||||
gotoxy::$6 = COLORRAM + gotoxy::line_offset#0
|
||||
conio_line_color = gotoxy::$6
|
||||
to:gotoxy::@return
|
||||
gotoxy::@4: scope:[gotoxy] from gotoxy::@1
|
||||
@ -281,28 +281,28 @@ cscroll::@1: scope:[cscroll] from cscroll
|
||||
if(cscroll::$7) goto cscroll::@3
|
||||
to:cscroll::@2
|
||||
cscroll::@3: scope:[cscroll] from cscroll::@1
|
||||
memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
memcpy::num#0 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#2 = memcpy::return#1
|
||||
to:cscroll::@4
|
||||
cscroll::@4: scope:[cscroll] from cscroll::@3
|
||||
memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
memcpy::destination#1 = (void *)COLORRAM
|
||||
memcpy::source#1 = (void *)COLORRAM+$28
|
||||
memcpy::num#1 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#3 = memcpy::return#1
|
||||
to:cscroll::@5
|
||||
cscroll::@5: scope:[cscroll] from cscroll::@4
|
||||
memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
memset::c#0 = ' '
|
||||
memset::num#0 = $28
|
||||
call memset
|
||||
memset::return#2 = memset::return#1
|
||||
to:cscroll::@6
|
||||
cscroll::@6: scope:[cscroll] from cscroll::@5
|
||||
memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
memset::c#1 = conio_textcolor
|
||||
memset::num#1 = $28
|
||||
call memset
|
||||
@ -560,9 +560,9 @@ __start: scope:[__start] from
|
||||
__start::__init1: scope:[__start] from __start
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
conio_textcolor = LIGHT_BLUE
|
||||
conio_scroll_enable = 1
|
||||
call conio_c64_init
|
||||
to:__start::@2
|
||||
@ -579,9 +579,6 @@ __start::@return: scope:[__start] from __start::@3
|
||||
|
||||
SYMBOL TABLE SSA
|
||||
__constant char * const COLORRAM = (char *)$d800
|
||||
__constant char * const CONIO_SCREEN_COLORS = COLORRAM
|
||||
__constant char * const CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
__constant const char CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
__constant char * const DEFAULT_SCREEN = (char *)$400
|
||||
__constant const char LIGHT_BLUE = $e
|
||||
__constant char RADIX::BINARY = 2
|
||||
@ -922,15 +919,15 @@ Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_col
|
||||
Adding number conversion cast (unumber) 0 in conio_cursor_x = 0
|
||||
Adding number conversion cast (unumber) $19 in cscroll::$0 = conio_cursor_y == $19
|
||||
Adding number conversion cast (unumber) 0 in cscroll::$7 = 0 != conio_scroll_enable
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#0 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#1 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#0 = $28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)COLORRAM+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#1 = $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_text = conio_line_text - $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_color - $28
|
||||
@ -1190,22 +1187,22 @@ Constant right-side identified [100] memcpy::num#1 = (unumber)$19*$28-$28
|
||||
Constant right-side identified [127] conio_c64_init::line#1 = (unumber)$19-1
|
||||
Successful SSA optimization Pass2ConstantRValueConsolidation
|
||||
Constant strlen::len#0 = 0
|
||||
Constant clrscr::line_text#0 = CONIO_SCREEN_TEXT
|
||||
Constant clrscr::line_cols#0 = CONIO_SCREEN_COLORS
|
||||
Constant clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
Constant clrscr::line_cols#0 = COLORRAM
|
||||
Constant clrscr::l#0 = 0
|
||||
Constant clrscr::c#0 = 0
|
||||
Constant gotoxy::y#0 = 0
|
||||
Constant gotoxy::x#0 = 0
|
||||
Constant memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
Constant memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Constant memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
Constant memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Constant memcpy::num#0 = (unumber)$19*$28-$28
|
||||
Constant memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
Constant memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Constant memcpy::destination#1 = (void *)COLORRAM
|
||||
Constant memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant memcpy::num#1 = (unumber)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)CONIO_SCREEN_TEXT+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant memset::c#0 = ' '
|
||||
Constant memset::num#0 = $28
|
||||
Constant memset::str#1 = (void *)CONIO_SCREEN_COLORS+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant memset::num#1 = $28
|
||||
Constant gotoxy::x#1 = 0
|
||||
Constant gotoxy::y#1 = 0
|
||||
@ -1233,7 +1230,7 @@ Constant printf_string::putc#3 = &cputc
|
||||
Constant printf_string::str#3 = main::str3
|
||||
Constant printf_string::format_min_length#3 = $a
|
||||
Constant printf_string::format_justify_left#3 = 1
|
||||
Constant conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
Constant conio_textcolor = LIGHT_BLUE
|
||||
Constant conio_scroll_enable = 1
|
||||
Successful SSA optimization Pass2ConstantIdentification
|
||||
Constant memset::c#1 = conio_textcolor
|
||||
@ -1365,21 +1362,18 @@ Constant inlined printf_string::format_min_length#2 = $a
|
||||
Constant inlined conio_c64_init::line#1 = (char)$19-1
|
||||
Constant inlined memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant inlined printf_string::str#0 = main::str
|
||||
Constant inlined CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
Constant inlined printf_string::str#3 = main::str1
|
||||
Constant inlined printf_string::str#2 = main::str
|
||||
Constant inlined printf_string::str#1 = main::str1
|
||||
Constant inlined printf_string::putc#1 = &cputc
|
||||
Constant inlined printf_string::putc#0 = &cputc
|
||||
Constant inlined printf_string::putc#3 = &cputc
|
||||
Constant inlined CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
Constant inlined printf_string::putc#2 = &cputc
|
||||
Constant inlined memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant inlined printf_padding::pad#0 = ' '
|
||||
Constant inlined memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant inlined printf_padding::i#0 = 0
|
||||
Constant inlined printf_padding::pad#1 = ' '
|
||||
Constant inlined CONIO_SCREEN_COLORS = COLORRAM
|
||||
Constant inlined clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
Constant inlined memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Constant inlined memcpy::num#1 = (unsigned int)$19*$28-$28
|
||||
|
@ -778,8 +778,8 @@ ultoa_append::@return: scope:[ultoa_append] from ultoa_append::@3
|
||||
|
||||
void clrscr()
|
||||
clrscr: scope:[clrscr] from main
|
||||
clrscr::line_text#0 = CONIO_SCREEN_TEXT
|
||||
clrscr::line_cols#0 = CONIO_SCREEN_COLORS
|
||||
clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
clrscr::line_cols#0 = COLORRAM
|
||||
clrscr::l#0 = 0
|
||||
to:clrscr::@1
|
||||
clrscr::@1: scope:[clrscr] from clrscr clrscr::@6
|
||||
@ -798,8 +798,8 @@ clrscr::@2: scope:[clrscr] from clrscr::@1
|
||||
clrscr::@3: scope:[clrscr] from clrscr::@1
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
to:clrscr::@return
|
||||
clrscr::@4: scope:[clrscr] from clrscr::@2 clrscr::@5
|
||||
clrscr::l#4 = phi( clrscr::@2/clrscr::l#5, clrscr::@5/clrscr::l#6 )
|
||||
@ -856,9 +856,9 @@ gotoxy::@2: scope:[gotoxy] from gotoxy::@1 gotoxy::@4
|
||||
conio_cursor_y = gotoxy::y#4
|
||||
gotoxy::$7 = (unsigned int)gotoxy::y#4
|
||||
gotoxy::line_offset#0 = gotoxy::$7 * $28
|
||||
gotoxy::$5 = CONIO_SCREEN_TEXT + gotoxy::line_offset#0
|
||||
gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0
|
||||
conio_line_text = gotoxy::$5
|
||||
gotoxy::$6 = CONIO_SCREEN_COLORS + gotoxy::line_offset#0
|
||||
gotoxy::$6 = COLORRAM + gotoxy::line_offset#0
|
||||
conio_line_color = gotoxy::$6
|
||||
to:gotoxy::@return
|
||||
gotoxy::@4: scope:[gotoxy] from gotoxy::@1
|
||||
@ -924,28 +924,28 @@ cscroll::@1: scope:[cscroll] from cscroll
|
||||
if(cscroll::$7) goto cscroll::@3
|
||||
to:cscroll::@2
|
||||
cscroll::@3: scope:[cscroll] from cscroll::@1
|
||||
memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
memcpy::num#0 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#2 = memcpy::return#1
|
||||
to:cscroll::@4
|
||||
cscroll::@4: scope:[cscroll] from cscroll::@3
|
||||
memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
memcpy::destination#1 = (void *)COLORRAM
|
||||
memcpy::source#1 = (void *)COLORRAM+$28
|
||||
memcpy::num#1 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#3 = memcpy::return#1
|
||||
to:cscroll::@5
|
||||
cscroll::@5: scope:[cscroll] from cscroll::@4
|
||||
memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
memset::c#0 = ' '
|
||||
memset::num#0 = $28
|
||||
call memset
|
||||
memset::return#2 = memset::return#1
|
||||
to:cscroll::@6
|
||||
cscroll::@6: scope:[cscroll] from cscroll::@5
|
||||
memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
memset::c#1 = conio_textcolor
|
||||
memset::num#1 = $28
|
||||
call memset
|
||||
@ -1977,9 +1977,9 @@ __start: scope:[__start] from
|
||||
__start::__init1: scope:[__start] from __start
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
conio_textcolor = LIGHT_BLUE
|
||||
conio_scroll_enable = 1
|
||||
call conio_c64_init
|
||||
to:__start::@2
|
||||
@ -1997,9 +1997,6 @@ __start::@return: scope:[__start] from __start::@3
|
||||
SYMBOL TABLE SSA
|
||||
__constant char BINARY = 2
|
||||
__constant char * const COLORRAM = (char *)$d800
|
||||
__constant char * const CONIO_SCREEN_COLORS = COLORRAM
|
||||
__constant char * const CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
__constant const char CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
__constant char DECIMAL = $a
|
||||
__constant char * const DEFAULT_SCREEN = (char *)$400
|
||||
__constant char DIGITS[] = "0123456789abcdef"z
|
||||
@ -3453,15 +3450,15 @@ Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_col
|
||||
Adding number conversion cast (unumber) 0 in conio_cursor_x = 0
|
||||
Adding number conversion cast (unumber) $19 in cscroll::$0 = conio_cursor_y == $19
|
||||
Adding number conversion cast (unumber) 0 in cscroll::$7 = 0 != conio_scroll_enable
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#0 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#1 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#0 = $28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)COLORRAM+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#1 = $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_text = conio_line_text - $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_color - $28
|
||||
@ -4310,22 +4307,22 @@ Constant uctoa::started#1 = 1
|
||||
Constant uctoa_append::digit#0 = 0
|
||||
Constant utoa_append::digit#0 = 0
|
||||
Constant ultoa_append::digit#0 = 0
|
||||
Constant clrscr::line_text#0 = CONIO_SCREEN_TEXT
|
||||
Constant clrscr::line_cols#0 = CONIO_SCREEN_COLORS
|
||||
Constant clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
Constant clrscr::line_cols#0 = COLORRAM
|
||||
Constant clrscr::l#0 = 0
|
||||
Constant clrscr::c#0 = 0
|
||||
Constant gotoxy::y#0 = 0
|
||||
Constant gotoxy::x#0 = 0
|
||||
Constant memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
Constant memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Constant memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
Constant memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Constant memcpy::num#0 = (unumber)$19*$28-$28
|
||||
Constant memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
Constant memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Constant memcpy::destination#1 = (void *)COLORRAM
|
||||
Constant memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant memcpy::num#1 = (unumber)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)CONIO_SCREEN_TEXT+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant memset::c#0 = ' '
|
||||
Constant memset::num#0 = $28
|
||||
Constant memset::str#1 = (void *)CONIO_SCREEN_COLORS+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant memset::num#1 = $28
|
||||
Constant gotoxy::x#1 = 0
|
||||
Constant gotoxy::y#1 = 0
|
||||
@ -4448,7 +4445,7 @@ Constant printf_ulong::format_upper_case#0 = 0
|
||||
Constant printf_ulong::format_radix#0 = DECIMAL
|
||||
Constant printf_str::putc#18 = &cputc
|
||||
Constant printf_str::s#19 = main::s17
|
||||
Constant conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
Constant conio_textcolor = LIGHT_BLUE
|
||||
Constant conio_scroll_enable = 1
|
||||
Successful SSA optimization Pass2ConstantIdentification
|
||||
Constant memset::c#1 = conio_textcolor
|
||||
@ -4883,7 +4880,6 @@ Constant inlined printf_str::s#5 = main::s1
|
||||
Constant inlined printf_str::s#6 = main::s4
|
||||
Constant inlined printf_str::s#3 = main::s1
|
||||
Constant inlined printf_str::s#4 = main::s2
|
||||
Constant inlined CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
Constant inlined printf_str::s#2 = main::s
|
||||
Constant inlined uctoa::digit#0 = 0
|
||||
Constant inlined clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
@ -4922,7 +4918,6 @@ Constant inlined printf_number_buffer::format_min_length#1 = printf_ulong::forma
|
||||
Constant inlined uctoa::max_digits#2 = 2
|
||||
Constant inlined printf_uint::format_upper_case#0 = 0
|
||||
Constant inlined printf_number_buffer::format_min_length#2 = printf_sint::format_min_length#0
|
||||
Constant inlined CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
Constant inlined uctoa::max_digits#4 = 8
|
||||
Constant inlined printf_padding::pad#0 = ' '
|
||||
Constant inlined printf_padding::i#0 = 0
|
||||
@ -5025,7 +5020,6 @@ Constant inlined printf_number_buffer::format_zero_padding#4 = printf_schar::for
|
||||
Constant inlined memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant inlined printf_number_buffer::format_zero_padding#1 = printf_ulong::format_zero_padding#0
|
||||
Constant inlined memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant inlined CONIO_SCREEN_COLORS = COLORRAM
|
||||
Constant inlined printf_number_buffer::format_zero_padding#2 = printf_sint::format_zero_padding#0
|
||||
Constant inlined printf_uint::$1 = '+'
|
||||
Constant inlined printf_schar::value#1 = main::sc
|
||||
|
@ -368,8 +368,8 @@ uctoa_append::@return: scope:[uctoa_append] from uctoa_append::@3
|
||||
|
||||
void clrscr()
|
||||
clrscr: scope:[clrscr] from main
|
||||
clrscr::line_text#0 = CONIO_SCREEN_TEXT
|
||||
clrscr::line_cols#0 = CONIO_SCREEN_COLORS
|
||||
clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
clrscr::line_cols#0 = COLORRAM
|
||||
clrscr::l#0 = 0
|
||||
to:clrscr::@1
|
||||
clrscr::@1: scope:[clrscr] from clrscr clrscr::@6
|
||||
@ -388,8 +388,8 @@ clrscr::@2: scope:[clrscr] from clrscr::@1
|
||||
clrscr::@3: scope:[clrscr] from clrscr::@1
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
to:clrscr::@return
|
||||
clrscr::@4: scope:[clrscr] from clrscr::@2 clrscr::@5
|
||||
clrscr::l#4 = phi( clrscr::@2/clrscr::l#5, clrscr::@5/clrscr::l#6 )
|
||||
@ -446,9 +446,9 @@ gotoxy::@2: scope:[gotoxy] from gotoxy::@1 gotoxy::@4
|
||||
conio_cursor_y = gotoxy::y#4
|
||||
gotoxy::$7 = (unsigned int)gotoxy::y#4
|
||||
gotoxy::line_offset#0 = gotoxy::$7 * $28
|
||||
gotoxy::$5 = CONIO_SCREEN_TEXT + gotoxy::line_offset#0
|
||||
gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0
|
||||
conio_line_text = gotoxy::$5
|
||||
gotoxy::$6 = CONIO_SCREEN_COLORS + gotoxy::line_offset#0
|
||||
gotoxy::$6 = COLORRAM + gotoxy::line_offset#0
|
||||
conio_line_color = gotoxy::$6
|
||||
to:gotoxy::@return
|
||||
gotoxy::@4: scope:[gotoxy] from gotoxy::@1
|
||||
@ -514,28 +514,28 @@ cscroll::@1: scope:[cscroll] from cscroll
|
||||
if(cscroll::$7) goto cscroll::@3
|
||||
to:cscroll::@2
|
||||
cscroll::@3: scope:[cscroll] from cscroll::@1
|
||||
memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
memcpy::num#0 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#2 = memcpy::return#1
|
||||
to:cscroll::@4
|
||||
cscroll::@4: scope:[cscroll] from cscroll::@3
|
||||
memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
memcpy::destination#1 = (void *)COLORRAM
|
||||
memcpy::source#1 = (void *)COLORRAM+$28
|
||||
memcpy::num#1 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#3 = memcpy::return#1
|
||||
to:cscroll::@5
|
||||
cscroll::@5: scope:[cscroll] from cscroll::@4
|
||||
memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
memset::c#0 = ' '
|
||||
memset::num#0 = $28
|
||||
call memset
|
||||
memset::return#2 = memset::return#1
|
||||
to:cscroll::@6
|
||||
cscroll::@6: scope:[cscroll] from cscroll::@5
|
||||
memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
memset::c#1 = conio_textcolor
|
||||
memset::num#1 = $28
|
||||
call memset
|
||||
@ -979,9 +979,9 @@ __start: scope:[__start] from
|
||||
__start::__init1: scope:[__start] from __start
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
conio_textcolor = LIGHT_BLUE
|
||||
conio_scroll_enable = 1
|
||||
call conio_c64_init
|
||||
to:__start::@2
|
||||
@ -999,9 +999,6 @@ __start::@return: scope:[__start] from __start::@3
|
||||
SYMBOL TABLE SSA
|
||||
__constant char BINARY = 2
|
||||
__constant char * const COLORRAM = (char *)$d800
|
||||
__constant char * const CONIO_SCREEN_COLORS = COLORRAM
|
||||
__constant char * const CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
__constant const char CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
__constant char DECIMAL = $a
|
||||
__constant char * const DEFAULT_SCREEN = (char *)$400
|
||||
__constant char DIGITS[] = "0123456789abcdef"z
|
||||
@ -1694,15 +1691,15 @@ Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_col
|
||||
Adding number conversion cast (unumber) 0 in conio_cursor_x = 0
|
||||
Adding number conversion cast (unumber) $19 in cscroll::$0 = conio_cursor_y == $19
|
||||
Adding number conversion cast (unumber) 0 in cscroll::$7 = 0 != conio_scroll_enable
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#0 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#1 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#0 = $28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)COLORRAM+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#1 = $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_text = conio_line_text - $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_color - $28
|
||||
@ -2170,22 +2167,22 @@ Constant uctoa::started#0 = 0
|
||||
Constant uctoa::digit#0 = 0
|
||||
Constant uctoa::started#1 = 1
|
||||
Constant uctoa_append::digit#0 = 0
|
||||
Constant clrscr::line_text#0 = CONIO_SCREEN_TEXT
|
||||
Constant clrscr::line_cols#0 = CONIO_SCREEN_COLORS
|
||||
Constant clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
Constant clrscr::line_cols#0 = COLORRAM
|
||||
Constant clrscr::l#0 = 0
|
||||
Constant clrscr::c#0 = 0
|
||||
Constant gotoxy::y#0 = 0
|
||||
Constant gotoxy::x#0 = 0
|
||||
Constant memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
Constant memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Constant memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
Constant memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Constant memcpy::num#0 = (unumber)$19*$28-$28
|
||||
Constant memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
Constant memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Constant memcpy::destination#1 = (void *)COLORRAM
|
||||
Constant memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant memcpy::num#1 = (unumber)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)CONIO_SCREEN_TEXT+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant memset::c#0 = ' '
|
||||
Constant memset::num#0 = $28
|
||||
Constant memset::str#1 = (void *)CONIO_SCREEN_COLORS+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant memset::num#1 = $28
|
||||
Constant gotoxy::x#1 = 0
|
||||
Constant gotoxy::y#1 = 0
|
||||
@ -2210,7 +2207,7 @@ Constant printf_uchar::format_sign_always#0 = 0
|
||||
Constant printf_uchar::format_zero_padding#0 = 0
|
||||
Constant printf_uchar::format_upper_case#0 = 0
|
||||
Constant printf_uchar::format_radix#0 = DECIMAL
|
||||
Constant conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
Constant conio_textcolor = LIGHT_BLUE
|
||||
Constant conio_scroll_enable = 1
|
||||
Successful SSA optimization Pass2ConstantIdentification
|
||||
Constant memset::c#1 = conio_textcolor
|
||||
@ -2532,13 +2529,10 @@ Constant inlined memset::num#0 = $28
|
||||
Constant inlined clrscr::l#0 = 0
|
||||
Constant inlined conio_c64_init::line#1 = (char)$19-1
|
||||
Constant inlined memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant inlined CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
Constant inlined printf_str::s#1 = printf_number_buffer::buffer_digits#0
|
||||
Constant inlined CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
Constant inlined memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant inlined uctoa::digit#0 = 0
|
||||
Constant inlined memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant inlined CONIO_SCREEN_COLORS = COLORRAM
|
||||
Constant inlined clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
Constant inlined memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Constant inlined uctoa::buffer#5 = (char *)&printf_buffer+OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS
|
||||
|
@ -104,8 +104,8 @@ memset::@return: scope:[memset] from memset::@1
|
||||
|
||||
void clrscr()
|
||||
clrscr: scope:[clrscr] from main
|
||||
clrscr::line_text#0 = CONIO_SCREEN_TEXT
|
||||
clrscr::line_cols#0 = CONIO_SCREEN_COLORS
|
||||
clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
clrscr::line_cols#0 = COLORRAM
|
||||
clrscr::l#0 = 0
|
||||
to:clrscr::@1
|
||||
clrscr::@1: scope:[clrscr] from clrscr clrscr::@6
|
||||
@ -124,8 +124,8 @@ clrscr::@2: scope:[clrscr] from clrscr::@1
|
||||
clrscr::@3: scope:[clrscr] from clrscr::@1
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
to:clrscr::@return
|
||||
clrscr::@4: scope:[clrscr] from clrscr::@2 clrscr::@5
|
||||
clrscr::l#4 = phi( clrscr::@2/clrscr::l#5, clrscr::@5/clrscr::l#6 )
|
||||
@ -182,9 +182,9 @@ gotoxy::@2: scope:[gotoxy] from gotoxy::@1 gotoxy::@4
|
||||
conio_cursor_y = gotoxy::y#4
|
||||
gotoxy::$7 = (unsigned int)gotoxy::y#4
|
||||
gotoxy::line_offset#0 = gotoxy::$7 * $28
|
||||
gotoxy::$5 = CONIO_SCREEN_TEXT + gotoxy::line_offset#0
|
||||
gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0
|
||||
conio_line_text = gotoxy::$5
|
||||
gotoxy::$6 = CONIO_SCREEN_COLORS + gotoxy::line_offset#0
|
||||
gotoxy::$6 = COLORRAM + gotoxy::line_offset#0
|
||||
conio_line_color = gotoxy::$6
|
||||
to:gotoxy::@return
|
||||
gotoxy::@4: scope:[gotoxy] from gotoxy::@1
|
||||
@ -250,28 +250,28 @@ cscroll::@1: scope:[cscroll] from cscroll
|
||||
if(cscroll::$7) goto cscroll::@3
|
||||
to:cscroll::@2
|
||||
cscroll::@3: scope:[cscroll] from cscroll::@1
|
||||
memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
memcpy::num#0 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#2 = memcpy::return#1
|
||||
to:cscroll::@4
|
||||
cscroll::@4: scope:[cscroll] from cscroll::@3
|
||||
memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
memcpy::destination#1 = (void *)COLORRAM
|
||||
memcpy::source#1 = (void *)COLORRAM+$28
|
||||
memcpy::num#1 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#3 = memcpy::return#1
|
||||
to:cscroll::@5
|
||||
cscroll::@5: scope:[cscroll] from cscroll::@4
|
||||
memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
memset::c#0 = ' '
|
||||
memset::num#0 = $28
|
||||
call memset
|
||||
memset::return#2 = memset::return#1
|
||||
to:cscroll::@6
|
||||
cscroll::@6: scope:[cscroll] from cscroll::@5
|
||||
memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
memset::c#1 = conio_textcolor
|
||||
memset::num#1 = $28
|
||||
call memset
|
||||
@ -368,9 +368,9 @@ __start: scope:[__start] from
|
||||
__start::__init1: scope:[__start] from __start
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
conio_textcolor = LIGHT_BLUE
|
||||
conio_scroll_enable = 1
|
||||
call conio_c64_init
|
||||
to:__start::@2
|
||||
@ -387,9 +387,6 @@ __start::@return: scope:[__start] from __start::@3
|
||||
|
||||
SYMBOL TABLE SSA
|
||||
__constant char * const COLORRAM = (char *)$d800
|
||||
__constant char * const CONIO_SCREEN_COLORS = COLORRAM
|
||||
__constant char * const CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
__constant const char CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
__constant char * const DEFAULT_SCREEN = (char *)$400
|
||||
__constant const char LIGHT_BLUE = $e
|
||||
__constant char RADIX::BINARY = 2
|
||||
@ -605,15 +602,15 @@ Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_col
|
||||
Adding number conversion cast (unumber) 0 in conio_cursor_x = 0
|
||||
Adding number conversion cast (unumber) $19 in cscroll::$0 = conio_cursor_y == $19
|
||||
Adding number conversion cast (unumber) 0 in cscroll::$7 = 0 != conio_scroll_enable
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#0 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#1 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#0 = $28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)COLORRAM+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#1 = $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_text = conio_line_text - $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_color - $28
|
||||
@ -781,22 +778,22 @@ Constant right-side identified [87] memcpy::num#0 = (unumber)$19*$28-$28
|
||||
Constant right-side identified [92] memcpy::num#1 = (unumber)$19*$28-$28
|
||||
Constant right-side identified [119] conio_c64_init::line#1 = (unumber)$19-1
|
||||
Successful SSA optimization Pass2ConstantRValueConsolidation
|
||||
Constant clrscr::line_text#0 = CONIO_SCREEN_TEXT
|
||||
Constant clrscr::line_cols#0 = CONIO_SCREEN_COLORS
|
||||
Constant clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
Constant clrscr::line_cols#0 = COLORRAM
|
||||
Constant clrscr::l#0 = 0
|
||||
Constant clrscr::c#0 = 0
|
||||
Constant gotoxy::y#0 = 0
|
||||
Constant gotoxy::x#0 = 0
|
||||
Constant memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
Constant memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Constant memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
Constant memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Constant memcpy::num#0 = (unumber)$19*$28-$28
|
||||
Constant memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
Constant memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Constant memcpy::destination#1 = (void *)COLORRAM
|
||||
Constant memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant memcpy::num#1 = (unumber)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)CONIO_SCREEN_TEXT+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant memset::c#0 = ' '
|
||||
Constant memset::num#0 = $28
|
||||
Constant memset::str#1 = (void *)CONIO_SCREEN_COLORS+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant memset::num#1 = $28
|
||||
Constant gotoxy::x#1 = 0
|
||||
Constant gotoxy::y#1 = 0
|
||||
@ -807,7 +804,7 @@ Constant printf_str::putc#0 = &cputc
|
||||
Constant printf_str::s#1 = main::s
|
||||
Constant printf_str::putc#1 = &cputc
|
||||
Constant printf_str::s#2 = main::s1
|
||||
Constant conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
Constant conio_textcolor = LIGHT_BLUE
|
||||
Constant conio_scroll_enable = 1
|
||||
Successful SSA optimization Pass2ConstantIdentification
|
||||
Constant memset::c#1 = conio_textcolor
|
||||
@ -884,6 +881,9 @@ Inlining constant with var siblings printf_str::putc#0
|
||||
Inlining constant with var siblings printf_str::s#1
|
||||
Inlining constant with var siblings printf_str::putc#1
|
||||
Inlining constant with var siblings printf_str::s#2
|
||||
Constant inlined memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant inlined memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant inlined clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
Constant inlined printf_str::putc#0 = &cputc
|
||||
Constant inlined conio_textcolor = LIGHT_BLUE
|
||||
Constant inlined printf_str::putc#1 = &cputc
|
||||
@ -891,21 +891,15 @@ Constant inlined memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
Constant inlined memset::num#1 = $28
|
||||
Constant inlined memcpy::destination#1 = (void *)COLORRAM
|
||||
Constant inlined memset::num#0 = $28
|
||||
Constant inlined clrscr::l#0 = 0
|
||||
Constant inlined conio_c64_init::line#1 = (char)$19-1
|
||||
Constant inlined memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant inlined CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
Constant inlined printf_str::s#1 = main::s
|
||||
Constant inlined printf_str::s#2 = main::s1
|
||||
Constant inlined CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
Constant inlined memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant inlined memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant inlined CONIO_SCREEN_COLORS = COLORRAM
|
||||
Constant inlined clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
Constant inlined memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Constant inlined clrscr::l#0 = 0
|
||||
Constant inlined memcpy::num#1 = (unsigned int)$19*$28-$28
|
||||
Constant inlined memcpy::num#0 = (unsigned int)$19*$28-$28
|
||||
Constant inlined conio_c64_init::line#1 = (char)$19-1
|
||||
Constant inlined memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant inlined gotoxy::y#0 = 0
|
||||
Constant inlined printf_str::s#1 = main::s
|
||||
Constant inlined printf_str::s#2 = main::s1
|
||||
Constant inlined memset::c#0 = ' '
|
||||
Constant inlined memset::c#1 = LIGHT_BLUE
|
||||
Constant inlined clrscr::c#0 = 0
|
||||
|
@ -174,9 +174,9 @@ gotoxy::@2: scope:[gotoxy] from gotoxy::@1 gotoxy::@4
|
||||
conio_cursor_y = gotoxy::y#4
|
||||
gotoxy::$7 = (unsigned int)gotoxy::y#4
|
||||
gotoxy::line_offset#0 = gotoxy::$7 * $28
|
||||
gotoxy::$5 = CONIO_SCREEN_TEXT + gotoxy::line_offset#0
|
||||
gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0
|
||||
conio_line_text = gotoxy::$5
|
||||
gotoxy::$6 = CONIO_SCREEN_COLORS + gotoxy::line_offset#0
|
||||
gotoxy::$6 = COLORRAM + gotoxy::line_offset#0
|
||||
conio_line_color = gotoxy::$6
|
||||
to:gotoxy::@return
|
||||
gotoxy::@4: scope:[gotoxy] from gotoxy::@1
|
||||
@ -242,28 +242,28 @@ cscroll::@1: scope:[cscroll] from cscroll
|
||||
if(cscroll::$7) goto cscroll::@3
|
||||
to:cscroll::@2
|
||||
cscroll::@3: scope:[cscroll] from cscroll::@1
|
||||
memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
memcpy::num#0 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#2 = memcpy::return#1
|
||||
to:cscroll::@4
|
||||
cscroll::@4: scope:[cscroll] from cscroll::@3
|
||||
memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
memcpy::destination#1 = (void *)COLORRAM
|
||||
memcpy::source#1 = (void *)COLORRAM+$28
|
||||
memcpy::num#1 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#3 = memcpy::return#1
|
||||
to:cscroll::@5
|
||||
cscroll::@5: scope:[cscroll] from cscroll::@4
|
||||
memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
memset::c#0 = ' '
|
||||
memset::num#0 = $28
|
||||
call memset
|
||||
memset::return#2 = memset::return#1
|
||||
to:cscroll::@6
|
||||
cscroll::@6: scope:[cscroll] from cscroll::@5
|
||||
memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
memset::c#1 = conio_textcolor
|
||||
memset::num#1 = $28
|
||||
call memset
|
||||
@ -584,9 +584,9 @@ __start: scope:[__start] from
|
||||
__start::__init1: scope:[__start] from __start
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
conio_textcolor = LIGHT_BLUE
|
||||
conio_scroll_enable = 1
|
||||
__snprintf_capacity = 0
|
||||
__snprintf_size = 0
|
||||
@ -608,9 +608,6 @@ SYMBOL TABLE SSA
|
||||
__constant char BUF1[$14] = { fill( $14, 0) }
|
||||
__constant char BUF2[$14] = { fill( $14, 0) }
|
||||
__constant char * const COLORRAM = (char *)$d800
|
||||
__constant char * const CONIO_SCREEN_COLORS = COLORRAM
|
||||
__constant char * const CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
__constant const char CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
__constant char * const DEFAULT_SCREEN = (char *)$400
|
||||
__constant const char LIGHT_BLUE = $e
|
||||
__constant char RADIX::BINARY = 2
|
||||
@ -944,15 +941,15 @@ Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_col
|
||||
Adding number conversion cast (unumber) 0 in conio_cursor_x = 0
|
||||
Adding number conversion cast (unumber) $19 in cscroll::$0 = conio_cursor_y == $19
|
||||
Adding number conversion cast (unumber) 0 in cscroll::$7 = 0 != conio_scroll_enable
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#0 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#1 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#0 = $28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)COLORRAM+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#1 = $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_text = conio_line_text - $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_color - $28
|
||||
@ -1175,16 +1172,16 @@ Successful SSA optimization Pass2ConstantRValueConsolidation
|
||||
Constant strlen::len#0 = 0
|
||||
Constant gotoxy::y#0 = 0
|
||||
Constant gotoxy::x#0 = 0
|
||||
Constant memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
Constant memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Constant memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
Constant memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Constant memcpy::num#0 = (unumber)$19*$28-$28
|
||||
Constant memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
Constant memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Constant memcpy::destination#1 = (void *)COLORRAM
|
||||
Constant memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant memcpy::num#1 = (unumber)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)CONIO_SCREEN_TEXT+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant memset::c#0 = ' '
|
||||
Constant memset::num#0 = $28
|
||||
Constant memset::str#1 = (void *)CONIO_SCREEN_COLORS+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant memset::num#1 = $28
|
||||
Constant gotoxy::x#1 = 0
|
||||
Constant gotoxy::y#1 = 0
|
||||
@ -1223,7 +1220,7 @@ Constant printf_string::format_min_length#2 = 0
|
||||
Constant printf_string::format_justify_left#2 = 0
|
||||
Constant printf_str::putc#5 = &cputc
|
||||
Constant printf_str::s#6 = main::s4
|
||||
Constant conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
Constant conio_textcolor = LIGHT_BLUE
|
||||
Constant conio_scroll_enable = 1
|
||||
Successful SSA optimization Pass2ConstantIdentification
|
||||
Constant memset::c#1 = conio_textcolor
|
||||
@ -1362,7 +1359,6 @@ Constant inlined printf_str::putc#5 = &cputc
|
||||
Constant inlined printf_str::s#3 = main::s1
|
||||
Constant inlined snputc::c#1 = 0
|
||||
Constant inlined printf_str::s#4 = main::s2
|
||||
Constant inlined CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
Constant inlined printf_str::s#2 = main::s
|
||||
Constant inlined printf_string::putc#1 = &cputc
|
||||
Constant inlined printf_string::putc#0 = &snputc
|
||||
@ -1381,13 +1377,11 @@ Constant inlined memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant inlined printf_string::str#0 = main::str
|
||||
Constant inlined printf_string::str#2 = BUF2
|
||||
Constant inlined printf_string::str#1 = BUF1
|
||||
Constant inlined CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
Constant inlined memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant inlined printf_padding::pad#0 = ' '
|
||||
Constant inlined memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant inlined printf_padding::i#0 = 0
|
||||
Constant inlined printf_padding::pad#1 = ' '
|
||||
Constant inlined CONIO_SCREEN_COLORS = COLORRAM
|
||||
Constant inlined main::s4 = main::s2
|
||||
Constant inlined memcpy::num#1 = (unsigned int)$19*$28-$28
|
||||
Constant inlined memcpy::num#0 = (unsigned int)$19*$28-$28
|
||||
|
@ -373,8 +373,8 @@ uctoa_append::@return: scope:[uctoa_append] from uctoa_append::@3
|
||||
|
||||
void clrscr()
|
||||
clrscr: scope:[clrscr] from main
|
||||
clrscr::line_text#0 = CONIO_SCREEN_TEXT
|
||||
clrscr::line_cols#0 = CONIO_SCREEN_COLORS
|
||||
clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
clrscr::line_cols#0 = COLORRAM
|
||||
clrscr::l#0 = 0
|
||||
to:clrscr::@1
|
||||
clrscr::@1: scope:[clrscr] from clrscr clrscr::@6
|
||||
@ -393,8 +393,8 @@ clrscr::@2: scope:[clrscr] from clrscr::@1
|
||||
clrscr::@3: scope:[clrscr] from clrscr::@1
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
to:clrscr::@return
|
||||
clrscr::@4: scope:[clrscr] from clrscr::@2 clrscr::@5
|
||||
clrscr::l#4 = phi( clrscr::@2/clrscr::l#5, clrscr::@5/clrscr::l#6 )
|
||||
@ -451,9 +451,9 @@ gotoxy::@2: scope:[gotoxy] from gotoxy::@1 gotoxy::@4
|
||||
conio_cursor_y = gotoxy::y#4
|
||||
gotoxy::$7 = (unsigned int)gotoxy::y#4
|
||||
gotoxy::line_offset#0 = gotoxy::$7 * $28
|
||||
gotoxy::$5 = CONIO_SCREEN_TEXT + gotoxy::line_offset#0
|
||||
gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0
|
||||
conio_line_text = gotoxy::$5
|
||||
gotoxy::$6 = CONIO_SCREEN_COLORS + gotoxy::line_offset#0
|
||||
gotoxy::$6 = COLORRAM + gotoxy::line_offset#0
|
||||
conio_line_color = gotoxy::$6
|
||||
to:gotoxy::@return
|
||||
gotoxy::@4: scope:[gotoxy] from gotoxy::@1
|
||||
@ -519,28 +519,28 @@ cscroll::@1: scope:[cscroll] from cscroll
|
||||
if(cscroll::$7) goto cscroll::@3
|
||||
to:cscroll::@2
|
||||
cscroll::@3: scope:[cscroll] from cscroll::@1
|
||||
memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
memcpy::num#0 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#2 = memcpy::return#1
|
||||
to:cscroll::@4
|
||||
cscroll::@4: scope:[cscroll] from cscroll::@3
|
||||
memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
memcpy::destination#1 = (void *)COLORRAM
|
||||
memcpy::source#1 = (void *)COLORRAM+$28
|
||||
memcpy::num#1 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#3 = memcpy::return#1
|
||||
to:cscroll::@5
|
||||
cscroll::@5: scope:[cscroll] from cscroll::@4
|
||||
memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
memset::c#0 = ' '
|
||||
memset::num#0 = $28
|
||||
call memset
|
||||
memset::return#2 = memset::return#1
|
||||
to:cscroll::@6
|
||||
cscroll::@6: scope:[cscroll] from cscroll::@5
|
||||
memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
memset::c#1 = conio_textcolor
|
||||
memset::num#1 = $28
|
||||
call memset
|
||||
@ -1019,9 +1019,9 @@ __start: scope:[__start] from
|
||||
__start::__init1: scope:[__start] from __start
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
conio_textcolor = LIGHT_BLUE
|
||||
conio_scroll_enable = 1
|
||||
call conio_c64_init
|
||||
to:__start::@2
|
||||
@ -1039,9 +1039,6 @@ __start::@return: scope:[__start] from __start::@3
|
||||
SYMBOL TABLE SSA
|
||||
__constant char BINARY = 2
|
||||
__constant char * const COLORRAM = (char *)$d800
|
||||
__constant char * const CONIO_SCREEN_COLORS = COLORRAM
|
||||
__constant char * const CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
__constant const char CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
__constant char DECIMAL = $a
|
||||
__constant char * const DEFAULT_SCREEN = (char *)$400
|
||||
__constant char DIGITS[] = "0123456789abcdef"z
|
||||
@ -1761,15 +1758,15 @@ Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_col
|
||||
Adding number conversion cast (unumber) 0 in conio_cursor_x = 0
|
||||
Adding number conversion cast (unumber) $19 in cscroll::$0 = conio_cursor_y == $19
|
||||
Adding number conversion cast (unumber) 0 in cscroll::$7 = 0 != conio_scroll_enable
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#0 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#1 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#0 = $28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)COLORRAM+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#1 = $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_text = conio_line_text - $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_color - $28
|
||||
@ -2232,22 +2229,22 @@ Constant uctoa::started#0 = 0
|
||||
Constant uctoa::digit#0 = 0
|
||||
Constant uctoa::started#1 = 1
|
||||
Constant uctoa_append::digit#0 = 0
|
||||
Constant clrscr::line_text#0 = CONIO_SCREEN_TEXT
|
||||
Constant clrscr::line_cols#0 = CONIO_SCREEN_COLORS
|
||||
Constant clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
Constant clrscr::line_cols#0 = COLORRAM
|
||||
Constant clrscr::l#0 = 0
|
||||
Constant clrscr::c#0 = 0
|
||||
Constant gotoxy::y#0 = 0
|
||||
Constant gotoxy::x#0 = 0
|
||||
Constant memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
Constant memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Constant memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
Constant memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Constant memcpy::num#0 = (unumber)$19*$28-$28
|
||||
Constant memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
Constant memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Constant memcpy::destination#1 = (void *)COLORRAM
|
||||
Constant memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant memcpy::num#1 = (unumber)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)CONIO_SCREEN_TEXT+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant memset::c#0 = ' '
|
||||
Constant memset::num#0 = $28
|
||||
Constant memset::str#1 = (void *)CONIO_SCREEN_COLORS+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant memset::num#1 = $28
|
||||
Constant gotoxy::x#1 = 0
|
||||
Constant gotoxy::y#1 = 0
|
||||
@ -2283,7 +2280,7 @@ Constant printf_uchar::format_upper_case#1 = 0
|
||||
Constant printf_uchar::format_radix#1 = DECIMAL
|
||||
Constant printf_str::putc#2 = &cputc
|
||||
Constant printf_str::s#3 = main::s1
|
||||
Constant conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
Constant conio_textcolor = LIGHT_BLUE
|
||||
Constant conio_scroll_enable = 1
|
||||
Successful SSA optimization Pass2ConstantIdentification
|
||||
Constant memset::c#1 = conio_textcolor
|
||||
@ -2480,7 +2477,6 @@ Constant inlined memset::num#0 = $28
|
||||
Constant inlined clrscr::l#0 = 0
|
||||
Constant inlined strlen::len#0 = 0
|
||||
Constant inlined printf_str::s#3 = main::s1
|
||||
Constant inlined CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
Constant inlined printf_str::s#1 = printf_number_buffer::buffer_digits#0
|
||||
Constant inlined printf_str::s#2 = main::s
|
||||
Constant inlined printf_number_buffer::padding#2 = 0
|
||||
@ -2517,7 +2513,6 @@ Constant inlined main::i#0 = 0
|
||||
Constant inlined uctoa::max_digits#3 = 3
|
||||
Constant inlined uctoa::max_digits#2 = 2
|
||||
Constant inlined strupr::str#0 = printf_number_buffer::buffer_digits#0
|
||||
Constant inlined CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
Constant inlined uctoa::max_digits#4 = 8
|
||||
Constant inlined uctoa::buffer#1 = ++++(char *)&printf_buffer+OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS
|
||||
Constant inlined memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
@ -2527,7 +2522,6 @@ Constant inlined memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$2
|
||||
Constant inlined printf_padding::i#0 = 0
|
||||
Constant inlined printf_padding::pad#1 = '0'
|
||||
Constant inlined printf_uchar::format_zero_padding#1 = 0
|
||||
Constant inlined CONIO_SCREEN_COLORS = COLORRAM
|
||||
Constant inlined uctoa::buffer#0 = ++(char *)&printf_buffer+OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS
|
||||
Constant inlined printf_padding::pad#2 = ' '
|
||||
Constant inlined printf_uchar::format_zero_padding#0 = 0
|
||||
|
@ -542,9 +542,9 @@ gotoxy::@2: scope:[gotoxy] from gotoxy::@1 gotoxy::@4
|
||||
conio_cursor_y = gotoxy::y#4
|
||||
gotoxy::$7 = (unsigned int)gotoxy::y#4
|
||||
gotoxy::line_offset#0 = gotoxy::$7 * $28
|
||||
gotoxy::$5 = CONIO_SCREEN_TEXT + gotoxy::line_offset#0
|
||||
gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0
|
||||
conio_line_text = gotoxy::$5
|
||||
gotoxy::$6 = CONIO_SCREEN_COLORS + gotoxy::line_offset#0
|
||||
gotoxy::$6 = COLORRAM + gotoxy::line_offset#0
|
||||
conio_line_color = gotoxy::$6
|
||||
to:gotoxy::@return
|
||||
gotoxy::@4: scope:[gotoxy] from gotoxy::@1
|
||||
@ -623,28 +623,28 @@ cscroll::@1: scope:[cscroll] from cscroll
|
||||
if(cscroll::$7) goto cscroll::@3
|
||||
to:cscroll::@2
|
||||
cscroll::@3: scope:[cscroll] from cscroll::@1
|
||||
memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
memcpy::num#0 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#2 = memcpy::return#1
|
||||
to:cscroll::@4
|
||||
cscroll::@4: scope:[cscroll] from cscroll::@3
|
||||
memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
memcpy::destination#1 = (void *)COLORRAM
|
||||
memcpy::source#1 = (void *)COLORRAM+$28
|
||||
memcpy::num#1 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#3 = memcpy::return#1
|
||||
to:cscroll::@5
|
||||
cscroll::@5: scope:[cscroll] from cscroll::@4
|
||||
memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
memset::c#0 = ' '
|
||||
memset::num#0 = $28
|
||||
call memset
|
||||
memset::return#2 = memset::return#1
|
||||
to:cscroll::@6
|
||||
cscroll::@6: scope:[cscroll] from cscroll::@5
|
||||
memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
memset::c#1 = conio_textcolor
|
||||
memset::num#1 = $28
|
||||
call memset
|
||||
@ -1590,9 +1590,9 @@ __start: scope:[__start] from
|
||||
__start::__init1: scope:[__start] from __start
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
conio_textcolor = LIGHT_BLUE
|
||||
conio_scroll_enable = 1
|
||||
call conio_c64_init
|
||||
to:__start::@2
|
||||
@ -1610,9 +1610,6 @@ __start::@return: scope:[__start] from __start::@3
|
||||
SYMBOL TABLE SSA
|
||||
__constant char BINARY = 2
|
||||
__constant char * const COLORRAM = (char *)$d800
|
||||
__constant char * const CONIO_SCREEN_COLORS = COLORRAM
|
||||
__constant char * const CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
__constant const char CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
__constant char DECIMAL = $a
|
||||
__constant char * const DEFAULT_SCREEN = (char *)$400
|
||||
__constant char DIGITS[] = "0123456789abcdef"z
|
||||
@ -2756,15 +2753,15 @@ Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_col
|
||||
Adding number conversion cast (unumber) 0 in conio_cursor_x = 0
|
||||
Adding number conversion cast (unumber) $19 in cscroll::$0 = conio_cursor_y == $19
|
||||
Adding number conversion cast (unumber) 0 in cscroll::$7 = 0 != conio_scroll_enable
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#0 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#1 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#0 = $28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)COLORRAM+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#1 = $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_text = conio_line_text - $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_color - $28
|
||||
@ -3442,16 +3439,16 @@ Constant uctoa::started#1 = 1
|
||||
Constant uctoa_append::digit#0 = 0
|
||||
Constant gotoxy::y#0 = 0
|
||||
Constant gotoxy::x#0 = 0
|
||||
Constant memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
Constant memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Constant memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
Constant memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Constant memcpy::num#0 = (unumber)$19*$28-$28
|
||||
Constant memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
Constant memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Constant memcpy::destination#1 = (void *)COLORRAM
|
||||
Constant memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant memcpy::num#1 = (unumber)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)CONIO_SCREEN_TEXT+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant memset::c#0 = ' '
|
||||
Constant memset::num#0 = $28
|
||||
Constant memset::str#1 = (void *)CONIO_SCREEN_COLORS+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant memset::num#1 = $28
|
||||
Constant gotoxy::x#1 = 0
|
||||
Constant gotoxy::y#1 = 0
|
||||
@ -3882,7 +3879,6 @@ Constant inlined printf_str::s#5 = assert_cmp::s2
|
||||
Constant inlined printf_str::s#6 = assert_cmp::s3
|
||||
Constant inlined printf_str::s#3 = assert_cmp::s
|
||||
Constant inlined printf_str::s#4 = assert_cmp::s1
|
||||
Constant inlined CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
Constant inlined printf_str::s#1 = printf_number_buffer::buffer_digits#0
|
||||
Constant inlined uctoa::digit#0 = 0
|
||||
Constant inlined memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
@ -3919,7 +3915,6 @@ Constant inlined assert_cmp::message#6 = main::message6
|
||||
Constant inlined uctoa::max_digits#2 = 2
|
||||
Constant inlined assert_cmp::message#7 = main::message7
|
||||
Constant inlined strupr::str#0 = printf_number_buffer::buffer_digits#0
|
||||
Constant inlined CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
Constant inlined assert_cmp::message#8 = main::message8
|
||||
Constant inlined uctoa::max_digits#4 = 8
|
||||
Constant inlined uctoa::buffer#1 = ++++(char *)&printf_buffer+OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS
|
||||
@ -4020,7 +4015,6 @@ Constant inlined memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant inlined memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant inlined strncmp::n#1 = 3
|
||||
Constant inlined memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant inlined CONIO_SCREEN_COLORS = COLORRAM
|
||||
Constant inlined strncmp::n#4 = 3
|
||||
Constant inlined strncmp::n#5 = 3
|
||||
Constant inlined strncmp::n#2 = 3
|
||||
|
@ -35,9 +35,9 @@ gotoxy::@2: scope:[gotoxy] from gotoxy::@1 gotoxy::@4
|
||||
conio_cursor_y = gotoxy::y#5
|
||||
gotoxy::$7 = (unsigned int)gotoxy::y#5
|
||||
gotoxy::line_offset#0 = gotoxy::$7 * $28
|
||||
gotoxy::$5 = CONIO_SCREEN_TEXT + gotoxy::line_offset#0
|
||||
gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0
|
||||
conio_line_text = gotoxy::$5
|
||||
gotoxy::$6 = CONIO_SCREEN_COLORS + gotoxy::line_offset#0
|
||||
gotoxy::$6 = COLORRAM + gotoxy::line_offset#0
|
||||
conio_line_color = gotoxy::$6
|
||||
to:gotoxy::@return
|
||||
gotoxy::@4: scope:[gotoxy] from gotoxy::@1
|
||||
@ -209,28 +209,28 @@ cscroll::@1: scope:[cscroll] from cscroll
|
||||
if(cscroll::$7) goto cscroll::@3
|
||||
to:cscroll::@2
|
||||
cscroll::@3: scope:[cscroll] from cscroll::@1
|
||||
memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
memcpy::num#0 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#2 = memcpy::return#1
|
||||
to:cscroll::@4
|
||||
cscroll::@4: scope:[cscroll] from cscroll::@3
|
||||
memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
memcpy::destination#1 = (void *)COLORRAM
|
||||
memcpy::source#1 = (void *)COLORRAM+$28
|
||||
memcpy::num#1 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#3 = memcpy::return#1
|
||||
to:cscroll::@5
|
||||
cscroll::@5: scope:[cscroll] from cscroll::@4
|
||||
memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
memset::c#0 = ' '
|
||||
memset::num#0 = $28
|
||||
call memset
|
||||
memset::return#2 = memset::return#1
|
||||
to:cscroll::@6
|
||||
cscroll::@6: scope:[cscroll] from cscroll::@5
|
||||
memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
memset::c#1 = conio_textcolor
|
||||
memset::num#1 = $28
|
||||
call memset
|
||||
@ -414,9 +414,9 @@ __start: scope:[__start] from
|
||||
__start::__init1: scope:[__start] from __start
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
conio_textcolor = LIGHT_BLUE
|
||||
conio_scroll_enable = 1
|
||||
call conio_c64_init
|
||||
to:__start::@2
|
||||
@ -434,9 +434,6 @@ __start::@return: scope:[__start] from __start::@3
|
||||
SYMBOL TABLE SSA
|
||||
__constant struct MOS6526_CIA * const CIA1 = (struct MOS6526_CIA *)$dc00
|
||||
__constant char * const COLORRAM = (char *)$d800
|
||||
__constant char * const CONIO_SCREEN_COLORS = COLORRAM
|
||||
__constant char * const CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
__constant const char CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
__constant char * const DEFAULT_SCREEN = (char *)$400
|
||||
__constant const char LIGHT_BLUE = $e
|
||||
__constant char OFFSET_STRUCT_MOS6526_CIA_TIMER_A_CONTROL = $e
|
||||
@ -710,15 +707,15 @@ Adding number conversion cast (unumber) 0 in cputs::$2 = 0 != cputs::$0
|
||||
Adding number conversion cast (unumber) 0 in memset::$0 = memset::num#2 > 0
|
||||
Adding number conversion cast (unumber) $19 in cscroll::$0 = conio_cursor_y == $19
|
||||
Adding number conversion cast (unumber) 0 in cscroll::$7 = 0 != conio_scroll_enable
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#0 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#1 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#0 = $28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)COLORRAM+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#1 = $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_text = conio_line_text - $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_color - $28
|
||||
@ -965,16 +962,16 @@ Successful SSA optimization Pass2ConstantRValueConsolidation
|
||||
Constant gotoxy::y#0 = 0
|
||||
Constant gotoxy::x#0 = 0
|
||||
Constant cputs::c#0 = 0
|
||||
Constant memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
Constant memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Constant memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
Constant memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Constant memcpy::num#0 = (unumber)$19*$28-$28
|
||||
Constant memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
Constant memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Constant memcpy::destination#1 = (void *)COLORRAM
|
||||
Constant memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant memcpy::num#1 = (unumber)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)CONIO_SCREEN_TEXT+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant memset::c#0 = ' '
|
||||
Constant memset::num#0 = $28
|
||||
Constant memset::str#1 = (void *)CONIO_SCREEN_COLORS+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant memset::num#1 = $28
|
||||
Constant gotoxy::x#1 = 0
|
||||
Constant gotoxy::y#1 = 0
|
||||
@ -983,7 +980,7 @@ Constant conio_c64_init::line#1 = (unumber)$19-1
|
||||
Constant tod_str::return#0 = tod_buffer
|
||||
Constant gotoxy::x#3 = 0
|
||||
Constant gotoxy::y#3 = 0
|
||||
Constant conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
Constant conio_textcolor = LIGHT_BLUE
|
||||
Constant conio_scroll_enable = 1
|
||||
Successful SSA optimization Pass2ConstantIdentification
|
||||
Constant memset::c#1 = conio_textcolor
|
||||
@ -1054,31 +1051,28 @@ Inlining constant with var siblings memset::str#1
|
||||
Inlining constant with var siblings memset::num#1
|
||||
Inlining constant with var siblings memset::c#1
|
||||
Inlining constant with var siblings conio_c64_init::line#1
|
||||
Constant inlined memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant inlined memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant inlined cputs::s#1 = tod_buffer
|
||||
Constant inlined conio_textcolor = LIGHT_BLUE
|
||||
Constant inlined memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
Constant inlined memset::num#1 = $28
|
||||
Constant inlined memcpy::destination#1 = (void *)COLORRAM
|
||||
Constant inlined memset::num#0 = $28
|
||||
Constant inlined conio_c64_init::line#1 = (char)$19-1
|
||||
Constant inlined memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant inlined CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
Constant inlined tod_str::return#2 = tod_buffer
|
||||
Constant inlined tod_str::return#0 = tod_buffer
|
||||
Constant inlined CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
Constant inlined memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant inlined memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant inlined CONIO_SCREEN_COLORS = COLORRAM
|
||||
Constant inlined memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Constant inlined gotoxy::x#3 = 0
|
||||
Constant inlined memcpy::num#1 = (unsigned int)$19*$28-$28
|
||||
Constant inlined gotoxy::y#3 = 0
|
||||
Constant inlined memcpy::num#0 = (unsigned int)$19*$28-$28
|
||||
Constant inlined conio_c64_init::line#1 = (char)$19-1
|
||||
Constant inlined memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant inlined gotoxy::x#0 = 0
|
||||
Constant inlined gotoxy::y#0 = 0
|
||||
Constant inlined gotoxy::x#2 = 0
|
||||
Constant inlined memset::c#0 = ' '
|
||||
Constant inlined memset::c#1 = LIGHT_BLUE
|
||||
Constant inlined tod_str::return#2 = tod_buffer
|
||||
Constant inlined tod_str::return#0 = tod_buffer
|
||||
Successful SSA optimization Pass2ConstantInlining
|
||||
Consolidated array index constant in *(tod_buffer+1)
|
||||
Consolidated array index constant in *(tod_buffer+3)
|
||||
|
@ -9,8 +9,8 @@ CONTROL FLOW GRAPH SSA
|
||||
|
||||
void clrscr()
|
||||
clrscr: scope:[clrscr] from main
|
||||
clrscr::line_text#0 = CONIO_SCREEN_TEXT
|
||||
clrscr::line_cols#0 = CONIO_SCREEN_COLORS
|
||||
clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
clrscr::line_cols#0 = COLORRAM
|
||||
clrscr::l#0 = 0
|
||||
to:clrscr::@1
|
||||
clrscr::@1: scope:[clrscr] from clrscr clrscr::@6
|
||||
@ -29,8 +29,8 @@ clrscr::@2: scope:[clrscr] from clrscr::@1
|
||||
clrscr::@3: scope:[clrscr] from clrscr::@1
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
to:clrscr::@return
|
||||
clrscr::@4: scope:[clrscr] from clrscr::@2 clrscr::@5
|
||||
clrscr::l#4 = phi( clrscr::@2/clrscr::l#5, clrscr::@5/clrscr::l#6 )
|
||||
@ -87,9 +87,9 @@ gotoxy::@2: scope:[gotoxy] from gotoxy::@1 gotoxy::@4
|
||||
conio_cursor_y = gotoxy::y#5
|
||||
gotoxy::$7 = (unsigned int)gotoxy::y#5
|
||||
gotoxy::line_offset#0 = gotoxy::$7 * $28
|
||||
gotoxy::$5 = CONIO_SCREEN_TEXT + gotoxy::line_offset#0
|
||||
gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0
|
||||
conio_line_text = gotoxy::$5
|
||||
gotoxy::$6 = CONIO_SCREEN_COLORS + gotoxy::line_offset#0
|
||||
gotoxy::$6 = COLORRAM + gotoxy::line_offset#0
|
||||
conio_line_color = gotoxy::$6
|
||||
to:gotoxy::@return
|
||||
gotoxy::@4: scope:[gotoxy] from gotoxy::@1
|
||||
@ -258,28 +258,28 @@ cscroll::@1: scope:[cscroll] from cscroll
|
||||
if(cscroll::$7) goto cscroll::@3
|
||||
to:cscroll::@2
|
||||
cscroll::@3: scope:[cscroll] from cscroll::@1
|
||||
memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
memcpy::num#0 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#2 = memcpy::return#1
|
||||
to:cscroll::@4
|
||||
cscroll::@4: scope:[cscroll] from cscroll::@3
|
||||
memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
memcpy::destination#1 = (void *)COLORRAM
|
||||
memcpy::source#1 = (void *)COLORRAM+$28
|
||||
memcpy::num#1 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#3 = memcpy::return#1
|
||||
to:cscroll::@5
|
||||
cscroll::@5: scope:[cscroll] from cscroll::@4
|
||||
memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
memset::c#0 = ' '
|
||||
memset::num#0 = $28
|
||||
call memset
|
||||
memset::return#2 = memset::return#1
|
||||
to:cscroll::@6
|
||||
cscroll::@6: scope:[cscroll] from cscroll::@5
|
||||
memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
memset::c#1 = conio_textcolor
|
||||
memset::num#1 = $28
|
||||
call memset
|
||||
@ -389,9 +389,9 @@ __start: scope:[__start] from
|
||||
__start::__init1: scope:[__start] from __start
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
conio_textcolor = LIGHT_BLUE
|
||||
conio_scroll_enable = 1
|
||||
call conio_c64_init
|
||||
to:__start::@2
|
||||
@ -408,9 +408,6 @@ __start::@return: scope:[__start] from __start::@3
|
||||
|
||||
SYMBOL TABLE SSA
|
||||
__constant char * const COLORRAM = (char *)$d800
|
||||
__constant char * const CONIO_SCREEN_COLORS = COLORRAM
|
||||
__constant char * const CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
__constant const char CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
__constant char * const DEFAULT_SCREEN = (char *)$400
|
||||
__constant const char LIGHT_BLUE = $e
|
||||
void __start()
|
||||
@ -638,15 +635,15 @@ Adding number conversion cast (unumber) 0 in conio_cursor_x = 0
|
||||
Adding number conversion cast (unumber) 0 in memset::$0 = memset::num#2 > 0
|
||||
Adding number conversion cast (unumber) $19 in cscroll::$0 = conio_cursor_y == $19
|
||||
Adding number conversion cast (unumber) 0 in cscroll::$7 = 0 != conio_scroll_enable
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#0 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#1 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#0 = $28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)COLORRAM+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#1 = $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_text = conio_line_text - $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_color - $28
|
||||
@ -834,22 +831,22 @@ Constant right-side identified [95] memcpy::num#0 = (unumber)$19*$28-$28
|
||||
Constant right-side identified [100] memcpy::num#1 = (unumber)$19*$28-$28
|
||||
Constant right-side identified [127] conio_c64_init::line#1 = (unumber)$19-1
|
||||
Successful SSA optimization Pass2ConstantRValueConsolidation
|
||||
Constant clrscr::line_text#0 = CONIO_SCREEN_TEXT
|
||||
Constant clrscr::line_cols#0 = CONIO_SCREEN_COLORS
|
||||
Constant clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
Constant clrscr::line_cols#0 = COLORRAM
|
||||
Constant clrscr::l#0 = 0
|
||||
Constant clrscr::c#0 = 0
|
||||
Constant gotoxy::y#0 = 0
|
||||
Constant gotoxy::x#0 = 0
|
||||
Constant memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
Constant memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Constant memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
Constant memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Constant memcpy::num#0 = (unumber)$19*$28-$28
|
||||
Constant memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
Constant memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Constant memcpy::destination#1 = (void *)COLORRAM
|
||||
Constant memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant memcpy::num#1 = (unumber)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)CONIO_SCREEN_TEXT+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant memset::c#0 = ' '
|
||||
Constant memset::num#0 = $28
|
||||
Constant memset::str#1 = (void *)CONIO_SCREEN_COLORS+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant memset::num#1 = $28
|
||||
Constant gotoxy::x#1 = 0
|
||||
Constant gotoxy::y#1 = 0
|
||||
@ -858,7 +855,7 @@ Constant conio_c64_init::line#1 = (unumber)$19-1
|
||||
Constant main::c#0 = 0
|
||||
Constant gotoxy::x#3 = 0
|
||||
Constant main::c1#0 = 0
|
||||
Constant conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
Constant conio_textcolor = LIGHT_BLUE
|
||||
Constant conio_scroll_enable = 1
|
||||
Successful SSA optimization Pass2ConstantIdentification
|
||||
Constant memset::c#1 = conio_textcolor
|
||||
@ -937,25 +934,22 @@ Inlining constant with var siblings conio_c64_init::line#1
|
||||
Inlining constant with var siblings main::c#0
|
||||
Inlining constant with var siblings main::c1#0
|
||||
Constant inlined main::c1#0 = 0
|
||||
Constant inlined memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant inlined memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant inlined clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
Constant inlined conio_textcolor = LIGHT_BLUE
|
||||
Constant inlined memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
Constant inlined memset::num#1 = $28
|
||||
Constant inlined memcpy::destination#1 = (void *)COLORRAM
|
||||
Constant inlined memset::num#0 = $28
|
||||
Constant inlined clrscr::l#0 = 0
|
||||
Constant inlined conio_c64_init::line#1 = (char)$19-1
|
||||
Constant inlined main::c#0 = 0
|
||||
Constant inlined memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant inlined CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
Constant inlined CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
Constant inlined memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant inlined memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant inlined CONIO_SCREEN_COLORS = COLORRAM
|
||||
Constant inlined clrscr::line_text#0 = DEFAULT_SCREEN
|
||||
Constant inlined memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Constant inlined gotoxy::x#3 = 0
|
||||
Constant inlined memcpy::num#1 = (unsigned int)$19*$28-$28
|
||||
Constant inlined memcpy::num#0 = (unsigned int)$19*$28-$28
|
||||
Constant inlined conio_c64_init::line#1 = (char)$19-1
|
||||
Constant inlined main::c#0 = 0
|
||||
Constant inlined memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant inlined gotoxy::x#0 = 0
|
||||
Constant inlined gotoxy::y#0 = 0
|
||||
Constant inlined gotoxy::x#2 = 0
|
||||
|
@ -401,9 +401,9 @@ gotoxy::@2: scope:[gotoxy] from gotoxy::@1 gotoxy::@4
|
||||
conio_cursor_y = gotoxy::y#4
|
||||
gotoxy::$7 = (unsigned int)gotoxy::y#4
|
||||
gotoxy::line_offset#0 = gotoxy::$7 * $28
|
||||
gotoxy::$5 = CONIO_SCREEN_TEXT + gotoxy::line_offset#0
|
||||
gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0
|
||||
conio_line_text = gotoxy::$5
|
||||
gotoxy::$6 = CONIO_SCREEN_COLORS + gotoxy::line_offset#0
|
||||
gotoxy::$6 = COLORRAM + gotoxy::line_offset#0
|
||||
conio_line_color = gotoxy::$6
|
||||
to:gotoxy::@return
|
||||
gotoxy::@4: scope:[gotoxy] from gotoxy::@1
|
||||
@ -469,28 +469,28 @@ cscroll::@1: scope:[cscroll] from cscroll
|
||||
if(cscroll::$7) goto cscroll::@3
|
||||
to:cscroll::@2
|
||||
cscroll::@3: scope:[cscroll] from cscroll::@1
|
||||
memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
memcpy::num#0 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#2 = memcpy::return#1
|
||||
to:cscroll::@4
|
||||
cscroll::@4: scope:[cscroll] from cscroll::@3
|
||||
memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
memcpy::destination#1 = (void *)COLORRAM
|
||||
memcpy::source#1 = (void *)COLORRAM+$28
|
||||
memcpy::num#1 = $19*$28-$28
|
||||
call memcpy
|
||||
memcpy::return#3 = memcpy::return#1
|
||||
to:cscroll::@5
|
||||
cscroll::@5: scope:[cscroll] from cscroll::@4
|
||||
memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
memset::c#0 = ' '
|
||||
memset::num#0 = $28
|
||||
call memset
|
||||
memset::return#2 = memset::return#1
|
||||
to:cscroll::@6
|
||||
cscroll::@6: scope:[cscroll] from cscroll::@5
|
||||
memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
memset::c#1 = conio_textcolor
|
||||
memset::num#1 = $28
|
||||
call memset
|
||||
@ -1084,9 +1084,9 @@ __start: scope:[__start] from
|
||||
__start::__init1: scope:[__start] from __start
|
||||
conio_cursor_x = 0
|
||||
conio_cursor_y = 0
|
||||
conio_line_text = CONIO_SCREEN_TEXT
|
||||
conio_line_color = CONIO_SCREEN_COLORS
|
||||
conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
conio_line_text = DEFAULT_SCREEN
|
||||
conio_line_color = COLORRAM
|
||||
conio_textcolor = LIGHT_BLUE
|
||||
conio_scroll_enable = 1
|
||||
call conio_c64_init
|
||||
to:__start::@2
|
||||
@ -1104,9 +1104,6 @@ __start::@return: scope:[__start] from __start::@3
|
||||
SYMBOL TABLE SSA
|
||||
__constant char BINARY = 2
|
||||
__constant char * const COLORRAM = (char *)$d800
|
||||
__constant char * const CONIO_SCREEN_COLORS = COLORRAM
|
||||
__constant char * const CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
__constant const char CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
__constant char DECIMAL = $a
|
||||
__constant char * const DEFAULT_SCREEN = (char *)$400
|
||||
__constant char DIGITS[] = "0123456789abcdef"z
|
||||
@ -1931,15 +1928,15 @@ Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_col
|
||||
Adding number conversion cast (unumber) 0 in conio_cursor_x = 0
|
||||
Adding number conversion cast (unumber) $19 in cscroll::$0 = conio_cursor_y == $19
|
||||
Adding number conversion cast (unumber) 0 in cscroll::$7 = 0 != conio_scroll_enable
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#0 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#1 = $19*$28-$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)CONIO_SCREEN_TEXT+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#0 = $28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)CONIO_SCREEN_COLORS+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)COLORRAM+$19*$28-$28
|
||||
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)COLORRAM+$19*$28-(unumber)$28
|
||||
Adding number conversion cast (unumber) $28 in memset::num#1 = $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_text = conio_line_text - $28
|
||||
Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_color - $28
|
||||
@ -2428,16 +2425,16 @@ Constant utoa::started#1 = 1
|
||||
Constant utoa_append::digit#0 = 0
|
||||
Constant gotoxy::y#0 = 0
|
||||
Constant gotoxy::x#0 = 0
|
||||
Constant memcpy::destination#0 = (void *)CONIO_SCREEN_TEXT
|
||||
Constant memcpy::source#0 = (void *)CONIO_SCREEN_TEXT+$28
|
||||
Constant memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
Constant memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Constant memcpy::num#0 = (unumber)$19*$28-$28
|
||||
Constant memcpy::destination#1 = (void *)CONIO_SCREEN_COLORS
|
||||
Constant memcpy::source#1 = (void *)CONIO_SCREEN_COLORS+$28
|
||||
Constant memcpy::destination#1 = (void *)COLORRAM
|
||||
Constant memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant memcpy::num#1 = (unumber)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)CONIO_SCREEN_TEXT+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant memset::c#0 = ' '
|
||||
Constant memset::num#0 = $28
|
||||
Constant memset::str#1 = (void *)CONIO_SCREEN_COLORS+(unsigned int)$19*$28-$28
|
||||
Constant memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant memset::num#1 = $28
|
||||
Constant gotoxy::x#1 = 0
|
||||
Constant gotoxy::y#1 = 0
|
||||
@ -2478,7 +2475,7 @@ Constant printf_uint::format_upper_case#0 = 0
|
||||
Constant printf_uint::format_radix#0 = DECIMAL
|
||||
Constant printf_str::putc#4 = &cputc
|
||||
Constant printf_str::s#5 = main::s2
|
||||
Constant conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
|
||||
Constant conio_textcolor = LIGHT_BLUE
|
||||
Constant conio_scroll_enable = 1
|
||||
Successful SSA optimization Pass2ConstantIdentification
|
||||
Constant memset::c#1 = conio_textcolor
|
||||
@ -2832,57 +2829,54 @@ Inlining constant with var siblings printf_string::putc#1
|
||||
Inlining constant with var siblings printf_string::format_min_length#1
|
||||
Inlining constant with var siblings printf_string::format_justify_left#1
|
||||
Inlining constant with var siblings main::bbs#0
|
||||
Constant inlined utoa_append::digit#0 = 0
|
||||
Constant inlined utoa::digit_values#1 = RADIX_DECIMAL_VALUES
|
||||
Constant inlined printf_str::putc#0 = printf_uint::putc#0
|
||||
Constant inlined conio_textcolor = LIGHT_BLUE
|
||||
Constant inlined memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
Constant inlined memset::num#1 = $28
|
||||
Constant inlined printf_str::putc#2 = &cputc
|
||||
Constant inlined memcpy::destination#1 = (void *)COLORRAM
|
||||
Constant inlined memset::num#0 = $28
|
||||
Constant inlined printf_str::putc#3 = &cputc
|
||||
Constant inlined strlen::len#0 = 0
|
||||
Constant inlined printf_string::format_min_length#0 = 0
|
||||
Constant inlined printf_string::format_min_length#1 = 0
|
||||
Constant inlined conio_c64_init::line#1 = (char)$19-1
|
||||
Constant inlined memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant inlined printf_str::s#5 = main::s2
|
||||
Constant inlined printf_str::putc#4 = &cputc
|
||||
Constant inlined utoa::digit#0 = 0
|
||||
Constant inlined printf_str::s#3 = main::s
|
||||
Constant inlined printf_str::s#4 = main::s
|
||||
Constant inlined CONIO_SCREEN_TEXT = DEFAULT_SCREEN
|
||||
Constant inlined printf_str::s#1 = printf_number_buffer::buffer_digits#0
|
||||
Constant inlined utoa::$4 = utoa::max_digits#1-1
|
||||
Constant inlined printf_string::putc#1 = &cputc
|
||||
Constant inlined printf_string::putc#0 = &cputc
|
||||
Constant inlined memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Constant inlined printf_string::padding#0 = 0
|
||||
Constant inlined utoa::buffer#5 = (char *)&printf_buffer+OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS
|
||||
Constant inlined bbs_host_name17 = bbs_host_name1
|
||||
Constant inlined printf_string::padding#2 = 0
|
||||
Constant inlined memset::c#0 = ' '
|
||||
Constant inlined memset::c#1 = LIGHT_BLUE
|
||||
Constant inlined bbs_host_name16 = bbs_host_name8
|
||||
Constant inlined utoa_append::digit#0 = 0
|
||||
Constant inlined memcpy::destination#0 = (void *)DEFAULT_SCREEN
|
||||
Constant inlined memcpy::destination#1 = (void *)COLORRAM
|
||||
Constant inlined conio_c64_init::line#1 = (char)$19-1
|
||||
Constant inlined memcpy::source#1 = (void *)COLORRAM+$28
|
||||
Constant inlined utoa::digit#0 = 0
|
||||
Constant inlined CONIO_TEXTCOLOR_DEFAULT = LIGHT_BLUE
|
||||
Constant inlined memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
|
||||
Constant inlined memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
|
||||
Constant inlined printf_padding::i#0 = 0
|
||||
Constant inlined CONIO_SCREEN_COLORS = COLORRAM
|
||||
Constant inlined main::s1 = main::s
|
||||
Constant inlined printf_uint::$0 = 0
|
||||
Constant inlined utoa::started#1 = 1
|
||||
Constant inlined utoa::started#0 = 0
|
||||
Constant inlined printf_number_buffer::putc#0 = printf_uint::putc#0
|
||||
Constant inlined memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
|
||||
Constant inlined printf_padding::pad#3 = ' '
|
||||
Constant inlined printf_padding::pad#4 = ' '
|
||||
Constant inlined memcpy::num#1 = (unsigned int)$19*$28-$28
|
||||
Constant inlined memcpy::num#0 = (unsigned int)$19*$28-$28
|
||||
Constant inlined printf_string::padding#0 = 0
|
||||
Constant inlined utoa::buffer#5 = (char *)&printf_buffer+OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS
|
||||
Constant inlined gotoxy::y#0 = 0
|
||||
Constant inlined bbs_host_name17 = bbs_host_name1
|
||||
Constant inlined printf_string::padding#2 = 0
|
||||
Constant inlined main::bbs#0 = bbs_list
|
||||
Constant inlined memset::c#0 = ' '
|
||||
Constant inlined memset::c#1 = LIGHT_BLUE
|
||||
Constant inlined printf_string::format_justify_left#1 = 0
|
||||
Constant inlined printf_string::format_justify_left#0 = 0
|
||||
Constant inlined bbs_host_name16 = bbs_host_name8
|
||||
Successful SSA optimization Pass2ConstantInlining
|
||||
Alias candidate removed (volatile)conio_line_text = gotoxy::$5
|
||||
Alias candidate removed (volatile)conio_line_color = gotoxy::$6
|
||||
|
Loading…
x
Reference in New Issue
Block a user