📄 _strncat.asm
字号:
;--------------------------------------------------------; File Created by SDCC : FreeWare ANSI-C Compiler; Version 2.3.0 Thu Sep 20 10:57:52 2001;-------------------------------------------------------- .module _strncat ;--------------------------------------------------------; Public variables in this module;-------------------------------------------------------- .globl _strncat;--------------------------------------------------------; special function registers;--------------------------------------------------------;--------------------------------------------------------; special function bits ;--------------------------------------------------------;--------------------------------------------------------; internal ram data;-------------------------------------------------------- .area _DATA;--------------------------------------------------------; overlayable items in internal ram ;-------------------------------------------------------- .area _OVERLAY;--------------------------------------------------------; indirectly addressable internal ram data;-------------------------------------------------------- .area _ISEG;--------------------------------------------------------; bit data;-------------------------------------------------------- .area _BSEG;--------------------------------------------------------; external ram data;-------------------------------------------------------- .area _XSEG;--------------------------------------------------------; global & static initialisations;-------------------------------------------------------- .area _GSINIT .area _GSFINAL .area _GSINIT;--------------------------------------------------------; Home;-------------------------------------------------------- .area _HOME .area _CODE;--------------------------------------------------------; code;-------------------------------------------------------- .area _CODE; _strncat.c 27; genLabel; genFunction; ---------------------------------; Function strncat; ---------------------------------___strncat_start:_strncat: lda sp,-3(sp); _strncat.c 33; genAssign; AOP_STK for ; AOP_STK for _strncat_start_1_1 lda hl,5(sp) ld a,(hl+) ld e,(hl) lda hl,1(sp) ld (hl+),a ld (hl),e; _strncat.c 35; genLabel00101$:; genAssign; AOP_STK for lda hl,5(sp) ld c,(hl) inc hl ld b,(hl); genPointerGet; AOP_STK for _strncat_sloc0_1_0 ld a,(bc) lda hl,0(sp) ld (hl),a; genPlus; genPlusIncr inc bc; genAssign; AOP_STK for lda hl,5(sp) ld (hl),c inc hl ld (hl),b; genIfx; AOP_STK for _strncat_sloc0_1_0 xor a,a lda hl,0(sp); Rule 8: Removed redundent or for (ix) or a,(hl) jp nz,00101$; _strncat.c 37; genMinus; AOP_STK for ; Rule 1: Removed redundent load; Rule 1: Removed redundent load ld de,#0x0001 ld a,c sub a,e ld e,a ld a,b sbc a,d lda hl,6(sp) ld (hl-),a ld (hl),e; genAssign; (operands are equal 4); _strncat.c 39; genAssign; (operands are equal 3); genAssign; AOP_STK for ; (registers are the same); genAssign; (operands are equal 3); genLabel00106$:; genAssign; AOP_STK for lda hl,9(sp) ld c,(hl) inc hl ld b,(hl); genMinus; AOP_STK for dec hl ld e,(hl) inc hl ld d,(hl) dec de dec hl ld (hl),e inc hl ld (hl),d; genIfx ld a,c; Rule 7: Removed redundent or or a,b jp z,00108$; _strncat.c 40; genPointerGet; AOP_STK for lda hl,7(sp) ld e,(hl) inc hl ld d,(hl) ld a,(de) ld c,a; genPlus; AOP_STK for ; genPlusIncr dec hl inc (hl) jr nz,00116$ inc hl inc (hl)00116$:; genAssign (pointer); AOP_STK for lda hl,5(sp) ld e,(hl) inc hl ld d,(hl) ld a,c ld (de),a; genPlus; AOP_STK for ; genPlusIncr dec hl inc (hl) jr nz,00117$ inc hl inc (hl)00117$:; genAssign; (operands are equal 4); genIfx xor a,a or a,c jp nz,00106$; _strncat.c 41; genRet; AOP_STK for _strncat_start_1_1 lda hl,1(sp) ld e,(hl) inc hl ld d,(hl) jp 00109$; genLabel00108$:; _strncat.c 43; genAssign; AOP_STK for lda hl,5(sp) ld e,(hl) inc hl ld d,(hl); genAssign (pointer) ld a,#0x00 ld (de),a; _strncat.c 44; genRet; AOP_STK for _strncat_start_1_1 lda hl,1(sp) ld e,(hl) inc hl ld d,(hl); genLabel00109$:; genEndFunction lda sp,3(sp) ret___strncat_end: .area _CODE
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -