
rv64uf-v-fcvt:     file format elf64-littleriscv


Disassembly of section .text.init:

0000000080000000 <_start>:
    80000000:	00c0006f          	j	8000000c <handle_reset>

0000000080000004 <nmi_vector>:
    80000004:	2600206f          	j	80002264 <wtf>

0000000080000008 <trap_vector>:
    80000008:	25c0206f          	j	80002264 <wtf>

000000008000000c <handle_reset>:
    8000000c:	00000093          	li	ra,0
    80000010:	00000113          	li	sp,0
    80000014:	00000193          	li	gp,0
    80000018:	00000213          	li	tp,0
    8000001c:	00000293          	li	t0,0
    80000020:	00000313          	li	t1,0
    80000024:	00000393          	li	t2,0
    80000028:	00000413          	li	s0,0
    8000002c:	00000493          	li	s1,0
    80000030:	00000513          	li	a0,0
    80000034:	00000593          	li	a1,0
    80000038:	00000613          	li	a2,0
    8000003c:	00000693          	li	a3,0
    80000040:	00000713          	li	a4,0
    80000044:	00000793          	li	a5,0
    80000048:	00000813          	li	a6,0
    8000004c:	00000893          	li	a7,0
    80000050:	00000913          	li	s2,0
    80000054:	00000993          	li	s3,0
    80000058:	00000a13          	li	s4,0
    8000005c:	00000a93          	li	s5,0
    80000060:	00000b13          	li	s6,0
    80000064:	00000b93          	li	s7,0
    80000068:	00000c13          	li	s8,0
    8000006c:	00000c93          	li	s9,0
    80000070:	00000d13          	li	s10,0
    80000074:	00000d93          	li	s11,0
    80000078:	00000e13          	li	t3,0
    8000007c:	00000e93          	li	t4,0
    80000080:	00000f13          	li	t5,0
    80000084:	00000f93          	li	t6,0
    80000088:	00000297          	auipc	t0,0x0
    8000008c:	f8028293          	addi	t0,t0,-128 # 80000008 <trap_vector>
    80000090:	30529073          	csrw	mtvec,t0
    80000094:	00009117          	auipc	sp,0x9
    80000098:	63c10113          	addi	sp,sp,1596 # 800096d0 <_end+0xee0>
    8000009c:	f14022f3          	csrr	t0,mhartid
    800000a0:	00c29293          	slli	t0,t0,0xc
    800000a4:	00510133          	add	sp,sp,t0
    800000a8:	34011073          	csrw	mscratch,sp
    800000ac:	231020ef          	jal	ra,80002adc <extra_boot>
    800000b0:	00003517          	auipc	a0,0x3
    800000b4:	a3050513          	addi	a0,a0,-1488 # 80002ae0 <userstart>
    800000b8:	7f80206f          	j	800028b0 <vm_boot>

00000000800000bc <pop_tf>:
    800000bc:	10853283          	ld	t0,264(a0)
    800000c0:	14129073          	csrw	sepc,t0
    800000c4:	00853083          	ld	ra,8(a0)
    800000c8:	01053103          	ld	sp,16(a0)
    800000cc:	01853183          	ld	gp,24(a0)
    800000d0:	02053203          	ld	tp,32(a0)
    800000d4:	02853283          	ld	t0,40(a0)
    800000d8:	03053303          	ld	t1,48(a0)
    800000dc:	03853383          	ld	t2,56(a0)
    800000e0:	04053403          	ld	s0,64(a0)
    800000e4:	04853483          	ld	s1,72(a0)
    800000e8:	05853583          	ld	a1,88(a0)
    800000ec:	06053603          	ld	a2,96(a0)
    800000f0:	06853683          	ld	a3,104(a0)
    800000f4:	07053703          	ld	a4,112(a0)
    800000f8:	07853783          	ld	a5,120(a0)
    800000fc:	08053803          	ld	a6,128(a0)
    80000100:	08853883          	ld	a7,136(a0)
    80000104:	09053903          	ld	s2,144(a0)
    80000108:	09853983          	ld	s3,152(a0)
    8000010c:	0a053a03          	ld	s4,160(a0)
    80000110:	0a853a83          	ld	s5,168(a0)
    80000114:	0b053b03          	ld	s6,176(a0)
    80000118:	0b853b83          	ld	s7,184(a0)
    8000011c:	0c053c03          	ld	s8,192(a0)
    80000120:	0c853c83          	ld	s9,200(a0)
    80000124:	0d053d03          	ld	s10,208(a0)
    80000128:	0d853d83          	ld	s11,216(a0)
    8000012c:	0e053e03          	ld	t3,224(a0)
    80000130:	0e853e83          	ld	t4,232(a0)
    80000134:	0f053f03          	ld	t5,240(a0)
    80000138:	0f853f83          	ld	t6,248(a0)
    8000013c:	05053503          	ld	a0,80(a0)
    80000140:	10200073          	sret

0000000080000144 <trap_entry>:
    80000144:	14011173          	csrrw	sp,sscratch,sp
    80000148:	00113423          	sd	ra,8(sp)
    8000014c:	00313c23          	sd	gp,24(sp)
    80000150:	02413023          	sd	tp,32(sp)
    80000154:	02513423          	sd	t0,40(sp)
    80000158:	02613823          	sd	t1,48(sp)
    8000015c:	02713c23          	sd	t2,56(sp)
    80000160:	04813023          	sd	s0,64(sp)
    80000164:	04913423          	sd	s1,72(sp)
    80000168:	04a13823          	sd	a0,80(sp)
    8000016c:	04b13c23          	sd	a1,88(sp)
    80000170:	06c13023          	sd	a2,96(sp)
    80000174:	06d13423          	sd	a3,104(sp)
    80000178:	06e13823          	sd	a4,112(sp)
    8000017c:	06f13c23          	sd	a5,120(sp)
    80000180:	09013023          	sd	a6,128(sp)
    80000184:	09113423          	sd	a7,136(sp)
    80000188:	09213823          	sd	s2,144(sp)
    8000018c:	09313c23          	sd	s3,152(sp)
    80000190:	0b413023          	sd	s4,160(sp)
    80000194:	0b513423          	sd	s5,168(sp)
    80000198:	0b613823          	sd	s6,176(sp)
    8000019c:	0b713c23          	sd	s7,184(sp)
    800001a0:	0d813023          	sd	s8,192(sp)
    800001a4:	0d913423          	sd	s9,200(sp)
    800001a8:	0da13823          	sd	s10,208(sp)
    800001ac:	0db13c23          	sd	s11,216(sp)
    800001b0:	0fc13023          	sd	t3,224(sp)
    800001b4:	0fd13423          	sd	t4,232(sp)
    800001b8:	0fe13823          	sd	t5,240(sp)
    800001bc:	0ff13c23          	sd	t6,248(sp)
    800001c0:	140112f3          	csrrw	t0,sscratch,sp
    800001c4:	00513823          	sd	t0,16(sp)
    800001c8:	100022f3          	csrr	t0,sstatus
    800001cc:	10513023          	sd	t0,256(sp)
    800001d0:	141022f3          	csrr	t0,sepc
    800001d4:	10513423          	sd	t0,264(sp)
    800001d8:	143022f3          	csrr	t0,stval
    800001dc:	10513823          	sd	t0,272(sp)
    800001e0:	142022f3          	csrr	t0,scause
    800001e4:	10513c23          	sd	t0,280(sp)
    800001e8:	00010513          	mv	a0,sp
    800001ec:	3a40206f          	j	80002590 <handle_trap>

Disassembly of section .text:

0000000080002000 <memcpy>:
    80002000:	00c5e7b3          	or	a5,a1,a2
    80002004:	00f567b3          	or	a5,a0,a5
    80002008:	0077f793          	andi	a5,a5,7
    8000200c:	00c506b3          	add	a3,a0,a2
    80002010:	02078463          	beqz	a5,80002038 <memcpy+0x38>
    80002014:	00c58633          	add	a2,a1,a2
    80002018:	00050793          	mv	a5,a0
    8000201c:	02d57e63          	bgeu	a0,a3,80002058 <memcpy+0x58>
    80002020:	0005c703          	lbu	a4,0(a1)
    80002024:	00158593          	addi	a1,a1,1
    80002028:	00178793          	addi	a5,a5,1
    8000202c:	fee78fa3          	sb	a4,-1(a5)
    80002030:	fec598e3          	bne	a1,a2,80002020 <memcpy+0x20>
    80002034:	00008067          	ret
    80002038:	fed57ee3          	bgeu	a0,a3,80002034 <memcpy+0x34>
    8000203c:	00050793          	mv	a5,a0
    80002040:	0005b703          	ld	a4,0(a1)
    80002044:	00878793          	addi	a5,a5,8
    80002048:	00858593          	addi	a1,a1,8
    8000204c:	fee7bc23          	sd	a4,-8(a5)
    80002050:	fed7e8e3          	bltu	a5,a3,80002040 <memcpy+0x40>
    80002054:	00008067          	ret
    80002058:	00008067          	ret

000000008000205c <memset>:
    8000205c:	00c567b3          	or	a5,a0,a2
    80002060:	0077f793          	andi	a5,a5,7
    80002064:	00c50633          	add	a2,a0,a2
    80002068:	0ff5f593          	andi	a1,a1,255
    8000206c:	00078e63          	beqz	a5,80002088 <memset+0x2c>
    80002070:	00050793          	mv	a5,a0
    80002074:	04c57263          	bgeu	a0,a2,800020b8 <memset+0x5c>
    80002078:	00178793          	addi	a5,a5,1
    8000207c:	feb78fa3          	sb	a1,-1(a5)
    80002080:	fef61ce3          	bne	a2,a5,80002078 <memset+0x1c>
    80002084:	00008067          	ret
    80002088:	00859793          	slli	a5,a1,0x8
    8000208c:	00b7e5b3          	or	a1,a5,a1
    80002090:	01059793          	slli	a5,a1,0x10
    80002094:	00b7e7b3          	or	a5,a5,a1
    80002098:	02079593          	slli	a1,a5,0x20
    8000209c:	00f5e5b3          	or	a1,a1,a5
    800020a0:	fec572e3          	bgeu	a0,a2,80002084 <memset+0x28>
    800020a4:	00050793          	mv	a5,a0
    800020a8:	00878793          	addi	a5,a5,8
    800020ac:	feb7bc23          	sd	a1,-8(a5)
    800020b0:	fec7ece3          	bltu	a5,a2,800020a8 <memset+0x4c>
    800020b4:	00008067          	ret
    800020b8:	00008067          	ret

00000000800020bc <strlen>:
    800020bc:	00054783          	lbu	a5,0(a0)
    800020c0:	00078e63          	beqz	a5,800020dc <strlen+0x20>
    800020c4:	00050793          	mv	a5,a0
    800020c8:	0017c703          	lbu	a4,1(a5)
    800020cc:	00178793          	addi	a5,a5,1
    800020d0:	fe071ce3          	bnez	a4,800020c8 <strlen+0xc>
    800020d4:	40a78533          	sub	a0,a5,a0
    800020d8:	00008067          	ret
    800020dc:	00000513          	li	a0,0
    800020e0:	00008067          	ret

00000000800020e4 <strcmp>:
    800020e4:	00054783          	lbu	a5,0(a0)
    800020e8:	00158593          	addi	a1,a1,1
    800020ec:	00150513          	addi	a0,a0,1
    800020f0:	fff5c703          	lbu	a4,-1(a1)
    800020f4:	00078a63          	beqz	a5,80002108 <strcmp+0x24>
    800020f8:	fee786e3          	beq	a5,a4,800020e4 <strcmp>
    800020fc:	0007851b          	sext.w	a0,a5
    80002100:	40e5053b          	subw	a0,a0,a4
    80002104:	00008067          	ret
    80002108:	00000513          	li	a0,0
    8000210c:	ff5ff06f          	j	80002100 <strcmp+0x1c>

0000000080002110 <memcmp>:
    80002110:	00b567b3          	or	a5,a0,a1
    80002114:	0077f793          	andi	a5,a5,7
    80002118:	02079e63          	bnez	a5,80002154 <memcmp+0x44>
    8000211c:	ff867813          	andi	a6,a2,-8
    80002120:	01050833          	add	a6,a0,a6
    80002124:	03057863          	bgeu	a0,a6,80002154 <memcmp+0x44>
    80002128:	00050793          	mv	a5,a0
    8000212c:	0100006f          	j	8000213c <memcmp+0x2c>
    80002130:	00878793          	addi	a5,a5,8
    80002134:	00858593          	addi	a1,a1,8
    80002138:	0107f863          	bgeu	a5,a6,80002148 <memcmp+0x38>
    8000213c:	0007b683          	ld	a3,0(a5)
    80002140:	0005b703          	ld	a4,0(a1)
    80002144:	fee686e3          	beq	a3,a4,80002130 <memcmp+0x20>
    80002148:	40a78533          	sub	a0,a5,a0
    8000214c:	40a60633          	sub	a2,a2,a0
    80002150:	00078513          	mv	a0,a5
    80002154:	00c58633          	add	a2,a1,a2
    80002158:	0140006f          	j	8000216c <memcmp+0x5c>
    8000215c:	0005c703          	lbu	a4,0(a1)
    80002160:	fff54783          	lbu	a5,-1(a0)
    80002164:	00158593          	addi	a1,a1,1
    80002168:	00e79a63          	bne	a5,a4,8000217c <memcmp+0x6c>
    8000216c:	00150513          	addi	a0,a0,1
    80002170:	fec596e3          	bne	a1,a2,8000215c <memcmp+0x4c>
    80002174:	00000513          	li	a0,0
    80002178:	00008067          	ret
    8000217c:	40e7853b          	subw	a0,a5,a4
    80002180:	00008067          	ret

0000000080002184 <strcpy>:
    80002184:	00050793          	mv	a5,a0
    80002188:	0005c703          	lbu	a4,0(a1)
    8000218c:	00178793          	addi	a5,a5,1
    80002190:	00158593          	addi	a1,a1,1
    80002194:	fee78fa3          	sb	a4,-1(a5)
    80002198:	fe0718e3          	bnez	a4,80002188 <strcpy+0x4>
    8000219c:	00008067          	ret

00000000800021a0 <atol>:
    800021a0:	00054703          	lbu	a4,0(a0)
    800021a4:	02000693          	li	a3,32
    800021a8:	00050793          	mv	a5,a0
    800021ac:	00d71863          	bne	a4,a3,800021bc <atol+0x1c>
    800021b0:	0017c703          	lbu	a4,1(a5)
    800021b4:	00178793          	addi	a5,a5,1
    800021b8:	fed70ce3          	beq	a4,a3,800021b0 <atol+0x10>
    800021bc:	02d00693          	li	a3,45
    800021c0:	06d70063          	beq	a4,a3,80002220 <atol+0x80>
    800021c4:	02b00693          	li	a3,43
    800021c8:	04d70063          	beq	a4,a3,80002208 <atol+0x68>
    800021cc:	0007c683          	lbu	a3,0(a5)
    800021d0:	00000593          	li	a1,0
    800021d4:	04068263          	beqz	a3,80002218 <atol+0x78>
    800021d8:	00000513          	li	a0,0
    800021dc:	00178793          	addi	a5,a5,1
    800021e0:	fd06861b          	addiw	a2,a3,-48
    800021e4:	00251713          	slli	a4,a0,0x2
    800021e8:	0007c683          	lbu	a3,0(a5)
    800021ec:	00a70533          	add	a0,a4,a0
    800021f0:	00151513          	slli	a0,a0,0x1
    800021f4:	00a60533          	add	a0,a2,a0
    800021f8:	fe0692e3          	bnez	a3,800021dc <atol+0x3c>
    800021fc:	02058063          	beqz	a1,8000221c <atol+0x7c>
    80002200:	40a00533          	neg	a0,a0
    80002204:	00008067          	ret
    80002208:	0017c683          	lbu	a3,1(a5)
    8000220c:	00000593          	li	a1,0
    80002210:	00178793          	addi	a5,a5,1
    80002214:	fc0692e3          	bnez	a3,800021d8 <atol+0x38>
    80002218:	00000513          	li	a0,0
    8000221c:	00008067          	ret
    80002220:	0017c683          	lbu	a3,1(a5)
    80002224:	00100593          	li	a1,1
    80002228:	00178793          	addi	a5,a5,1
    8000222c:	fa0696e3          	bnez	a3,800021d8 <atol+0x38>
    80002230:	00000513          	li	a0,0
    80002234:	fe9ff06f          	j	8000221c <atol+0x7c>

0000000080002238 <terminate>:
    80002238:	fffff797          	auipc	a5,0xfffff
    8000223c:	dc878793          	addi	a5,a5,-568 # 80001000 <tohost>
    80002240:	0007b683          	ld	a3,0(a5)
    80002244:	00050713          	mv	a4,a0
    80002248:	00068a63          	beqz	a3,8000225c <terminate+0x24>
    8000224c:	fffff697          	auipc	a3,0xfffff
    80002250:	de06ba23          	sd	zero,-524(a3) # 80001040 <fromhost>
    80002254:	0007b683          	ld	a3,0(a5)
    80002258:	fe069ae3          	bnez	a3,8000224c <terminate+0x14>
    8000225c:	00e7b023          	sd	a4,0(a5)
    80002260:	0000006f          	j	80002260 <terminate+0x28>

0000000080002264 <wtf>:
    80002264:	ff010113          	addi	sp,sp,-16
    80002268:	34900513          	li	a0,841
    8000226c:	00113423          	sd	ra,8(sp)
    80002270:	fc9ff0ef          	jal	ra,80002238 <terminate>

0000000080002274 <printhex>:
    80002274:	fe010113          	addi	sp,sp,-32
    80002278:	00810613          	addi	a2,sp,8
    8000227c:	01710793          	addi	a5,sp,23
    80002280:	00900813          	li	a6,9
    80002284:	0080006f          	j	8000228c <printhex+0x18>
    80002288:	00070793          	mv	a5,a4
    8000228c:	00f57693          	andi	a3,a0,15
    80002290:	00068713          	mv	a4,a3
    80002294:	03000593          	li	a1,48
    80002298:	00d87463          	bgeu	a6,a3,800022a0 <printhex+0x2c>
    8000229c:	05700593          	li	a1,87
    800022a0:	00b7073b          	addw	a4,a4,a1
    800022a4:	00e78023          	sb	a4,0(a5)
    800022a8:	00455513          	srli	a0,a0,0x4
    800022ac:	fff78713          	addi	a4,a5,-1
    800022b0:	fcf61ce3          	bne	a2,a5,80002288 <printhex+0x14>
    800022b4:	00814783          	lbu	a5,8(sp)
    800022b8:	00010c23          	sb	zero,24(sp)
    800022bc:	04078263          	beqz	a5,80002300 <printhex+0x8c>
    800022c0:	10100513          	li	a0,257
    800022c4:	00060693          	mv	a3,a2
    800022c8:	fffff717          	auipc	a4,0xfffff
    800022cc:	d3870713          	addi	a4,a4,-712 # 80001000 <tohost>
    800022d0:	03051513          	slli	a0,a0,0x30
    800022d4:	00073583          	ld	a1,0(a4)
    800022d8:	00168693          	addi	a3,a3,1
    800022dc:	00a7e633          	or	a2,a5,a0
    800022e0:	00058a63          	beqz	a1,800022f4 <printhex+0x80>
    800022e4:	fffff797          	auipc	a5,0xfffff
    800022e8:	d407be23          	sd	zero,-676(a5) # 80001040 <fromhost>
    800022ec:	00073783          	ld	a5,0(a4)
    800022f0:	fe079ae3          	bnez	a5,800022e4 <printhex+0x70>
    800022f4:	0006c783          	lbu	a5,0(a3)
    800022f8:	00c73023          	sd	a2,0(a4)
    800022fc:	fc079ce3          	bnez	a5,800022d4 <printhex+0x60>
    80002300:	02010113          	addi	sp,sp,32
    80002304:	00008067          	ret

0000000080002308 <handle_fault>:
    80002308:	fffff6b7          	lui	a3,0xfffff
    8000230c:	00d50733          	add	a4,a0,a3
    80002310:	0003e7b7          	lui	a5,0x3e
    80002314:	14f77063          	bgeu	a4,a5,80002454 <handle_fault+0x14c>
    80002318:	00c55893          	srli	a7,a0,0xc
    8000231c:	60088813          	addi	a6,a7,1536
    80002320:	00002617          	auipc	a2,0x2
    80002324:	ce060613          	addi	a2,a2,-800 # 80004000 <pt>
    80002328:	00381793          	slli	a5,a6,0x3
    8000232c:	00f607b3          	add	a5,a2,a5
    80002330:	0007b703          	ld	a4,0(a5) # 3e000 <_start-0x7ffc2000>
    80002334:	00d57533          	and	a0,a0,a3
    80002338:	02070663          	beqz	a4,80002364 <handle_fault+0x5c>
    8000233c:	04077693          	andi	a3,a4,64
    80002340:	0e068c63          	beqz	a3,80002438 <handle_fault+0x130>
    80002344:	08077693          	andi	a3,a4,128
    80002348:	16069263          	bnez	a3,800024ac <handle_fault+0x1a4>
    8000234c:	00f00693          	li	a3,15
    80002350:	14d59e63          	bne	a1,a3,800024ac <handle_fault+0x1a4>
    80002354:	08076713          	ori	a4,a4,128
    80002358:	00e7b023          	sd	a4,0(a5)
    8000235c:	12050073          	sfence.vma	a0
    80002360:	00008067          	ret
    80002364:	00006697          	auipc	a3,0x6
    80002368:	48468693          	addi	a3,a3,1156 # 800087e8 <freelist_head>
    8000236c:	0006b703          	ld	a4,0(a3)
    80002370:	18070463          	beqz	a4,800024f8 <handle_fault+0x1f0>
    80002374:	00873783          	ld	a5,8(a4)
    80002378:	00006597          	auipc	a1,0x6
    8000237c:	4685b583          	ld	a1,1128(a1) # 800087e0 <freelist_tail>
    80002380:	00f6b023          	sd	a5,0(a3)
    80002384:	0cb78263          	beq	a5,a1,80002448 <handle_fault+0x140>
    80002388:	00073783          	ld	a5,0(a4)
    8000238c:	00381593          	slli	a1,a6,0x3
    80002390:	00b605b3          	add	a1,a2,a1
    80002394:	00c7d793          	srli	a5,a5,0xc
    80002398:	00a79793          	slli	a5,a5,0xa
    8000239c:	0df7e313          	ori	t1,a5,223
    800023a0:	01f7e693          	ori	a3,a5,31
    800023a4:	0065b023          	sd	t1,0(a1)
    800023a8:	12050073          	sfence.vma	a0
    800023ac:	00006797          	auipc	a5,0x6
    800023b0:	04478793          	addi	a5,a5,68 # 800083f0 <user_mapping>
    800023b4:	00489893          	slli	a7,a7,0x4
    800023b8:	011788b3          	add	a7,a5,a7
    800023bc:	0008b783          	ld	a5,0(a7)
    800023c0:	18079263          	bnez	a5,80002544 <handle_fault+0x23c>
    800023c4:	00073783          	ld	a5,0(a4)
    800023c8:	00f8b023          	sd	a5,0(a7)
    800023cc:	00873783          	ld	a5,8(a4)
    800023d0:	00f8b423          	sd	a5,8(a7)
    800023d4:	000408b7          	lui	a7,0x40
    800023d8:	1008a8f3          	csrrs	a7,sstatus,a7
    800023dc:	ffe007b7          	lui	a5,0xffe00
    800023e0:	00f507b3          	add	a5,a0,a5
    800023e4:	000015b7          	lui	a1,0x1
    800023e8:	00050713          	mv	a4,a0
    800023ec:	00b785b3          	add	a1,a5,a1
    800023f0:	0007bf03          	ld	t5,0(a5) # ffffffffffe00000 <_end+0xffffffff7fdf7810>
    800023f4:	0087be83          	ld	t4,8(a5)
    800023f8:	0107be03          	ld	t3,16(a5)
    800023fc:	0187b303          	ld	t1,24(a5)
    80002400:	01e73023          	sd	t5,0(a4)
    80002404:	01d73423          	sd	t4,8(a4)
    80002408:	01c73823          	sd	t3,16(a4)
    8000240c:	00673c23          	sd	t1,24(a4)
    80002410:	02078793          	addi	a5,a5,32
    80002414:	02070713          	addi	a4,a4,32
    80002418:	fcb79ce3          	bne	a5,a1,800023f0 <handle_fault+0xe8>
    8000241c:	10089073          	csrw	sstatus,a7
    80002420:	00381813          	slli	a6,a6,0x3
    80002424:	01060633          	add	a2,a2,a6
    80002428:	00d63023          	sd	a3,0(a2)
    8000242c:	12050073          	sfence.vma	a0
    80002430:	0000100f          	fence.i
    80002434:	00008067          	ret
    80002438:	04076713          	ori	a4,a4,64
    8000243c:	00e7b023          	sd	a4,0(a5)
    80002440:	12050073          	sfence.vma	a0
    80002444:	00008067          	ret
    80002448:	00006797          	auipc	a5,0x6
    8000244c:	3807bc23          	sd	zero,920(a5) # 800087e0 <freelist_tail>
    80002450:	f39ff06f          	j	80002388 <handle_fault+0x80>
    80002454:	10100613          	li	a2,257
    80002458:	04100713          	li	a4,65
    8000245c:	00000697          	auipc	a3,0x0
    80002460:	7cc68693          	addi	a3,a3,1996 # 80002c28 <pass+0x10>
    80002464:	fffff797          	auipc	a5,0xfffff
    80002468:	b9c78793          	addi	a5,a5,-1124 # 80001000 <tohost>
    8000246c:	03061613          	slli	a2,a2,0x30
    80002470:	0007b503          	ld	a0,0(a5)
    80002474:	00168693          	addi	a3,a3,1
    80002478:	00c765b3          	or	a1,a4,a2
    8000247c:	00050a63          	beqz	a0,80002490 <handle_fault+0x188>
    80002480:	fffff717          	auipc	a4,0xfffff
    80002484:	bc073023          	sd	zero,-1088(a4) # 80001040 <fromhost>
    80002488:	0007b703          	ld	a4,0(a5)
    8000248c:	fe071ae3          	bnez	a4,80002480 <handle_fault+0x178>
    80002490:	0006c703          	lbu	a4,0(a3)
    80002494:	00b7b023          	sd	a1,0(a5)
    80002498:	fc071ce3          	bnez	a4,80002470 <handle_fault+0x168>
    8000249c:	ff010113          	addi	sp,sp,-16
    800024a0:	00300513          	li	a0,3
    800024a4:	00113423          	sd	ra,8(sp)
    800024a8:	d91ff0ef          	jal	ra,80002238 <terminate>
    800024ac:	10100613          	li	a2,257
    800024b0:	04100713          	li	a4,65
    800024b4:	00000697          	auipc	a3,0x0
    800024b8:	7bc68693          	addi	a3,a3,1980 # 80002c70 <pass+0x58>
    800024bc:	fffff797          	auipc	a5,0xfffff
    800024c0:	b4478793          	addi	a5,a5,-1212 # 80001000 <tohost>
    800024c4:	03061613          	slli	a2,a2,0x30
    800024c8:	0007b503          	ld	a0,0(a5)
    800024cc:	00168693          	addi	a3,a3,1
    800024d0:	00c765b3          	or	a1,a4,a2
    800024d4:	00050a63          	beqz	a0,800024e8 <handle_fault+0x1e0>
    800024d8:	fffff717          	auipc	a4,0xfffff
    800024dc:	b6073423          	sd	zero,-1176(a4) # 80001040 <fromhost>
    800024e0:	0007b703          	ld	a4,0(a5)
    800024e4:	fe071ae3          	bnez	a4,800024d8 <handle_fault+0x1d0>
    800024e8:	0006c703          	lbu	a4,0(a3)
    800024ec:	00b7b023          	sd	a1,0(a5)
    800024f0:	fc071ce3          	bnez	a4,800024c8 <handle_fault+0x1c0>
    800024f4:	fa9ff06f          	j	8000249c <handle_fault+0x194>
    800024f8:	10100693          	li	a3,257
    800024fc:	04100713          	li	a4,65
    80002500:	00000617          	auipc	a2,0x0
    80002504:	7b860613          	addi	a2,a2,1976 # 80002cb8 <pass+0xa0>
    80002508:	fffff797          	auipc	a5,0xfffff
    8000250c:	af878793          	addi	a5,a5,-1288 # 80001000 <tohost>
    80002510:	03069693          	slli	a3,a3,0x30
    80002514:	0007b503          	ld	a0,0(a5)
    80002518:	00160613          	addi	a2,a2,1
    8000251c:	00d765b3          	or	a1,a4,a3
    80002520:	00050a63          	beqz	a0,80002534 <handle_fault+0x22c>
    80002524:	fffff717          	auipc	a4,0xfffff
    80002528:	b0073e23          	sd	zero,-1252(a4) # 80001040 <fromhost>
    8000252c:	0007b703          	ld	a4,0(a5)
    80002530:	fe071ae3          	bnez	a4,80002524 <handle_fault+0x21c>
    80002534:	00064703          	lbu	a4,0(a2)
    80002538:	00b7b023          	sd	a1,0(a5)
    8000253c:	fc071ce3          	bnez	a4,80002514 <handle_fault+0x20c>
    80002540:	f5dff06f          	j	8000249c <handle_fault+0x194>
    80002544:	10100693          	li	a3,257
    80002548:	04100713          	li	a4,65
    8000254c:	00000617          	auipc	a2,0x0
    80002550:	78460613          	addi	a2,a2,1924 # 80002cd0 <pass+0xb8>
    80002554:	fffff797          	auipc	a5,0xfffff
    80002558:	aac78793          	addi	a5,a5,-1364 # 80001000 <tohost>
    8000255c:	03069693          	slli	a3,a3,0x30
    80002560:	0007b503          	ld	a0,0(a5)
    80002564:	00160613          	addi	a2,a2,1
    80002568:	00d765b3          	or	a1,a4,a3
    8000256c:	00050a63          	beqz	a0,80002580 <handle_fault+0x278>
    80002570:	fffff717          	auipc	a4,0xfffff
    80002574:	ac073823          	sd	zero,-1328(a4) # 80001040 <fromhost>
    80002578:	0007b703          	ld	a4,0(a5)
    8000257c:	fe071ae3          	bnez	a4,80002570 <handle_fault+0x268>
    80002580:	00064703          	lbu	a4,0(a2)
    80002584:	00b7b023          	sd	a1,0(a5)
    80002588:	fc071ce3          	bnez	a4,80002560 <handle_fault+0x258>
    8000258c:	f11ff06f          	j	8000249c <handle_fault+0x194>

0000000080002590 <handle_trap>:
    80002590:	11853583          	ld	a1,280(a0)
    80002594:	f8010113          	addi	sp,sp,-128
    80002598:	06813823          	sd	s0,112(sp)
    8000259c:	06113c23          	sd	ra,120(sp)
    800025a0:	06913423          	sd	s1,104(sp)
    800025a4:	07213023          	sd	s2,96(sp)
    800025a8:	05313c23          	sd	s3,88(sp)
    800025ac:	05413823          	sd	s4,80(sp)
    800025b0:	05513423          	sd	s5,72(sp)
    800025b4:	05613023          	sd	s6,64(sp)
    800025b8:	03713c23          	sd	s7,56(sp)
    800025bc:	03813823          	sd	s8,48(sp)
    800025c0:	03913423          	sd	s9,40(sp)
    800025c4:	03a13023          	sd	s10,32(sp)
    800025c8:	01b13c23          	sd	s11,24(sp)
    800025cc:	00800793          	li	a5,8
    800025d0:	00050413          	mv	s0,a0
    800025d4:	12f58663          	beq	a1,a5,80002700 <handle_trap+0x170>
    800025d8:	00200793          	li	a5,2
    800025dc:	06f58063          	beq	a1,a5,8000263c <handle_trap+0xac>
    800025e0:	ff458793          	addi	a5,a1,-12 # ff4 <_start-0x7ffff00c>
    800025e4:	00100713          	li	a4,1
    800025e8:	00f77663          	bgeu	a4,a5,800025f4 <handle_trap+0x64>
    800025ec:	00f00793          	li	a5,15
    800025f0:	1cf59e63          	bne	a1,a5,800027cc <handle_trap+0x23c>
    800025f4:	11043503          	ld	a0,272(s0)
    800025f8:	d11ff0ef          	jal	ra,80002308 <handle_fault>
    800025fc:	00040513          	mv	a0,s0
    80002600:	07013403          	ld	s0,112(sp)
    80002604:	07813083          	ld	ra,120(sp)
    80002608:	06813483          	ld	s1,104(sp)
    8000260c:	06013903          	ld	s2,96(sp)
    80002610:	05813983          	ld	s3,88(sp)
    80002614:	05013a03          	ld	s4,80(sp)
    80002618:	04813a83          	ld	s5,72(sp)
    8000261c:	04013b03          	ld	s6,64(sp)
    80002620:	03813b83          	ld	s7,56(sp)
    80002624:	03013c03          	ld	s8,48(sp)
    80002628:	02813c83          	ld	s9,40(sp)
    8000262c:	02013d03          	ld	s10,32(sp)
    80002630:	01813d83          	ld	s11,24(sp)
    80002634:	08010113          	addi	sp,sp,128
    80002638:	a85fd06f          	j	800000bc <pop_tf>
    8000263c:	10853703          	ld	a4,264(a0)
    80002640:	00377793          	andi	a5,a4,3
    80002644:	06079863          	bnez	a5,800026b4 <handle_trap+0x124>
    80002648:	008007ef          	jal	a5,80002650 <handle_trap+0xc0>
    8000264c:	00301073          	fscsr	zero
    80002650:	00072703          	lw	a4,0(a4)
    80002654:	0007a783          	lw	a5,0(a5)
    80002658:	04f70a63          	beq	a4,a5,800026ac <handle_trap+0x11c>
    8000265c:	10100513          	li	a0,257
    80002660:	04100793          	li	a5,65
    80002664:	00000697          	auipc	a3,0x0
    80002668:	74468693          	addi	a3,a3,1860 # 80002da8 <pass+0x190>
    8000266c:	fffff717          	auipc	a4,0xfffff
    80002670:	99470713          	addi	a4,a4,-1644 # 80001000 <tohost>
    80002674:	03051513          	slli	a0,a0,0x30
    80002678:	00073583          	ld	a1,0(a4)
    8000267c:	00168693          	addi	a3,a3,1
    80002680:	00a7e633          	or	a2,a5,a0
    80002684:	00058a63          	beqz	a1,80002698 <handle_trap+0x108>
    80002688:	fffff797          	auipc	a5,0xfffff
    8000268c:	9a07bc23          	sd	zero,-1608(a5) # 80001040 <fromhost>
    80002690:	00073783          	ld	a5,0(a4)
    80002694:	fe079ae3          	bnez	a5,80002688 <handle_trap+0xf8>
    80002698:	0006c783          	lbu	a5,0(a3)
    8000269c:	00c73023          	sd	a2,0(a4)
    800026a0:	fc079ce3          	bnez	a5,80002678 <handle_trap+0xe8>
    800026a4:	00300513          	li	a0,3
    800026a8:	b91ff0ef          	jal	ra,80002238 <terminate>
    800026ac:	00100513          	li	a0,1
    800026b0:	b89ff0ef          	jal	ra,80002238 <terminate>
    800026b4:	10100793          	li	a5,257
    800026b8:	00000617          	auipc	a2,0x0
    800026bc:	6c860613          	addi	a2,a2,1736 # 80002d80 <pass+0x168>
    800026c0:	04100693          	li	a3,65
    800026c4:	fffff717          	auipc	a4,0xfffff
    800026c8:	93c70713          	addi	a4,a4,-1732 # 80001000 <tohost>
    800026cc:	03079793          	slli	a5,a5,0x30
    800026d0:	00073503          	ld	a0,0(a4)
    800026d4:	00160613          	addi	a2,a2,1
    800026d8:	00f6e5b3          	or	a1,a3,a5
    800026dc:	00050a63          	beqz	a0,800026f0 <handle_trap+0x160>
    800026e0:	fffff697          	auipc	a3,0xfffff
    800026e4:	9606b023          	sd	zero,-1696(a3) # 80001040 <fromhost>
    800026e8:	00073683          	ld	a3,0(a4)
    800026ec:	fe069ae3          	bnez	a3,800026e0 <handle_trap+0x150>
    800026f0:	00064683          	lbu	a3,0(a2)
    800026f4:	00b73023          	sd	a1,0(a4)
    800026f8:	fc069ce3          	bnez	a3,800026d0 <handle_trap+0x140>
    800026fc:	fa9ff06f          	j	800026a4 <handle_trap+0x114>
    80002700:	05052903          	lw	s2,80(a0)
    80002704:	00001c37          	lui	s8,0x1
    80002708:	00006497          	auipc	s1,0x6
    8000270c:	ce848493          	addi	s1,s1,-792 # 800083f0 <user_mapping>
    80002710:	00002b97          	auipc	s7,0x2
    80002714:	8f0b8b93          	addi	s7,s7,-1808 # 80004000 <pt>
    80002718:	00040b37          	lui	s6,0x40
    8000271c:	ffe00ab7          	lui	s5,0xffe00
    80002720:	00006d97          	auipc	s11,0x6
    80002724:	0c0d8d93          	addi	s11,s11,192 # 800087e0 <freelist_tail>
    80002728:	00006a17          	auipc	s4,0x6
    8000272c:	0c0a0a13          	addi	s4,s4,192 # 800087e8 <freelist_head>
    80002730:	0003f9b7          	lui	s3,0x3f
    80002734:	0180006f          	j	8000274c <handle_trap+0x1bc>
    80002738:	00f73423          	sd	a5,8(a4)
    8000273c:	00fdb023          	sd	a5,0(s11)
    80002740:	000017b7          	lui	a5,0x1
    80002744:	00fc0c33          	add	s8,s8,a5
    80002748:	173c0063          	beq	s8,s3,800028a8 <handle_trap+0x318>
    8000274c:	00cc5793          	srli	a5,s8,0xc
    80002750:	00479413          	slli	s0,a5,0x4
    80002754:	00848733          	add	a4,s1,s0
    80002758:	00073703          	ld	a4,0(a4)
    8000275c:	fe0702e3          	beqz	a4,80002740 <handle_trap+0x1b0>
    80002760:	60078793          	addi	a5,a5,1536 # 1600 <_start-0x7fffea00>
    80002764:	00379793          	slli	a5,a5,0x3
    80002768:	00fb87b3          	add	a5,s7,a5
    8000276c:	0007bc83          	ld	s9,0(a5)
    80002770:	040cf793          	andi	a5,s9,64
    80002774:	0e078663          	beqz	a5,80002860 <handle_trap+0x2d0>
    80002778:	100b2d73          	csrrs	s10,sstatus,s6
    8000277c:	00001637          	lui	a2,0x1
    80002780:	015c05b3          	add	a1,s8,s5
    80002784:	000c0513          	mv	a0,s8
    80002788:	00b13423          	sd	a1,8(sp)
    8000278c:	985ff0ef          	jal	ra,80002110 <memcmp>
    80002790:	00050e63          	beqz	a0,800027ac <handle_trap+0x21c>
    80002794:	080cfc93          	andi	s9,s9,128
    80002798:	00813583          	ld	a1,8(sp)
    8000279c:	060c8e63          	beqz	s9,80002818 <handle_trap+0x288>
    800027a0:	00001637          	lui	a2,0x1
    800027a4:	000c0513          	mv	a0,s8
    800027a8:	859ff0ef          	jal	ra,80002000 <memcpy>
    800027ac:	008487b3          	add	a5,s1,s0
    800027b0:	100d1073          	csrw	sstatus,s10
    800027b4:	000db703          	ld	a4,0(s11)
    800027b8:	0007b023          	sd	zero,0(a5)
    800027bc:	f6071ee3          	bnez	a4,80002738 <handle_trap+0x1a8>
    800027c0:	00fdb023          	sd	a5,0(s11)
    800027c4:	00fa3023          	sd	a5,0(s4)
    800027c8:	f79ff06f          	j	80002740 <handle_trap+0x1b0>
    800027cc:	10100793          	li	a5,257
    800027d0:	04100613          	li	a2,65
    800027d4:	00000697          	auipc	a3,0x0
    800027d8:	60468693          	addi	a3,a3,1540 # 80002dd8 <pass+0x1c0>
    800027dc:	fffff717          	auipc	a4,0xfffff
    800027e0:	82470713          	addi	a4,a4,-2012 # 80001000 <tohost>
    800027e4:	03079793          	slli	a5,a5,0x30
    800027e8:	00073503          	ld	a0,0(a4)
    800027ec:	00168693          	addi	a3,a3,1
    800027f0:	00f665b3          	or	a1,a2,a5
    800027f4:	00050a63          	beqz	a0,80002808 <handle_trap+0x278>
    800027f8:	fffff617          	auipc	a2,0xfffff
    800027fc:	84063423          	sd	zero,-1976(a2) # 80001040 <fromhost>
    80002800:	00073603          	ld	a2,0(a4)
    80002804:	fe061ae3          	bnez	a2,800027f8 <handle_trap+0x268>
    80002808:	0006c603          	lbu	a2,0(a3)
    8000280c:	00b73023          	sd	a1,0(a4)
    80002810:	fc061ce3          	bnez	a2,800027e8 <handle_trap+0x258>
    80002814:	e91ff06f          	j	800026a4 <handle_trap+0x114>
    80002818:	10100793          	li	a5,257
    8000281c:	04100613          	li	a2,65
    80002820:	00000697          	auipc	a3,0x0
    80002824:	52868693          	addi	a3,a3,1320 # 80002d48 <pass+0x130>
    80002828:	ffffe717          	auipc	a4,0xffffe
    8000282c:	7d870713          	addi	a4,a4,2008 # 80001000 <tohost>
    80002830:	03079793          	slli	a5,a5,0x30
    80002834:	00168693          	addi	a3,a3,1
    80002838:	00f665b3          	or	a1,a2,a5
    8000283c:	00c0006f          	j	80002848 <handle_trap+0x2b8>
    80002840:	fffff617          	auipc	a2,0xfffff
    80002844:	80063023          	sd	zero,-2048(a2) # 80001040 <fromhost>
    80002848:	00073603          	ld	a2,0(a4)
    8000284c:	fe061ae3          	bnez	a2,80002840 <handle_trap+0x2b0>
    80002850:	0006c603          	lbu	a2,0(a3)
    80002854:	00b73023          	sd	a1,0(a4)
    80002858:	fc061ee3          	bnez	a2,80002834 <handle_trap+0x2a4>
    8000285c:	e49ff06f          	j	800026a4 <handle_trap+0x114>
    80002860:	10100793          	li	a5,257
    80002864:	04100613          	li	a2,65
    80002868:	00000697          	auipc	a3,0x0
    8000286c:	4a868693          	addi	a3,a3,1192 # 80002d10 <pass+0xf8>
    80002870:	ffffe717          	auipc	a4,0xffffe
    80002874:	79070713          	addi	a4,a4,1936 # 80001000 <tohost>
    80002878:	03079793          	slli	a5,a5,0x30
    8000287c:	00168693          	addi	a3,a3,1
    80002880:	00f665b3          	or	a1,a2,a5
    80002884:	00c0006f          	j	80002890 <handle_trap+0x300>
    80002888:	ffffe617          	auipc	a2,0xffffe
    8000288c:	7a063c23          	sd	zero,1976(a2) # 80001040 <fromhost>
    80002890:	00073603          	ld	a2,0(a4)
    80002894:	fe061ae3          	bnez	a2,80002888 <handle_trap+0x2f8>
    80002898:	0006c603          	lbu	a2,0(a3)
    8000289c:	00b73023          	sd	a1,0(a4)
    800028a0:	fc061ee3          	bnez	a2,8000287c <handle_trap+0x2ec>
    800028a4:	e01ff06f          	j	800026a4 <handle_trap+0x114>
    800028a8:	00090513          	mv	a0,s2
    800028ac:	98dff0ef          	jal	ra,80002238 <terminate>

00000000800028b0 <vm_boot>:
    800028b0:	f14027f3          	csrr	a5,mhartid
    800028b4:	18079463          	bnez	a5,80002a3c <vm_boot+0x18c>
    800028b8:	00003797          	auipc	a5,0x3
    800028bc:	74878793          	addi	a5,a5,1864 # 80006000 <pt+0x2000>
    800028c0:	ed010113          	addi	sp,sp,-304
    800028c4:	00c7d793          	srli	a5,a5,0xc
    800028c8:	12813023          	sd	s0,288(sp)
    800028cc:	00004817          	auipc	a6,0x4
    800028d0:	73480813          	addi	a6,a6,1844 # 80007000 <pt+0x3000>
    800028d4:	00050413          	mv	s0,a0
    800028d8:	00a79793          	slli	a5,a5,0xa
    800028dc:	00002517          	auipc	a0,0x2
    800028e0:	72450513          	addi	a0,a0,1828 # 80005000 <pt+0x1000>
    800028e4:	12113423          	sd	ra,296(sp)
    800028e8:	00c55693          	srli	a3,a0,0xc
    800028ec:	00c85713          	srli	a4,a6,0xc
    800028f0:	0017e793          	ori	a5,a5,1
    800028f4:	00001897          	auipc	a7,0x1
    800028f8:	70c88893          	addi	a7,a7,1804 # 80004000 <pt>
    800028fc:	fff00613          	li	a2,-1
    80002900:	fef53c23          	sd	a5,-8(a0)
    80002904:	00a69693          	slli	a3,a3,0xa
    80002908:	00a71713          	slli	a4,a4,0xa
    8000290c:	200007b7          	lui	a5,0x20000
    80002910:	0016e693          	ori	a3,a3,1
    80002914:	00176713          	ori	a4,a4,1
    80002918:	00c8d593          	srli	a1,a7,0xc
    8000291c:	03f61313          	slli	t1,a2,0x3f
    80002920:	0cf78793          	addi	a5,a5,207 # 200000cf <_start-0x5fffff31>
    80002924:	fef83c23          	sd	a5,-8(a6)
    80002928:	00d8b023          	sd	a3,0(a7)
    8000292c:	00e53023          	sd	a4,0(a0)
    80002930:	0065e7b3          	or	a5,a1,t1
    80002934:	18079073          	csrw	satp,a5
    80002938:	18002773          	csrr	a4,satp
    8000293c:	14e79863          	bne	a5,a4,80002a8c <vm_boot+0x1dc>
    80002940:	00b65613          	srli	a2,a2,0xb
    80002944:	01f00793          	li	a5,31
    80002948:	00000297          	auipc	t0,0x0
    8000294c:	01428293          	addi	t0,t0,20 # 8000295c <vm_boot+0xac>
    80002950:	305292f3          	csrrw	t0,mtvec,t0
    80002954:	3b061073          	csrw	pmpaddr0,a2
    80002958:	3a079073          	csrw	pmpcfg0,a5
    8000295c:	bff00813          	li	a6,-1025
    80002960:	01581813          	slli	a6,a6,0x15
    80002964:	ffffd797          	auipc	a5,0xffffd
    80002968:	7e078793          	addi	a5,a5,2016 # 80000144 <trap_entry>
    8000296c:	010787b3          	add	a5,a5,a6
    80002970:	10579073          	csrw	stvec,a5
    80002974:	340027f3          	csrr	a5,mscratch
    80002978:	010787b3          	add	a5,a5,a6
    8000297c:	14079073          	csrw	sscratch,a5
    80002980:	0000b7b7          	lui	a5,0xb
    80002984:	1007879b          	addiw	a5,a5,256
    80002988:	30279073          	csrw	medeleg,a5
    8000298c:	0001e7b7          	lui	a5,0x1e
    80002990:	30079073          	csrw	mstatus,a5
    80002994:	30405073          	csrwi	mie,0
    80002998:	00005717          	auipc	a4,0x5
    8000299c:	66870713          	addi	a4,a4,1640 # 80008000 <freelist_nodes>
    800029a0:	010707b3          	add	a5,a4,a6
    800029a4:	3e078693          	addi	a3,a5,992 # 1e3e0 <_start-0x7ffe1c20>
    800029a8:	00006617          	auipc	a2,0x6
    800029ac:	e4f63023          	sd	a5,-448(a2) # 800087e8 <freelist_head>
    800029b0:	000808b7          	lui	a7,0x80
    800029b4:	00006797          	auipc	a5,0x6
    800029b8:	e2d7b623          	sd	a3,-468(a5) # 800087e0 <freelist_tail>
    800029bc:	00006317          	auipc	t1,0x6
    800029c0:	a3430313          	addi	t1,t1,-1484 # 800083f0 <user_mapping>
    800029c4:	02c00793          	li	a5,44
    800029c8:	03f88893          	addi	a7,a7,63 # 8003f <_start-0x7ff7ffc1>
    800029cc:	01080813          	addi	a6,a6,16
    800029d0:	0017d613          	srli	a2,a5,0x1
    800029d4:	011786b3          	add	a3,a5,a7
    800029d8:	00f647b3          	xor	a5,a2,a5
    800029dc:	010705b3          	add	a1,a4,a6
    800029e0:	00c69693          	slli	a3,a3,0xc
    800029e4:	00579793          	slli	a5,a5,0x5
    800029e8:	00d73023          	sd	a3,0(a4)
    800029ec:	00b73423          	sd	a1,8(a4)
    800029f0:	0207f793          	andi	a5,a5,32
    800029f4:	01070713          	addi	a4,a4,16
    800029f8:	00f667b3          	or	a5,a2,a5
    800029fc:	fce31ae3          	bne	t1,a4,800029d0 <vm_boot+0x120>
    80002a00:	12000613          	li	a2,288
    80002a04:	00000593          	li	a1,0
    80002a08:	00010513          	mv	a0,sp
    80002a0c:	00006797          	auipc	a5,0x6
    80002a10:	9c07be23          	sd	zero,-1572(a5) # 800083e8 <freelist_nodes+0x3e8>
    80002a14:	e48ff0ef          	jal	ra,8000205c <memset>
    80002a18:	800007b7          	lui	a5,0x80000
    80002a1c:	00f40433          	add	s0,s0,a5
    80002a20:	00010513          	mv	a0,sp
    80002a24:	10813423          	sd	s0,264(sp)
    80002a28:	e94fd0ef          	jal	ra,800000bc <pop_tf>
    80002a2c:	12813083          	ld	ra,296(sp)
    80002a30:	12013403          	ld	s0,288(sp)
    80002a34:	13010113          	addi	sp,sp,304
    80002a38:	00008067          	ret
    80002a3c:	00100613          	li	a2,1
    80002a40:	046787b7          	lui	a5,0x4678
    80002a44:	000805b7          	lui	a1,0x80
    80002a48:	01f61513          	slli	a0,a2,0x1f
    80002a4c:	34878793          	addi	a5,a5,840 # 4678348 <_start-0x7b987cb8>
    80002a50:	ffc58593          	addi	a1,a1,-4 # 7fffc <_start-0x7ff80004>
    80002a54:	03e61613          	slli	a2,a2,0x3e
    80002a58:	01c0006f          	j	80002a74 <vm_boot+0x1c4>
    80002a5c:	0007202f          	amoadd.w	zero,zero,(a4)
    80002a60:	0017d713          	srli	a4,a5,0x1
    80002a64:	00e7c7b3          	xor	a5,a5,a4
    80002a68:	03e79793          	slli	a5,a5,0x3e
    80002a6c:	00c7f7b3          	and	a5,a5,a2
    80002a70:	00e7e7b3          	or	a5,a5,a4
    80002a74:	00b7f733          	and	a4,a5,a1
    80002a78:	0017f693          	andi	a3,a5,1
    80002a7c:	00a70733          	add	a4,a4,a0
    80002a80:	fc069ee3          	bnez	a3,80002a5c <vm_boot+0x1ac>
    80002a84:	00072003          	lw	zero,0(a4)
    80002a88:	fd9ff06f          	j	80002a60 <vm_boot+0x1b0>
    80002a8c:	10100793          	li	a5,257
    80002a90:	04100613          	li	a2,65
    80002a94:	00000697          	auipc	a3,0x0
    80002a98:	37468693          	addi	a3,a3,884 # 80002e08 <pass+0x1f0>
    80002a9c:	ffffe717          	auipc	a4,0xffffe
    80002aa0:	56470713          	addi	a4,a4,1380 # 80001000 <tohost>
    80002aa4:	03079793          	slli	a5,a5,0x30
    80002aa8:	00073503          	ld	a0,0(a4)
    80002aac:	00168693          	addi	a3,a3,1
    80002ab0:	00f665b3          	or	a1,a2,a5
    80002ab4:	00050a63          	beqz	a0,80002ac8 <vm_boot+0x218>
    80002ab8:	ffffe617          	auipc	a2,0xffffe
    80002abc:	58063423          	sd	zero,1416(a2) # 80001040 <fromhost>
    80002ac0:	00073603          	ld	a2,0(a4)
    80002ac4:	fe061ae3          	bnez	a2,80002ab8 <vm_boot+0x208>
    80002ac8:	0006c603          	lbu	a2,0(a3)
    80002acc:	00b73023          	sd	a1,0(a4)
    80002ad0:	fc061ce3          	bnez	a2,80002aa8 <vm_boot+0x1f8>
    80002ad4:	00300513          	li	a0,3
    80002ad8:	f60ff0ef          	jal	ra,80002238 <terminate>

0000000080002adc <extra_boot>:
    80002adc:	00008067          	ret

0000000080002ae0 <userstart>:
    80002ae0:	00301073          	fscsr	zero

0000000080002ae4 <test_2>:
    80002ae4:	00200193          	li	gp,2
    80002ae8:	00000517          	auipc	a0,0x0
    80002aec:	51850513          	addi	a0,a0,1304 # 80003000 <test_2_data>
    80002af0:	00052683          	lw	a3,0(a0)
    80002af4:	00200513          	li	a0,2
    80002af8:	d0057053          	fcvt.s.w	ft0,a0
    80002afc:	00101073          	fsflags	zero
    80002b00:	e0000553          	fmv.x.w	a0,ft0
    80002b04:	10d51263          	bne	a0,a3,80002c08 <fail>

0000000080002b08 <test_3>:
    80002b08:	00300193          	li	gp,3
    80002b0c:	00000517          	auipc	a0,0x0
    80002b10:	4f850513          	addi	a0,a0,1272 # 80003004 <test_3_data>
    80002b14:	00052683          	lw	a3,0(a0)
    80002b18:	ffe00513          	li	a0,-2
    80002b1c:	d0057053          	fcvt.s.w	ft0,a0
    80002b20:	00101073          	fsflags	zero
    80002b24:	e0000553          	fmv.x.w	a0,ft0
    80002b28:	0ed51063          	bne	a0,a3,80002c08 <fail>

0000000080002b2c <test_4>:
    80002b2c:	00400193          	li	gp,4
    80002b30:	00000517          	auipc	a0,0x0
    80002b34:	4d850513          	addi	a0,a0,1240 # 80003008 <test_4_data>
    80002b38:	00052683          	lw	a3,0(a0)
    80002b3c:	00200513          	li	a0,2
    80002b40:	d0157053          	fcvt.s.wu	ft0,a0
    80002b44:	00101073          	fsflags	zero
    80002b48:	e0000553          	fmv.x.w	a0,ft0
    80002b4c:	0ad51e63          	bne	a0,a3,80002c08 <fail>

0000000080002b50 <test_5>:
    80002b50:	00500193          	li	gp,5
    80002b54:	00000517          	auipc	a0,0x0
    80002b58:	4b850513          	addi	a0,a0,1208 # 8000300c <test_5_data>
    80002b5c:	00052683          	lw	a3,0(a0)
    80002b60:	ffe00513          	li	a0,-2
    80002b64:	d0157053          	fcvt.s.wu	ft0,a0
    80002b68:	00101073          	fsflags	zero
    80002b6c:	e0000553          	fmv.x.w	a0,ft0
    80002b70:	08d51c63          	bne	a0,a3,80002c08 <fail>

0000000080002b74 <test_6>:
    80002b74:	00600193          	li	gp,6
    80002b78:	00000517          	auipc	a0,0x0
    80002b7c:	49850513          	addi	a0,a0,1176 # 80003010 <test_6_data>
    80002b80:	00052683          	lw	a3,0(a0)
    80002b84:	00200513          	li	a0,2
    80002b88:	d0257053          	fcvt.s.l	ft0,a0
    80002b8c:	00101073          	fsflags	zero
    80002b90:	e0000553          	fmv.x.w	a0,ft0
    80002b94:	06d51a63          	bne	a0,a3,80002c08 <fail>

0000000080002b98 <test_7>:
    80002b98:	00700193          	li	gp,7
    80002b9c:	00000517          	auipc	a0,0x0
    80002ba0:	47850513          	addi	a0,a0,1144 # 80003014 <test_7_data>
    80002ba4:	00052683          	lw	a3,0(a0)
    80002ba8:	ffe00513          	li	a0,-2
    80002bac:	d0257053          	fcvt.s.l	ft0,a0
    80002bb0:	00101073          	fsflags	zero
    80002bb4:	e0000553          	fmv.x.w	a0,ft0
    80002bb8:	04d51863          	bne	a0,a3,80002c08 <fail>

0000000080002bbc <test_8>:
    80002bbc:	00800193          	li	gp,8
    80002bc0:	00000517          	auipc	a0,0x0
    80002bc4:	45850513          	addi	a0,a0,1112 # 80003018 <test_8_data>
    80002bc8:	00052683          	lw	a3,0(a0)
    80002bcc:	00200513          	li	a0,2
    80002bd0:	d0357053          	fcvt.s.lu	ft0,a0
    80002bd4:	00101073          	fsflags	zero
    80002bd8:	e0000553          	fmv.x.w	a0,ft0
    80002bdc:	02d51663          	bne	a0,a3,80002c08 <fail>

0000000080002be0 <test_9>:
    80002be0:	00900193          	li	gp,9
    80002be4:	00000517          	auipc	a0,0x0
    80002be8:	43850513          	addi	a0,a0,1080 # 8000301c <test_9_data>
    80002bec:	00052683          	lw	a3,0(a0)
    80002bf0:	ffe00513          	li	a0,-2
    80002bf4:	d0357053          	fcvt.s.lu	ft0,a0
    80002bf8:	00101073          	fsflags	zero
    80002bfc:	e0000553          	fmv.x.w	a0,ft0
    80002c00:	00d51463          	bne	a0,a3,80002c08 <fail>
    80002c04:	00301a63          	bne	zero,gp,80002c18 <pass>

0000000080002c08 <fail>:
    80002c08:	00119513          	slli	a0,gp,0x1
    80002c0c:	00050063          	beqz	a0,80002c0c <fail+0x4>
    80002c10:	00156513          	ori	a0,a0,1
    80002c14:	00000073          	ecall

0000000080002c18 <pass>:
    80002c18:	00100513          	li	a0,1
    80002c1c:	00000073          	ecall
    80002c20:	c0001073          	unimp

Disassembly of section .data:

0000000080003000 <test_2_data>:
    80003000:	0000                	unimp
    80003002:	4000                	lw	s0,0(s0)

0000000080003004 <test_3_data>:
    80003004:	0000                	unimp
    80003006:	c000                	sw	s0,0(s0)

0000000080003008 <test_4_data>:
    80003008:	0000                	unimp
    8000300a:	4000                	lw	s0,0(s0)

000000008000300c <test_5_data>:
    8000300c:	0000                	unimp
    8000300e:	4f80                	lw	s0,24(a5)

0000000080003010 <test_6_data>:
    80003010:	0000                	unimp
    80003012:	4000                	lw	s0,0(s0)

0000000080003014 <test_7_data>:
    80003014:	0000                	unimp
    80003016:	c000                	sw	s0,0(s0)

0000000080003018 <test_8_data>:
    80003018:	0000                	unimp
    8000301a:	4000                	lw	s0,0(s0)

000000008000301c <test_9_data>:
    8000301c:	0000                	unimp
    8000301e:	5f80                	lw	s0,56(a5)
