📄 printfl.asm
字号:
cjne a,#0x6C,00103$;00153$:; Peephole 200 removed redundant sjmp00154$:; printfl.c 119; genAssign ; genAssign: resultIsFar = FALSE setb _long_flag; printfl.c 120; genPlus mov a,_bp add a,#0xf9 mov dpx,#0x40 mov dph,#0x00 mov dpl, a mov a,#0x01 add a,r6 movx @dptr,a; Peephole 180 changed mov to clr clr a addc a,r5 inc dptr movx @dptr,a; Peephole 180 changed mov to clr clr a addc a,r2 inc dptr movx @dptr,a inc dptr mov a,r3 movx @dptr,a; printfl.c 121; genGoto ; printfl.c 123; genLabel ; Peephole 132 changed ljmp to sjmp sjmp 00103$00102$:; genAssign ; genAssign: resultIsFar = FALSE setb _char_flag; printfl.c 124; genPlus mov a,_bp add a,#0xf9 mov dpx,#0x40 mov dph,#0x00 mov dpl, a mov a,#0x01 add a,r6 movx @dptr,a; Peephole 180 changed mov to clr clr a addc a,r5 inc dptr movx @dptr,a; Peephole 180 changed mov to clr clr a addc a,r2 inc dptr movx @dptr,a inc dptr mov a,r3 movx @dptr,a; printfl.c 125; genLabel 00103$:; printfl.c 127; genAssign mov a,_bp add a,#0xf9 mov dpx,#0x40 mov dph,#0x00 mov dpl, a; genAssign: resultIsFar = FALSE movx a,@dptr mov r2,a inc dptr movx a,@dptr mov r3,a inc dptr movx a,@dptr mov r5,a inc dptr movx a,@dptr mov r6,a; genPointerGet ; genGenPointerGet mov dpl,r2 mov dph,r3 mov dpx,r5 mov b,r6 lcall __gptrget; genCmpEq ; gencjneshort; Peephole 105 removed redundant mov mov r2,a cjne a,#0x63,00155$; Peephole 132 changed ljmp to sjmp sjmp 00107$00155$:; genCmpEq ; gencjneshort mov a,r2 cjne a,#0x64,00156$; Peephole 132 changed ljmp to sjmp sjmp 00105$00156$:; genCmpEq ; gencjneshort mov a,r2 cjne a,#0x6F,00157$; Peephole 132 changed ljmp to sjmp sjmp 00108$00157$:; genCmpEq ; gencjneshort mov a,r2 cjne a,#0x73,00158$; Peephole 132 changed ljmp to sjmp sjmp 00104$00158$:; genCmpEq ; gencjneshort mov a,r2; Peephole 132 changed ljmp to sjmp; genGoto ; printfl.c 129; genLabel ; Peephole 132 changed ljmp to sjmp; Peephole 199 optimized misc jump sequence cjne a,#0x78,00109$ sjmp 00106$;00159$:00104$:; genAssign ; genAssign: resultIsFar = FALSE setb _string_flag; printfl.c 130; genGoto ; printfl.c 132; genLabel ; Peephole 132 changed ljmp to sjmp sjmp 00109$00105$:; genAssign ; genAssign: resultIsFar = FALSE mov _radix,#0x0A; printfl.c 133; genGoto ; printfl.c 135; genLabel ; Peephole 132 changed ljmp to sjmp sjmp 00109$00106$:; genAssign ; genAssign: resultIsFar = FALSE mov _radix,#0x10; printfl.c 136; genGoto ; printfl.c 138; genLabel ; Peephole 132 changed ljmp to sjmp sjmp 00109$00107$:; genAssign ; genAssign: resultIsFar = FALSE mov _radix,#0x00; printfl.c 139; genGoto ; printfl.c 141; genLabel ; Peephole 132 changed ljmp to sjmp sjmp 00109$00108$:; genAssign ; genAssign: resultIsFar = FALSE mov _radix,#0x08; printfl.c 143; genLabel 00109$:; printfl.c 145; genIfx ; genIfxJump jb _string_flag,00160$ ljmp 00114$00160$:; printfl.c 146; genMinus mov a,_bp add a,#0x01 mov dpx,#0x40 mov dph,#0x00 mov dpl, a movx a,@dptr add a,#0xfc mov r2,a inc dptr movx a,@dptr addc a,#0xff mov r3,a inc dptr movx a,@dptr addc a,#0xff mov r5,a inc dptr movx a,@dptr mov r6,a; genAssign ; genAssign: resultIsFar = TRUE mov a,_bp add a,#0x01 mov dpx,#0x40 mov dph,#0x00 mov dpl, a mov a,r2 movx @dptr,a inc dptr mov a,r3 movx @dptr,a inc dptr mov a,r5 movx @dptr,a inc dptr mov a,r6 movx @dptr,a; genPointerGet ; genGenPointerGet mov dpl,r2 mov dph,r3 mov dpx,r5 mov b,r6 lcall __gptrget mov _str,a inc dptr lcall __gptrget mov (_str + 1),a inc dptr lcall __gptrget mov (_str + 2),a inc dptr lcall __gptrget mov (_str + 3),a; printfl.c 147; genLabel 00110$:; genAssign ; genAssign: resultIsFar = TRUE mov dptr,#_printf_small_sloc3_1_0 mov a,_str movx @dptr,a inc dptr mov a,(_str + 1) movx @dptr,a inc dptr mov a,(_str + 2) movx @dptr,a inc dptr mov a,(_str + 3) movx @dptr,a; genPointerGet ; genGenPointerGet mov dps, #0x01 mov dptr, #_printf_small_sloc3_1_0 movx a,@dptr dec dps mov dpl,a inc dps inc dptr movx a,@dptr dec dps mov dph,a inc dps inc dptr movx a,@dptr dec dps mov dpx,a inc dps inc dptr movx a,@dptr mov b,a; Peephole 220a removed bogus DPS set mov dps, #0x01 mov dptr, #_printf_small_sloc2_1_0 dec dps lcall __gptrget mov dps, #0x01 movx @dptr,a mov dps, #0x00; genIfx mov dptr,#_printf_small_sloc2_1_0 movx a,@dptr; genIfxJump jnz 00161$ ljmp 00129$00161$:; genAssign ; genAssign: resultIsFar = TRUE mov dptr,#_printf_small_sloc0_1_0 mov a,_str movx @dptr,a inc dptr mov a,(_str + 1) movx @dptr,a inc dptr mov a,(_str + 2) movx @dptr,a inc dptr mov a,(_str + 3) movx @dptr,a; genPlus mov dptr,#_printf_small_sloc1_1_0 mov a,#0x01 add a,_str movx @dptr,a; Peephole 180 changed mov to clr clr a addc a,(_str + 1) inc dptr movx @dptr,a; Peephole 180 changed mov to clr clr a addc a,(_str + 2) inc dptr movx @dptr,a inc dptr mov a,(_str + 3) movx @dptr,a; genAssign mov dptr,#_printf_small_sloc1_1_0; genAssign: resultIsFar = FALSE movx a,@dptr mov r7,a inc dptr movx a,@dptr mov r2,a inc dptr movx a,@dptr mov r3,a inc dptr movx a,@dptr mov r5,a; genAssign ; genAssign: resultIsFar = FALSE mov _str,r7 mov (_str + 1),r2 mov (_str + 2),r3 mov (_str + 3),r5; genPointerGet ; genGenPointerGet mov dps, #0x01 mov dptr, #_printf_small_sloc0_1_0 movx a,@dptr dec dps mov dpl,a inc dps inc dptr movx a,@dptr dec dps mov dph,a inc dps inc dptr movx a,@dptr dec dps mov dpx,a inc dps inc dptr movx a,@dptr mov b,a mov dps, #0x00 lcall __gptrget mov r6,a; genCall push ar2 push ar3 push ar4 push ar5 push ar6 push ar7 mov dpl,r6 lcall _putchar pop ar7 pop ar6 pop ar5 pop ar4 pop ar3 pop ar2; genGoto ljmp 00110$; printfl.c 148; genLabel 00114$:; printfl.c 151; genIfx ; genIfxJump jb _long_flag,00162$ ljmp 00119$00162$:; printfl.c 152; genMinus mov a,_bp add a,#0x01 mov dpx,#0x40 mov dph,#0x00 mov dpl, a movx a,@dptr add a,#0xfc mov r2,a inc dptr movx a,@dptr addc a,#0xff mov r3,a inc dptr movx a,@dptr addc a,#0xff mov r5,a inc dptr movx a,@dptr mov r6,a; genAssign ; genAssign: resultIsFar = TRUE mov a,_bp add a,#0x01 mov dpx,#0x40 mov dph,#0x00 mov dpl, a mov a,r2 movx @dptr,a inc dptr mov a,r3 movx @dptr,a inc dptr mov a,r5 movx @dptr,a inc dptr mov a,r6 movx @dptr,a; genPointerGet ; genGenPointerGet mov dpl,r2 mov dph,r3 mov dpx,r5 mov b,r6 lcall __gptrget mov _val,a inc dptr lcall __gptrget mov (_val + 1),a inc dptr lcall __gptrget mov (_val + 2),a inc dptr lcall __gptrget mov (_val + 3),a; genGoto ljmp 00120$; genLabel 00119$:; printfl.c 154; genIfx ; genIfxJump jb _char_flag,00163$ ljmp 00116$00163$:; printfl.c 155; genMinus mov a,_bp add a,#0x01 mov dpx,#0x40 mov dph,#0x00 mov dpl, a movx a,@dptr add a,#0xff mov r2,a inc dptr movx a,@dptr addc a,#0xff mov r3,a inc dptr movx a,@dptr addc a,#0xff mov r5,a inc dptr movx a,@dptr mov r6,a; genAssign ; genAssign: resultIsFar = TRUE mov a,_bp add a,#0x01 mov dpx,#0x40 mov dph,#0x00 mov dpl, a mov a,r2 movx @dptr,a inc dptr mov a,r3 movx @dptr,a inc dptr mov a,r5 movx @dptr,a inc dptr mov a,r6 movx @dptr,a; genPointerGet ; genGenPointerGet mov dpl,r2 mov dph,r3 mov dpx,r5 mov b,r6 lcall __gptrget; genCast ; Peephole 166 removed redundant mov mov r2,a mov _val,r2 rlc a subb a,acc mov (_val + 1),a mov (_val + 2),a mov (_val + 3),a; genGoto ljmp 00120$; genLabel 00116$:; printfl.c 157; genMinus mov a,_bp add a,#0x01 mov dpx,#0x40 mov dph,#0x00 mov dpl, a movx a,@dptr add a,#0xfe mov r2,a inc dptr movx a,@dptr addc a,#0xff mov r3,a inc dptr movx a,@dptr addc a,#0xff mov r5,a inc dptr movx a,@dptr mov r6,a; genAssign ; genAssign: resultIsFar = TRUE mov a,_bp add a,#0x01 mov dpx,#0x40 mov dph,#0x00 mov dpl, a mov a,r2 movx @dptr,a inc dptr mov a,r3 movx @dptr,a inc dptr mov a,r5 movx @dptr,a inc dptr mov a,r6 movx @dptr,a; genPointerGet ; genGenPointerGet mov dpl,r2 mov dph,r3 mov dpx,r5 mov b,r6 lcall __gptrget mov r2,a inc dptr lcall __gptrget mov r3,a; genCast mov _val,r2 mov (_val + 1),r3 mov a,r3 rlc a subb a,acc mov (_val + 2),a mov (_val + 3),a; genLabel 00120$:; printfl.c 159; genIfx mov a,_radix; genIfxJump ; Peephole 110 removed ljmp by inverse jump logic jz 00122$00164$:; genCall push ar4 lcall _pval pop ar4; genGoto ; genLabel ; Peephole 132 changed ljmp to sjmp sjmp 00129$00122$:; printfl.c 160; genCast mov r2,_val; genCall push ar4 mov dpl,r2 lcall _putchar pop ar4; genGoto ; genLabel ; Peephole 132 changed ljmp to sjmp sjmp 00129$00125$:; printfl.c 163; genCall mov dpl,r4 lcall _putchar; genLabel 00129$:; printfl.c 113; genAssign mov a,_bp add a,#0xf9 mov dpx,#0x40 mov dph,#0x00 mov dpl, a; genAssign: resultIsFar = FALSE movx a,@dptr mov r2,a inc dptr movx a,@dptr mov r3,a inc dptr movx a,@dptr mov r4,a inc dptr movx a,@dptr mov r5,a; genPlus mov a,_bp add a,#0xf9 mov dpx,#0x40 mov dph,#0x00 mov dpl, a mov a,#0x01 add a,r2 movx @dptr,a; Peephole 180 changed mov to clr clr a addc a,r3 inc dptr movx @dptr,a; Peephole 180 changed mov to clr clr a addc a,r4 inc dptr movx @dptr,a inc dptr mov a,r5 movx @dptr,a; genGoto ljmp 00127$; genLabel 00131$:; genEndFunction mov sp,_bp pop _bp ret .area CSEG (CODE)__str_0: .ascii "0123456789ABCDEF" .db 0x00
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -