
user_uart.elf:     file format elf32-littleriscv


Disassembly of section .text.init:

00000000 <SIM_EXIT-0xf4>:
	...

000000f4 <SIM_EXIT>:
  f4:	00000013          	nop

000000f8 <SIM_STOP>:
  f8:	0000006f          	j	f8 <SIM_STOP>
  fc:	ffff                	0xffff
  fe:	ffff                	0xffff

Disassembly of section .text:

00000100 <machine_trap_entry-0xc0>:
	...

000001c0 <machine_trap_entry>:
 1c0:	1200006f          	j	2e0 <trap_entry>
 1c4:	00000013          	nop
 1c8:	00000013          	nop
 1cc:	00000013          	nop
 1d0:	00000013          	nop
 1d4:	00000013          	nop
 1d8:	00000013          	nop
 1dc:	00000013          	nop
 1e0:	00000013          	nop
 1e4:	00000013          	nop
 1e8:	00000013          	nop
 1ec:	00000013          	nop
 1f0:	00000013          	nop
 1f4:	00000013          	nop
 1f8:	00000013          	nop
 1fc:	00000013          	nop

00000200 <_start>:
 200:	00000093          	li	ra,0
 204:	00000113          	li	sp,0
 208:	00000193          	li	gp,0
 20c:	00000213          	li	tp,0
 210:	00000293          	li	t0,0
 214:	00000313          	li	t1,0
 218:	00000393          	li	t2,0
 21c:	00000413          	li	s0,0
 220:	00000493          	li	s1,0
 224:	00000513          	li	a0,0
 228:	00000593          	li	a1,0
 22c:	00000613          	li	a2,0
 230:	00000693          	li	a3,0
 234:	00000713          	li	a4,0
 238:	00000793          	li	a5,0
 23c:	00000813          	li	a6,0
 240:	00000893          	li	a7,0
 244:	00000913          	li	s2,0
 248:	00000993          	li	s3,0
 24c:	00000a13          	li	s4,0
 250:	00000a93          	li	s5,0
 254:	00000b13          	li	s6,0
 258:	00000b93          	li	s7,0
 25c:	00000c13          	li	s8,0
 260:	00000c93          	li	s9,0
 264:	00000d13          	li	s10,0
 268:	00000d93          	li	s11,0
 26c:	00000e13          	li	t3,0
 270:	00000e93          	li	t4,0
 274:	00000f13          	li	t5,0
 278:	00000f93          	li	t6,0
 27c:	08000197          	auipc	gp,0x8000
 280:	58418193          	addi	gp,gp,1412 # 8000800 <__global_pointer$>
 284:	08000597          	auipc	a1,0x8000
 288:	d7c58593          	addi	a1,a1,-644 # 8000000 <__BSS_START__>
 28c:	08000617          	auipc	a2,0x8000
 290:	d7460613          	addi	a2,a2,-652 # 8000000 <__BSS_START__>
 294:	a021                	j	29c <_start+0x9c>
 296:	0005a023          	sw	zero,0(a1)
 29a:	0591                	addi	a1,a1,4
 29c:	fec59de3          	bne	a1,a2,296 <_start+0x96>
 2a0:	0c480117          	auipc	sp,0xc480
 2a4:	56010113          	addi	sp,sp,1376 # c480800 <__C_STACK_TOP__>
 2a8:	0c4902b7          	lui	t0,0xc490
 2ac:	4305                	li	t1,1
 2ae:	0062a023          	sw	t1,0(t0) # c490000 <__C_STACK_TOP__+0xf800>
 2b2:	0c4902b7          	lui	t0,0xc490
 2b6:	00428293          	addi	t0,t0,4 # c490004 <__C_STACK_TOP__+0xf804>
 2ba:	06300313          	li	t1,99
 2be:	0062a023          	sw	t1,0(t0)
 2c2:	0c4902b7          	lui	t0,0xc490
 2c6:	01028293          	addi	t0,t0,16 # c490010 <__C_STACK_TOP__+0xf810>
 2ca:	537d                	li	t1,-1
 2cc:	0062a023          	sw	t1,0(t0)
 2d0:	0062a223          	sw	t1,4(t0)
 2d4:	4501                	li	a0,0
 2d6:	4581                	li	a1,0
 2d8:	0a8000ef          	jal	ra,380 <main>
 2dc:	0c40006f          	j	3a0 <sc_exit>

