Skip to content
Snippets Groups Projects
main.s 1.61 KiB
	.file	"main.c"
	.section	.rodata
	.align	2
.LC0:
	.ascii	"main: Active->Priority: %d\012\015\000"
	.text
	.align	2
	.global	main
	.type	main, %function
main:
	@ args = 0, pretend = 0, frame = 2780
	@ frame_needed = 1, uses_anonymous_args = 0
	mov	ip, sp
	stmfd	sp!, {sl, fp, ip, lr, pc}
	sub	fp, ip, #4
	sub	sp, sp, #2768
	sub	sp, sp, #12
	ldr	sl, .L10
.L9:
	add	sl, pc, sl
	bl	InitSwi(PLT)
	sub	r3, fp, #2784
	sub	r3, r3, #12
	mov	r0, r3
	bl	kernelInit(PLT)
	sub	r3, fp, #2784
	sub	r3, r3, #12
	mov	r0, r3
	mov	r1, #4
	ldr	r3, .L10+4
	ldr	r3, [sl, r3]
	mov	r2, r3
	bl	CreateTask(PLT)
	mov	r3, r0
	str	r3, [fp, #-28]
	sub	r3, fp, #2784
	sub	r3, r3, #12
	mov	r0, r3
	ldr	r1, [fp, #-28]
	bl	pushToScheduler(PLT)
	mov	r3, #0
	str	r3, [fp, #-20]
.L2:
	ldr	r3, [fp, #-2796]
	cmp	r3, #0
	bne	.L3
	mov	r3, #0
	str	r3, [fp, #-20]
	sub	r3, fp, #2784
	sub	r3, r3, #12
	mov	r0, r3
	bl	getNextTaskScheduler(PLT)
	mov	r3, r0
	str	r3, [fp, #-24]
	b	.L5
.L3:
	ldr	r3, [fp, #-2796]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #12]
	str	r3, [fp, #-20]
.L5:
	ldr	r3, [fp, #-24]
	cmp	r3, #0
	beq	.L6
	ldr	r3, [fp, #-24]
	ldr	r2, [r3, #32]
	mov	r0, #1
	ldr	r3, .L10+8
	add	r3, sl, r3
	mov	r1, r3
	bl	bwprintf(PLT)
	sub	r3, fp, #2784
	sub	r3, r3, #12
	mov	r0, r3
	ldr	r1, [fp, #-24]
	bl	Activate(PLT)
	mov	r3, r0
	str	r3, [fp, #-36]
	sub	r3, fp, #2784
	sub	r3, r3, #12
	mov	r0, r3
	ldr	r1, [fp, #-36]
	bl	Handle(PLT)
	b	.L2
.L6:
	mov	r3, #0
	mov	r0, r3
	sub	sp, fp, #16
	ldmfd	sp, {sl, fp, sp, pc}
.L11:
	.align	2
.L10:
	.word	_GLOBAL_OFFSET_TABLE_-(.L9+8)
	.word	firstUserTaskChildren(GOT)
	.word	.LC0(GOTOFF)
	.size	main, .-main
	.ident	"GCC: (GNU) 4.0.2"