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

📄 os_sem.asm

📁 此代码是ucos-II在凌阳61单片机上的移植
💻 ASM
📖 第 1 页 / 共 4 页
字号:
	NSJZ L19	//QImode EQ
.debug
	.dw '.stabn 0x44,0,175,',0,0
	.dd LM42-_OSSemDel
	.dw 0x0d,0x0a
.code
LM42:
	R1=[bp+2]	// QImode move
	R1=[bp+2]	// QImode move
	R2=R1+2
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	R2=1	// QImode move
	R3=R1	// QImode move
	[R3]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,176,',0,0
	.dd LM43-_OSSemDel
	.dw 0x0d,0x0a
.code
LM43:
	R1=[bp+2]	// QImode move
	R2=[R1]	// QImode move
	R1=R2	// QImode move
	pc=L16	// Indirect jump
L19:
.debug
	.dw '.stabn 0x44,0,178,',0,0
	.dd LM44-_OSSemDel
	.dw 0x0d,0x0a
.code
LM44:
	R1=[_OSIntNesting]	// QImode move
	CMP R1,0	// QImode test
	NSJZ L20	//QImode EQ
.debug
	.dw '.stabn 0x44,0,179,',0,0
	.dd LM45-_OSSemDel
	.dw 0x0d,0x0a
.code
LM45:
	R1=[bp+2]	// QImode move
	R3=[bp+2]	// QImode move
	R2=R3+2
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	R2=140	// QImode move
	R3=R1	// QImode move
	[R3]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,180,',0,0
	.dd LM46-_OSSemDel
	.dw 0x0d,0x0a
.code
LM46:
	R1=[bp+2]	// QImode move
	R2=[R1]	// QImode move
	R1=R2	// QImode move
	pc=L16	// Indirect jump
L20:
.debug
	.dw '.stabn 0x44,0,182,',0,0
	.dd LM47-_OSSemDel
	.dw 0x0d,0x0a
.code
LM47:
	call _Critical_in	// call with return value
.debug
	.dw '.stabn 0x44,0,183,',0,0
	.dd LM48-_OSSemDel
	.dw 0x0d,0x0a
.code
LM48:
	R3=[bp+2]	// QImode move
	R2=[R3]	// QImode move
	R1=R2	// QImode move
	R2=R2+3
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	CMP R1,0	// QImode test
	NSJZ L21	//QImode EQ
.debug
	.dw '.stabn 0x44,0,184,',0,0
	.dd LM49-_OSSemDel
	.dw 0x0d,0x0a
.code
LM49:
	R1=1	// QImode move
	[BP]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,185,',0,0
	.dd LM50-_OSSemDel
	.dw 0x0d,0x0a
.code
LM50:
	pc=L22	// Indirect jump
L21:
.debug
	.dw '.stabn 0x44,0,186,',0,0
	.dd LM51-_OSSemDel
	.dw 0x0d,0x0a
.code
LM51:
	R1=0	// QImode move
	[BP]=R1	// QImode move
L22:
.debug
	.dw '.stabn 0x44,0,188,',0,0
	.dd LM52-_OSSemDel
	.dw 0x0d,0x0a
.code
LM52:
	R1=[bp+2]	// QImode move
	R1=[bp+2]	// QImode move
	R2=R1+1
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	CMP R1,0	// QImode test
	NSJZ L24	//QImode EQ
	CMP R1,1	// QImode compare
	NSJZ L27	//QImode EQ
	pc=L32	// Indirect jump
.debug
	.dw '.stabn 0x44,0,189,',0,0
	.dd LM53-_OSSemDel
	.dw 0x0d,0x0a
.code
LM53:
LBB5:
L24:
.debug
	.dw '.stabn 0x44,0,190,',0,0
	.dd LM54-_OSSemDel
	.dw 0x0d,0x0a
.code
LM54:
	R1=[BP]	// QImode move
	CMP R1,0	// QImode test
	NSJNZ L25	//QImode NE
.debug
	.dw '.stabn 0x44,0,192,',0,0
	.dd LM55-_OSSemDel
	.dw 0x0d,0x0a
.code
LM55:
LBB6:
	R1=[bp+2]	// QImode move
	R2=[R1]	// QImode move
	R1=R2	// QImode move
	R2=R2+8
	R1=63	// QImode move
	R3=R2	// QImode move
	[R3]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,193,',0,0
	.dd LM56-_OSSemDel
	.dw 0x0d,0x0a
.code
LM56:
	R1=[bp+2]	// QImode move
	R2=[R1]	// QImode move
	R1=R2	// QImode move
	R2=R2+9
	R1=0	// QImode move
	R3=R2	// QImode move
	[R3]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,195,',0,0
	.dd LM57-_OSSemDel
	.dw 0x0d,0x0a
.code
LM57:
	R2=[bp+2]	// QImode move
	R1=[R2]	// QImode move
	R2=0	// QImode move
	R3=R1	// QImode move
	[R3]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,196,',0,0
	.dd LM58-_OSSemDel
	.dw 0x0d,0x0a
.code
LM58:
	R1=[bp+2]	// QImode move
	R2=[R1]	// QImode move
	R1=R2	// QImode move
	R2=R2+1
	R1=[_OSEventFreeList]	// QImode move
	R3=R2	// QImode move
	[R3]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,197,',0,0
	.dd LM59-_OSSemDel
	.dw 0x0d,0x0a
.code
LM59:
	R1=[bp+2]	// QImode move
	R2=[R1]	// QImode move
	R1=R2	// QImode move
	R2=R2+2
	R1=0	// QImode move
	R3=R2	// QImode move
	[R3]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,198,',0,0
	.dd LM60-_OSSemDel
	.dw 0x0d,0x0a
.code
LM60:
	R2=[bp+2]	// QImode move
	R1=[R2]	// QImode move
	[_OSEventFreeList]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,199,',0,0
	.dd LM61-_OSSemDel
	.dw 0x0d,0x0a
.code
LM61:
	call _Critical_out	// call with return value
.debug
	.dw '.stabn 0x44,0,200,',0,0
	.dd LM62-_OSSemDel
	.dw 0x0d,0x0a
.code
LM62:
	R1=[bp+2]	// QImode move
	R3=[bp+2]	// QImode move
	R2=R3+2
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	R2=0	// QImode move
	R3=R1	// QImode move
	[R3]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,201,',0,0
	.dd LM63-_OSSemDel
	.dw 0x0d,0x0a
.code
LM63:
	R1=BP	// QImode move
	R2=BP+1
	R1=0	// QImode move
	R3=R2	// QImode move
	[R3]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,202,',0,0
	.dd LM64-_OSSemDel
	.dw 0x0d,0x0a
.code
LM64:
LBE6:
	pc=L26	// Indirect jump
L25:
.debug
	.dw '.stabn 0x44,0,203,',0,0
	.dd LM65-_OSSemDel
	.dw 0x0d,0x0a
.code
LM65:
LBB7:
	call _Critical_out	// call with return value
.debug
	.dw '.stabn 0x44,0,204,',0,0
	.dd LM66-_OSSemDel
	.dw 0x0d,0x0a
.code
LM66:
	R1=[bp+2]	// QImode move
	R1=[bp+2]	// QImode move
	R2=R1+2
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	R2=8	// QImode move
	R3=R1	// QImode move
	[R3]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,205,',0,0
	.dd LM67-_OSSemDel
	.dw 0x0d,0x0a
.code
LM67:
	R1=BP	// QImode move
	R2=BP+1
	R3=[bp+2]	// QImode move
	R1=[R3]	// QImode move
	R3=R2	// QImode move
	[R3]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,206,',0,0
	.dd LM68-_OSSemDel
	.dw 0x0d,0x0a
.code
LM68:
LBE7:
L26:
.debug
	.dw '.stabn 0x44,0,207,',0,0
	.dd LM69-_OSSemDel
	.dw 0x0d,0x0a
.code
LM69:
	pc=L23	// Indirect jump
L27:
.debug
	.dw '.stabn 0x44,0,210,',0,0
	.dd LM70-_OSSemDel
	.dw 0x0d,0x0a
.code
LM70:
L28:
	R1=[bp+2]	// QImode move
	R2=[R1]	// QImode move
	R1=R2	// QImode move
	R2=R2+3
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	CMP R1,0	// QImode test
	NSJNZ L30	//QImode NE
	pc=L29	// Indirect jump
L30:
.debug
	.dw '.stabn 0x44,0,211,',0,0
	.dd LM71-_OSSemDel
	.dw 0x0d,0x0a
.code
LM71:
	R1=1	// QImode move
	[SP--]=R1	// QImode move
	R1=0	// QImode move
	[SP--]=R1	// QImode move
	R2=[bp+2]	// QImode move
	R1=[R2]	// QImode move
	[SP--]=R1	// QImode move
	call _OS_EventTaskRdy	// call with return value
	SP = SP + 3	//SP
.debug
	.dw '.stabn 0x44,0,212,',0,0
	.dd LM72-_OSSemDel
	.dw 0x0d,0x0a
.code
LM72:
	pc=L28	// Indirect jump
L29:
.debug
	.dw '.stabn 0x44,0,214,',0,0
	.dd LM73-_OSSemDel
	.dw 0x0d,0x0a
.code
LM73:
	R3=[bp+2]	// QImode move
	R2=[R3]	// QImode move
	R1=R2	// QImode move
	R2=R2+8
	R1=63	// QImode move
	R3=R2	// QImode move
	[R3]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,215,',0,0
	.dd LM74-_OSSemDel
	.dw 0x0d,0x0a
.code
LM74:
	R1=[bp+2]	// QImode move
	R2=[R1]	// QImode move
	R1=R2	// QImode move
	R2=R2+9
	R1=0	// QImode move
	R3=R2	// QImode move
	[R3]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,217,',0,0
	.dd LM75-_OSSemDel
	.dw 0x0d,0x0a
.code
LM75:
	R2=[bp+2]	// QImode move
	R1=[R2]	// QImode move
	R2=0	// QImode move
	R3=R1	// QImode move
	[R3]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,218,',0,0
	.dd LM76-_OSSemDel
	.dw 0x0d,0x0a
.code
LM76:
	R1=[bp+2]	// QImode move
	R2=[R1]	// QImode move
	R1=R2	// QImode move
	R2=R2+1
	R1=[_OSEventFreeList]	// QImode move
	R3=R2	// QImode move
	[R3]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,219,',0,0
	.dd LM77-_OSSemDel
	.dw 0x0d,0x0a
.code
LM77:
	R1=[bp+2]	// QImode move
	R2=[R1]	// QImode move
	R1=R2	// QImode move
	R2=R2+2
	R1=0	// QImode move
	R3=R2	// QImode move
	[R3]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,220,',0,0
	.dd LM78-_OSSemDel
	.dw 0x0d,0x0a
.code
LM78:
	R2=[bp+2]	// QImode move
	R1=[R2]	// QImode move
	[_OSEventFreeList]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,221,',0,0
	.dd LM79-_OSSemDel
	.dw 0x0d,0x0a
.code
LM79:
	call _Critical_out	// call with return value
.debug
	.dw '.stabn 0x44,0,222,',0,0
	.dd LM80-_OSSemDel
	.dw 0x0d,0x0a
.code
LM80:
	R1=[BP]	// QImode move
	CMP R1,1	// QImode compare
	NSJNZ L31	//QImode NE
.debug
	.dw '.stabn 0x44,0,223,',0,0
	.dd LM81-_OSSemDel
	.dw 0x0d,0x0a
.code
LM81:
	call _OS_Sched	// call without return value
L31:
.debug
	.dw '.stabn 0x44,0,225,',0,0
	.dd LM82-_OSSemDel
	.dw 0x0d,0x0a
.code
LM82:
	R1=[bp+2]	// QImode move
	R3=[bp+2]	// QImode move
	R2=R3+2
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	R2=0	// QImode move
	R3=R1	// QImode move
	[R3]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,226,',0,0
	.dd LM83-_OSSemDel
	.dw 0x0d,0x0a
.code
LM83:
	R1=BP	// QImode move
	R2=BP+1
	R1=0	// QImode move
	R3=R2	// QImode move
	[R3]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,227,',0,0
	.dd LM84-_OSSemDel
	.dw 0x0d,0x0a
.code
LM84:
	pc=L23	// Indirect jump
L32:
.debug
	.dw '.stabn 0x44,0,230,',0,0
	.dd LM85-_OSSemDel
	.dw 0x0d,0x0a
.code
LM85:
	call _Critical_out	// call with return value
.debug
	.dw '.stabn 0x44,0,231,',0,0
	.dd LM86-_OSSemDel
	.dw 0x0d,0x0a
.code
LM86:
	R1=[bp+2]	// QImode move
	R1=[bp+2]	// QImode move
	R2=R1+2
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	R2=7	// QImode move
	R3=R1	// QImode move
	[R3]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,232,',0,0
	.dd LM87-_OSSemDel
	.dw 0x0d,0x0a
.code
LM87:
	R1=BP	// QImode move
	R2=BP+1
	R3=[bp+2]	// QImode move
	R1=[R3]	// QImode move
	R3=R2	// QImode move
	[R3]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,233,',0,0
	.dd LM88-_OSSemDel
	.dw 0x0d,0x0a
.code
LM88:
	pc=L23	// Indirect jump
.debug
	.dw '.stabn 0x44,0,234,',0,0
	.dd LM89-_OSSemDel
	.dw 0x0d,0x0a
.code
LM89:
LBE5:
L23:
.debug
	.dw '.stabn 0x44,0,235,',0,0
	.dd LM90-_OSSemDel
	.dw 0x0d,0x0a
.code
LM90:
	R1=BP	// QImode move
	R2=BP+1
	R1=R2	// QImode move
	R3=[R1]	// QImode move
	R1=R3	// QImode move
	pc=L16	// Indirect jump
.debug
	.dw '.stabn 0x44,0,236,',0,0
	.dd LM91-_OSSemDel
	.dw 0x0d,0x0a
.code
LM91:
LBE4:
.debug
	.dw '.stabn 0x44,0,236,',0,0
	.dd LM92-_OSSemDel
	.dw 0x0d,0x0a
.code
LM92:
L16:

	sp+=3
	pop bp from [sp]
	retf
	.endp	// end of OSSemDel

.debug
	.dw '.stabs "pevent:p42",160,0,0,6',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "opt:p21",160,0,0,7',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "err:p45=*21",160,0,0,8',0x0d,0x0a
.CODE
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB4-_OSSemDel
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabs "tasks_waiting:20",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "pevent_return:42",128,0,0,1',0x0d,0x0a
.CODE
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB5-_OSSemDel
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB6-_OSSemDel
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE6-_OSSemDel
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB7-_OSSemDel
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE7-_OSSemDel
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE5-_OSSemDel
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE4-_OSSemDel
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabf ',0,0
	.dd LME3-_OSSemDel
	.dw 0x0d,0x0a
.code
LME3:
.code
.debug
	.dw '.stabs "OSSemPend:F19",36,0,0,',0,0,offset _OSSemPend,seg _OSSemPend,0x0d,0x0a
.CODE
.public _OSSemPend
_OSSemPend:	.proc
.debug
	.dw '.stabn 0x44,0,271,',0,0
	.dd LM93-_OSSemPend
	.dw 0x0d,0x0a
.code
LM93:
	// total=1, vars=1
	// frame_pointer_needed: 1
	push bp to [sp]
	sp-=1
	bp=sp+1

⌨️ 快捷键说明

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