000002e0 <trap_entry>:
 2e0:	716d                	addi	sp,sp,-272
 2e2:	c206                	sw	ra,4(sp)
 2e4:	c40a                	sw	sp,8(sp)
 2e6:	c60e                	sw	gp,12(sp)
 2e8:	c812                	sw	tp,16(sp)
 2ea:	ca16                	sw	t0,20(sp)
 2ec:	cc1a                	sw	t1,24(sp)
 2ee:	ce1e                	sw	t2,28(sp)
 2f0:	d022                	sw	s0,32(sp)
 2f2:	d226                	sw	s1,36(sp)
 2f4:	d42a                	sw	a0,40(sp)
 2f6:	d62e                	sw	a1,44(sp)
 2f8:	d832                	sw	a2,48(sp)
 2fa:	da36                	sw	a3,52(sp)
 2fc:	dc3a                	sw	a4,56(sp)
 2fe:	de3e                	sw	a5,60(sp)
 300:	c0c2                	sw	a6,64(sp)
 302:	c2c6                	sw	a7,68(sp)
 304:	c4ca                	sw	s2,72(sp)
 306:	c6ce                	sw	s3,76(sp)
 308:	c8d2                	sw	s4,80(sp)
 30a:	cad6                	sw	s5,84(sp)
 30c:	ccda                	sw	s6,88(sp)
 30e:	cede                	sw	s7,92(sp)
 310:	d0e2                	sw	s8,96(sp)
 312:	d2e6                	sw	s9,100(sp)
 314:	d4ea                	sw	s10,104(sp)
 316:	d6ee                	sw	s11,108(sp)
 318:	d8f2                	sw	t3,112(sp)
 31a:	daf6                	sw	t4,116(sp)
 31c:	dcfa                	sw	t5,120(sp)
 31e:	defe                	sw	t6,124(sp)
 320:	34202573          	csrr	a0,mcause
 324:	341025f3          	csrr	a1,mepc
 328:	860a                	mv	a2,sp
 32a:	048000ef          	jal	ra,372 <handle_trap>
 32e:	4092                	lw	ra,4(sp)
 330:	4122                	lw	sp,8(sp)
 332:	41b2                	lw	gp,12(sp)
 334:	4242                	lw	tp,16(sp)
 336:	42d2                	lw	t0,20(sp)
 338:	4362                	lw	t1,24(sp)
 33a:	43f2                	lw	t2,28(sp)
 33c:	5402                	lw	s0,32(sp)
 33e:	5492                	lw	s1,36(sp)
 340:	5522                	lw	a0,40(sp)
 342:	55b2                	lw	a1,44(sp)
 344:	5642                	lw	a2,48(sp)
 346:	56d2                	lw	a3,52(sp)
 348:	5762                	lw	a4,56(sp)
 34a:	57f2                	lw	a5,60(sp)
 34c:	4806                	lw	a6,64(sp)
 34e:	4896                	lw	a7,68(sp)
 350:	4926                	lw	s2,72(sp)
 352:	49b6                	lw	s3,76(sp)
 354:	4a46                	lw	s4,80(sp)
 356:	4ad6                	lw	s5,84(sp)
 358:	4b66                	lw	s6,88(sp)
 35a:	4bf6                	lw	s7,92(sp)
 35c:	5c06                	lw	s8,96(sp)
 35e:	5c96                	lw	s9,100(sp)
 360:	5d26                	lw	s10,104(sp)
 362:	5db6                	lw	s11,108(sp)
 364:	5e46                	lw	t3,112(sp)
 366:	5ed6                	lw	t4,116(sp)
 368:	5f66                	lw	t5,120(sp)
 36a:	5ff6                	lw	t6,124(sp)
 36c:	6151                	addi	sp,sp,272
 36e:	30200073          	mret

00000372 <handle_trap>:
 372:	d83ff06f          	j	f4 <SIM_EXIT>
	...

00000380 <main>:
 380:	10010737          	lui	a4,0x10010
 384:	531c                	lw	a5,32(a4)
 386:	dffd                	beqz	a5,384 <main+0x4>
 388:	01872283          	lw	t0,24(a4) # 10010018 <__C_STACK_TOP__+0x3b8f818>
 38c:	00572a23          	sw	t0,20(a4)
 390:	bfd5                	j	384 <main+0x4>
	...

000003a0 <sc_exit>:
 3a0:	00000297          	auipc	t0,0x0
 3a4:	d5428293          	addi	t0,t0,-684 # f4 <SIM_EXIT>
 3a8:	8282                	jr	t0
 3aa:	00000013          	nop
 3ae:	00000013          	nop
 3b2:	00000013          	nop
 3b6:	00000013          	nop
 3ba:	00000013          	nop
 3be:	0001                	nop
	...

Disassembly of section .stack:

0c480400 <__C_STACK_TOP__-0x400>:
	...

Disassembly of section .comment:

00000000 <.comment>:
   0:	3a434347          	fmsub.d	ft6,ft6,ft4,ft7,rmm
   4:	2820                	fld	fs0,80(s0)
   6:	29554e47          	fmsub.s	ft8,fa0,fs5,ft5,rmm
   a:	3620                	fld	fs0,104(a2)
   c:	312e                	fld	ft2,232(sp)
   e:	302e                	fld	ft0,232(sp)
	...
