⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 malloc.asm

📁 很少见的源码公开的msc51和z80的c编译器。
💻 ASM
📖 第 1 页 / 共 2 页
字号:
;	genLabel 00109$:;	malloc.c 90;	genIfx 	mov	dptr,#_malloc_sloc0_1_0	push	b	movx	a,@dptr	mov	b, a	inc	dptr	movx	a,@dptr	orl	b,a	mov	a,b	pop	b;	genIfxJump 	jz	00125$	ljmp	00111$00125$:;	malloc.c 92;	genPointerSet 	mov	dptr,#_malloc_sloc1_1_0;	genFarPointerSet -- indirection special case.	movx	a,@dptr	push	acc	inc	dptr	movx	a,@dptr	push	acc	inc	dptr	movx	a,@dptr	mov	dpx,a	pop	dph	pop	dpl	mov     dps, #0x01	mov     dptr, #_malloc_size_1_1	movx	a,@dptr	dec	dps	movx	@dptr,a	inc	dptr	inc	dps	inc	dptr	movx	a,@dptr	dec	dps	movx	@dptr,a;	malloc.c 93;	genPlus 	mov	dptr,#_malloc_sloc2_1_0	mov	a,#0x08	add	a,r4	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,r6	inc	dptr	movx	@dptr,a;	genCast 	mov	dptr,#_malloc_sloc2_1_0	mov	dps, #0x01	mov	dptr, #_malloc_sloc1_1_0	dec	dps	movx	a,@dptr	inc	dps	movx	@dptr,a	dec	dps	inc	dptr	movx	a,@dptr	inc	dps	inc	dptr	movx	@dptr,a	dec	dps	inc	dptr	movx	a,@dptr	inc	dps	inc	dptr	movx	@dptr,a;	genRet ; Peephole 220a removed bogus DPS set	mov     dps, #0x01	mov     dptr, #_malloc_sloc1_1_0	movx	a,@dptr	mov	dpl,a	inc	dptr	movx	a,@dptr	mov	dph,a	inc	dptr	movx	a,@dptr	mov	dpx,a	mov	dps, #0x00	ljmp	00114$;	genLabel 00111$:;	malloc.c 95;	genPlus 	mov	dptr,#_malloc_sloc0_1_0	mov	dps, #0x01	mov	dptr, #_malloc_new_header_1_1	dec	dps	movx	a,@dptr	add	a,r4	inc	dps	movx	@dptr,a	dec	dps	inc	dptr	movx	a,@dptr	addc	a,r5	inc	dps	inc	dptr	movx	@dptr,a; Peephole 180   changed mov to clr	clr  a	addc	a,r6	inc	dptr	movx	@dptr,a	mov	dps, #0x00;	malloc.c 96;	genPointerSet 	mov	dptr,#_malloc_new_header_1_1;	genFarPointerSet -- indirection special case.	movx	a,@dptr	push	acc	inc	dptr	movx	a,@dptr	push	acc	inc	dptr	movx	a,@dptr	mov	dpx,a	pop	dph	pop	dpl	mov	a,r7	movx	@dptr,a	inc	dptr	mov	a,r0	movx	@dptr,a	inc	dptr	mov	a,r1	movx	@dptr,a;	malloc.c 97;	genPlus 	mov	dptr,#_malloc_new_header_1_1	mov	dps, #0x01	mov	dptr, #_malloc_sloc2_1_0	dec	dps;	Swapped plus args.	movx	a,@dptr	add	a,#0x03	inc	dps	movx	@dptr,a	dec	dps	inc	dptr	movx	a,@dptr	addc	a,#0x00	inc	dps	inc	dptr	movx	@dptr,a	dec	dps	inc	dptr	movx	a,@dptr	addc	a,#0x00	inc	dps	inc	dptr	movx	@dptr,a	mov	dps, #0x00;	genPointerSet 	mov	dptr,#_malloc_sloc2_1_0;	genFarPointerSet -- indirection special case.	movx	a,@dptr	push	acc	inc	dptr	movx	a,@dptr	push	acc	inc	dptr	movx	a,@dptr	mov	dpx,a	pop	dph	pop	dpl	mov	a,r4	movx	@dptr,a	inc	dptr	mov	a,r5	movx	@dptr,a	inc	dptr	mov	a,r6	movx	@dptr,a;	malloc.c 98;	genPointerSet 	mov	dpl,r4	mov	dph,r5	mov	dpx,r6	mov     dps, #0x01	mov     dptr, #_malloc_new_header_1_1	movx	a,@dptr	dec	dps	movx	@dptr,a	inc	dptr	inc	dps	inc	dptr	movx	a,@dptr	dec	dps	movx	@dptr,a	inc	dptr	inc	dps	inc	dptr	movx	a,@dptr	dec	dps	movx	@dptr,a;	malloc.c 99;	genIfx 	mov	a,r7	orl	a,r0	orl	a,r1;	genIfxJump 	jnz	00126$	ljmp	00113$00126$:;	genPointerGet ;	genFarPointerGet	mov	dptr,#_malloc_new_header_1_1;	genFarPointerGet -- indirection special case.	movx	a,@dptr	push	acc	inc	dptr	movx	a,@dptr	push	acc	inc	dptr	movx	a,@dptr	mov	dpx,a	pop	dph	pop	dpl	movx	a,@dptr	inc	dptr	mov	r2,a	movx	a,@dptr	inc	dptr	mov	r3,a	movx	a,@dptr	mov	r4,a;	genPlus 	mov	a,#0x03	add	a,r2	mov	r2,a; Peephole 180   changed mov to clr	clr  a	addc	a,r3	mov	r3,a; Peephole 180   changed mov to clr	clr  a	addc	a,r4	mov	r4,a;	genPointerSet 	mov	dpl,r2	mov	dph,r3	mov	dpx,r4	mov     dps, #0x01	mov     dptr, #_malloc_new_header_1_1	movx	a,@dptr	dec	dps	movx	@dptr,a	inc	dptr	inc	dps	inc	dptr	movx	a,@dptr	dec	dps	movx	@dptr,a	inc	dptr	inc	dps	inc	dptr	movx	a,@dptr	dec	dps	movx	@dptr,a;	genLabel 00113$:;	malloc.c 100;	genPlus 	mov	dptr,#_malloc_new_header_1_1;	Swapped plus args.	movx	a,@dptr	add	a,#0x06	mov	r2,a	inc	dptr	movx	a,@dptr	addc	a,#0x00	mov	r3,a	inc	dptr	movx	a,@dptr	addc	a,#0x00	mov	r4,a;	genPointerSet 	mov	dpl,r2	mov	dph,r3	mov	dpx,r4	mov     dps, #0x01	mov     dptr, #_malloc_size_1_1	movx	a,@dptr	dec	dps	movx	@dptr,a	inc	dptr	inc	dps	inc	dptr	movx	a,@dptr	dec	dps	movx	@dptr,a;	malloc.c 101;	genPlus 	mov	dptr,#_malloc_new_header_1_1;	Swapped plus args.	movx	a,@dptr	add	a,#0x08	mov	r2,a	inc	dptr	movx	a,@dptr	addc	a,#0x00	mov	r3,a	inc	dptr	movx	a,@dptr	addc	a,#0x00	mov	r4,a;	genCast ;	genRet 	mov	dpl,r2	mov	dph,r3	mov	dpx,r4;	genLabel 00114$:;	genEndFunction 	ret;	malloc.c 104;	genFunction ;	-----------------------------------------;	 function free;	-----------------------------------------_free:;	malloc.c 0;	genReceive 	mov	r2,dpl	mov	r3,dph	mov	r4,dpx;	malloc.c 107;	genIfx 	mov	a,r2	orl	a,r3	orl	a,r4;	genIfxJump 	jnz	00113$	ljmp	00108$00113$:;	malloc.c 109;	genMinus 	mov	a,r2	add	a,#0xf8	mov	r5,a	mov	a,r3	addc	a,#0xff	mov	r6,a	mov	a,r4	addc	a,#0xff	mov	r7,a;	genAssign ;	genAssign: resultIsFar = TRUE	mov	ar2,r5	mov	ar3,r6	mov	ar4,r7;	malloc.c 110;	genPlus 	mov	a,#0x03	add	a,r2	mov	r5,a; Peephole 180   changed mov to clr	clr  a	addc	a,r3	mov	r6,a; Peephole 180   changed mov to clr	clr  a	addc	a,r4	mov	r7,a;	genPointerGet ;	genFarPointerGet	mov	dpl,r5	mov	dph,r6	mov	dpx,r7	movx	a,@dptr	inc	dptr	mov	r5,a	movx	a,@dptr	inc	dptr	mov	r6,a	movx	a,@dptr	mov	r7,a;	genIfx 	mov	a,r5	orl	a,r6	orl	a,r7;	genIfxJump 	jnz	00114$	ljmp	00104$00114$:;	malloc.c 112;	genAssign ;	genAssign: resultIsFar = TRUE	mov	dptr,#_free_prev_header_1_1	mov	a,r5	movx	@dptr,a	inc	dptr	mov	a,r6	movx	@dptr,a	inc	dptr	mov	a,r7	movx	@dptr,a;	malloc.c 113;	genPointerGet ;	genFarPointerGet	mov	dpl,r2	mov	dph,r3	mov	dpx,r4	movx	a,@dptr	inc	dptr	mov	r0,a	movx	a,@dptr	inc	dptr	mov	r1,a	movx	a,@dptr	mov	r5,a;	genPointerSet 	mov	dptr,#_free_prev_header_1_1;	genFarPointerSet -- indirection special case.	movx	a,@dptr	push	acc	inc	dptr	movx	a,@dptr	push	acc	inc	dptr	movx	a,@dptr	mov	dpx,a	pop	dph	pop	dpl	mov	a,r0	movx	@dptr,a	inc	dptr	mov	a,r1	movx	@dptr,a	inc	dptr	mov	a,r5	movx	@dptr,a;	malloc.c 114;	genIfx 	mov	a,r0	orl	a,r1	orl	a,r5;	genIfxJump 	jnz	00115$	ljmp	00108$00115$:;	genPlus 	mov	a,#0x03	add	a,r0	mov	r0,a; Peephole 180   changed mov to clr	clr  a	addc	a,r1	mov	r1,a; Peephole 180   changed mov to clr	clr  a	addc	a,r5	mov	r5,a;	genPointerSet 	mov	dpl,r0	mov	dph,r1	mov	dpx,r5	mov     dps, #0x01	mov     dptr, #_free_prev_header_1_1	movx	a,@dptr	dec	dps	movx	@dptr,a	inc	dptr	inc	dps	inc	dptr	movx	a,@dptr	dec	dps	movx	@dptr,a	inc	dptr	inc	dps	inc	dptr	movx	a,@dptr	dec	dps	movx	@dptr,a;	genGoto ;	genLabel ; Peephole 132   changed ljmp to sjmp	sjmp 00108$00104$:;	malloc.c 116;	genPlus 	mov	a,#0x06	add	a,r2	mov	r2,a; Peephole 180   changed mov to clr	clr  a	addc	a,r3	mov	r3,a; Peephole 180   changed mov to clr	clr  a	addc	a,r4	mov	r4,a;	genPointerSet 	mov	dpl,r2	mov	dph,r3	mov	dpx,r4; Peephole 101   removed redundant mov; Peephole 180   changed mov to clr	clr  a	movx @dptr,a	inc  dptr	movx @dptr,a;	genLabel 00108$:;	genEndFunction 	ret	.area CSEG    (CODE)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -