diff src/usr/init.asm @ 0:53676d1f5817 default tip

firsh commit
author tobaru
date Sun, 04 Feb 2018 17:54:49 +0900
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/usr/init.asm	Sun Feb 04 17:54:49 2018 +0900
@@ -0,0 +1,1376 @@
+
+_init:     file format elf32-littlearm
+
+
+Disassembly of section .text:
+
+00000000 <main>:
+
+char *argv[] = { "sh", 0 };
+
+int
+main(void)
+{
+       0:	e92d4800 	push	{fp, lr}
+       4:	e1a0b00d 	mov	fp, sp
+       8:	e24dd038 	sub	sp, sp, #56	; 0x38
+       c:	e3a00000 	mov	r0, #0
+      10:	e50b0004 	str	r0, [fp, #-4]
+    int pid, wpid;
+    
+    if(open("console", O_RDWR) < 0){
+      14:	e59f0138 	ldr	r0, [pc, #312]	; 154 <main+0x154>
+      18:	e3a01002 	mov	r1, #2
+      1c:	eb000214 	bl	874 <open>
+      20:	e3500000 	cmp	r0, #0
+      24:	aa00000d 	bge	60 <main+0x60>
+      28:	eaffffff 	b	2c <main+0x2c>
+        mknod("console", 1, 1);
+      2c:	e59f0120 	ldr	r0, [pc, #288]	; 154 <main+0x154>
+      30:	e3a01001 	mov	r1, #1
+      34:	e50b0010 	str	r0, [fp, #-16]
+      38:	e50b1014 	str	r1, [fp, #-20]	; 0xffffffec
+      3c:	e51b2014 	ldr	r2, [fp, #-20]	; 0xffffffec
+      40:	eb000214 	bl	898 <mknod>
+        open("console", O_RDWR);
+      44:	e3a01002 	mov	r1, #2
+      48:	e51b2010 	ldr	r2, [fp, #-16]
+      4c:	e50b0018 	str	r0, [fp, #-24]	; 0xffffffe8
+      50:	e1a00002 	mov	r0, r2
+      54:	eb000206 	bl	874 <open>
+    }
+      58:	e58d001c 	str	r0, [sp, #28]
+      5c:	eaffffff 	b	60 <main+0x60>
+    dup(0);  // stdout
+      60:	e3a00000 	mov	r0, #0
+      64:	e58d0018 	str	r0, [sp, #24]
+      68:	eb000240 	bl	970 <dup>
+    dup(0);  // stderr
+      6c:	e59de018 	ldr	lr, [sp, #24]
+      70:	e58d0014 	str	r0, [sp, #20]
+      74:	e1a0000e 	mov	r0, lr
+      78:	eb00023c 	bl	970 <dup>
+    
+    for(;;){
+      7c:	e58d0010 	str	r0, [sp, #16]
+      80:	eaffffff 	b	84 <main+0x84>
+        printf(1, "init: starting sh\n");
+      84:	e59f10cc 	ldr	r1, [pc, #204]	; 158 <main+0x158>
+      88:	e3a00001 	mov	r0, #1
+      8c:	eb000264 	bl	a24 <printf>
+        pid = fork();
+      90:	eb0001a6 	bl	730 <fork>
+      94:	e50b0008 	str	r0, [fp, #-8]
+        if(pid < 0){
+      98:	e51b0008 	ldr	r0, [fp, #-8]
+      9c:	e3500000 	cmp	r0, #0
+      a0:	aa000005 	bge	bc <main+0xbc>
+      a4:	eaffffff 	b	a8 <main+0xa8>
+            printf(1, "init: fork failed\n");
+      a8:	e59f10bc 	ldr	r1, [pc, #188]	; 16c <main+0x16c>
+      ac:	e3a00001 	mov	r0, #1
+      b0:	eb00025b 	bl	a24 <printf>
+            exit();
+      b4:	eb0001a6 	bl	754 <exit>
+      b8:	e58d000c 	str	r0, [sp, #12]
+        }
+        if(pid == 0){
+      bc:	e51b0008 	ldr	r0, [fp, #-8]
+      c0:	e3500000 	cmp	r0, #0
+      c4:	1a00000a 	bne	f4 <main+0xf4>
+      c8:	eaffffff 	b	cc <main+0xcc>
+            exec("sh", argv);
+      cc:	e59f008c 	ldr	r0, [pc, #140]	; 160 <main+0x160>
+      d0:	e59f108c 	ldr	r1, [pc, #140]	; 164 <main+0x164>
+      d4:	eb0001dd 	bl	850 <exec>
+            printf(1, "init: exec sh failed\n");
+      d8:	e59f1088 	ldr	r1, [pc, #136]	; 168 <main+0x168>
+      dc:	e3a0e001 	mov	lr, #1
+      e0:	e58d0008 	str	r0, [sp, #8]
+      e4:	e1a0000e 	mov	r0, lr
+      e8:	eb00024d 	bl	a24 <printf>
+            exit();
+      ec:	eb000198 	bl	754 <exit>
+      f0:	e58d0004 	str	r0, [sp, #4]
+        }
+        while((wpid=wait()) >= 0 && wpid != pid)
+      f4:	eaffffff 	b	f8 <main+0xf8>
+      f8:	eb00019e 	bl	778 <wait>
+      fc:	e50b000c 	str	r0, [fp, #-12]
+     100:	e3a0e000 	mov	lr, #0
+     104:	e3500000 	cmp	r0, #0
+     108:	e58de000 	str	lr, [sp]
+     10c:	ba000007 	blt	130 <main+0x130>
+     110:	eaffffff 	b	114 <main+0x114>
+     114:	e51b000c 	ldr	r0, [fp, #-12]
+     118:	e51b1008 	ldr	r1, [fp, #-8]
+     11c:	e3a02000 	mov	r2, #0
+     120:	e1500001 	cmp	r0, r1
+     124:	13a02001 	movne	r2, #1
+     128:	e58d2000 	str	r2, [sp]
+     12c:	eaffffff 	b	130 <main+0x130>
+     130:	e59d0000 	ldr	r0, [sp]
+     134:	e3100001 	tst	r0, #1
+     138:	0a000004 	beq	150 <main+0x150>
+     13c:	eaffffff 	b	140 <main+0x140>
+            printf(1, "zombie!\n");
+     140:	e59f1014 	ldr	r1, [pc, #20]	; 15c <main+0x15c>
+     144:	e3a00001 	mov	r0, #1
+     148:	eb000235 	bl	a24 <printf>
+        while((wpid=wait()) >= 0 && wpid != pid)
+     14c:	eaffffe9 	b	f8 <main+0xf8>
+    for(;;){
+     150:	eaffffcb 	b	84 <main+0x84>
+     154:	000012ef 	.word	0x000012ef
+     158:	000012f7 	.word	0x000012f7
+     15c:	00001333 	.word	0x00001333
+     160:	000012ec 	.word	0x000012ec
+     164:	0000134c 	.word	0x0000134c
+     168:	0000131d 	.word	0x0000131d
+     16c:	0000130a 	.word	0x0000130a
+
+00000170 <strcpy>:
+#include "fcntl.h"
+#include "user.h"
+
+char*
+strcpy(char *s, char *t)
+{
+     170:	e24dd014 	sub	sp, sp, #20
+     174:	e1a02001 	mov	r2, r1
+     178:	e1a03000 	mov	r3, r0
+     17c:	e58d0010 	str	r0, [sp, #16]
+     180:	e58d100c 	str	r1, [sp, #12]
+     184:	e59d0010 	ldr	r0, [sp, #16]
+     188:	e58d0008 	str	r0, [sp, #8]
+     18c:	e58d2004 	str	r2, [sp, #4]
+     190:	e58d3000 	str	r3, [sp]
+     194:	eaffffff 	b	198 <strcpy+0x28>
+     198:	e59d000c 	ldr	r0, [sp, #12]
+     19c:	e2801001 	add	r1, r0, #1
+     1a0:	e58d100c 	str	r1, [sp, #12]
+     1a4:	e5d00000 	ldrb	r0, [r0]
+     1a8:	e59d1010 	ldr	r1, [sp, #16]
+     1ac:	e2812001 	add	r2, r1, #1
+     1b0:	e58d2010 	str	r2, [sp, #16]
+     1b4:	e5c10000 	strb	r0, [r1]
+     1b8:	e3500000 	cmp	r0, #0
+     1bc:	0a000001 	beq	1c8 <strcpy+0x58>
+     1c0:	eaffffff 	b	1c4 <strcpy+0x54>
+     1c4:	eafffff3 	b	198 <strcpy+0x28>
+     1c8:	e59d0008 	ldr	r0, [sp, #8]
+     1cc:	e28dd014 	add	sp, sp, #20
+     1d0:	e12fff1e 	bx	lr
+
+000001d4 <strcmp>:
+     1d4:	e24dd014 	sub	sp, sp, #20
+     1d8:	e1a02001 	mov	r2, r1
+     1dc:	e1a03000 	mov	r3, r0
+     1e0:	e58d0010 	str	r0, [sp, #16]
+     1e4:	e58d100c 	str	r1, [sp, #12]
+     1e8:	e58d2008 	str	r2, [sp, #8]
+     1ec:	e58d3004 	str	r3, [sp, #4]
+     1f0:	eaffffff 	b	1f4 <strcmp+0x20>
+     1f4:	e59d0010 	ldr	r0, [sp, #16]
+     1f8:	e5d00000 	ldrb	r0, [r0]
+     1fc:	e3a01000 	mov	r1, #0
+     200:	e3500000 	cmp	r0, #0
+     204:	e58d1000 	str	r1, [sp]
+     208:	0a000009 	beq	234 <strcmp+0x60>
+     20c:	eaffffff 	b	210 <strcmp+0x3c>
+     210:	e59d0010 	ldr	r0, [sp, #16]
+     214:	e5d00000 	ldrb	r0, [r0]
+     218:	e59d100c 	ldr	r1, [sp, #12]
+     21c:	e5d11000 	ldrb	r1, [r1]
+     220:	e3a02000 	mov	r2, #0
+     224:	e1500001 	cmp	r0, r1
+     228:	03a02001 	moveq	r2, #1
+     22c:	e58d2000 	str	r2, [sp]
+     230:	eaffffff 	b	234 <strcmp+0x60>
+     234:	e59d0000 	ldr	r0, [sp]
+     238:	e3100001 	tst	r0, #1
+     23c:	0a000007 	beq	260 <strcmp+0x8c>
+     240:	eaffffff 	b	244 <strcmp+0x70>
+     244:	e59d0010 	ldr	r0, [sp, #16]
+     248:	e2800001 	add	r0, r0, #1
+     24c:	e58d0010 	str	r0, [sp, #16]
+     250:	e59d000c 	ldr	r0, [sp, #12]
+     254:	e2800001 	add	r0, r0, #1
+     258:	e58d000c 	str	r0, [sp, #12]
+     25c:	eaffffe4 	b	1f4 <strcmp+0x20>
+     260:	e59d0010 	ldr	r0, [sp, #16]
+     264:	e5d00000 	ldrb	r0, [r0]
+     268:	e59d100c 	ldr	r1, [sp, #12]
+     26c:	e5d11000 	ldrb	r1, [r1]
+     270:	e0400001 	sub	r0, r0, r1
+     274:	e28dd014 	add	sp, sp, #20
+     278:	e12fff1e 	bx	lr
+
+0000027c <strlen>:
+     27c:	e24dd00c 	sub	sp, sp, #12
+     280:	e1a01000 	mov	r1, r0
+     284:	e58d0008 	str	r0, [sp, #8]
+     288:	e3a00000 	mov	r0, #0
+     28c:	e58d0004 	str	r0, [sp, #4]
+     290:	e58d1000 	str	r1, [sp]
+     294:	eaffffff 	b	298 <strlen+0x1c>
+     298:	e59d0008 	ldr	r0, [sp, #8]
+     29c:	e59d1004 	ldr	r1, [sp, #4]
+     2a0:	e7d00001 	ldrb	r0, [r0, r1]
+     2a4:	e3500000 	cmp	r0, #0
+     2a8:	0a000005 	beq	2c4 <strlen+0x48>
+     2ac:	eaffffff 	b	2b0 <strlen+0x34>
+     2b0:	eaffffff 	b	2b4 <strlen+0x38>
+     2b4:	e59d0004 	ldr	r0, [sp, #4]
+     2b8:	e2800001 	add	r0, r0, #1
+     2bc:	e58d0004 	str	r0, [sp, #4]
+     2c0:	eafffff4 	b	298 <strlen+0x1c>
+     2c4:	e59d0004 	ldr	r0, [sp, #4]
+     2c8:	e28dd00c 	add	sp, sp, #12
+     2cc:	e12fff1e 	bx	lr
+
+000002d0 <memset>:
+     2d0:	e92d4800 	push	{fp, lr}
+     2d4:	e1a0b00d 	mov	fp, sp
+     2d8:	e24dd02c 	sub	sp, sp, #44	; 0x2c
+     2dc:	e1a03002 	mov	r3, r2
+     2e0:	e1a0c001 	mov	ip, r1
+     2e4:	e1a0e000 	mov	lr, r0
+     2e8:	e50b0004 	str	r0, [fp, #-4]
+     2ec:	e50b1008 	str	r1, [fp, #-8]
+     2f0:	e50b200c 	str	r2, [fp, #-12]
+     2f4:	e51b0004 	ldr	r0, [fp, #-4]
+     2f8:	e50b0010 	str	r0, [fp, #-16]
+     2fc:	e51b0008 	ldr	r0, [fp, #-8]
+     300:	e54b0011 	strb	r0, [fp, #-17]	; 0xffffffef
+     304:	e55b0011 	ldrb	r0, [fp, #-17]	; 0xffffffef
+     308:	e1a01c00 	lsl	r1, r0, #24
+     30c:	e1811800 	orr	r1, r1, r0, lsl #16
+     310:	e1811400 	orr	r1, r1, r0, lsl #8
+     314:	e1810000 	orr	r0, r1, r0
+     318:	e58d0014 	str	r0, [sp, #20]
+     31c:	e58d300c 	str	r3, [sp, #12]
+     320:	e58dc008 	str	ip, [sp, #8]
+     324:	e58de004 	str	lr, [sp, #4]
+     328:	eaffffff 	b	32c <memset+0x5c>
+     32c:	e51b000c 	ldr	r0, [fp, #-12]
+     330:	e3a01000 	mov	r1, #0
+     334:	e3500000 	cmp	r0, #0
+     338:	e58d1000 	str	r1, [sp]
+     33c:	0a000006 	beq	35c <memset+0x8c>
+     340:	eaffffff 	b	344 <memset+0x74>
+     344:	e55b0010 	ldrb	r0, [fp, #-16]
+     348:	e2000003 	and	r0, r0, #3
+     34c:	e3500000 	cmp	r0, #0
+     350:	13a00001 	movne	r0, #1
+     354:	e58d0000 	str	r0, [sp]
+     358:	eaffffff 	b	35c <memset+0x8c>
+     35c:	e59d0000 	ldr	r0, [sp]
+     360:	e3100001 	tst	r0, #1
+     364:	0a00000b 	beq	398 <memset+0xc8>
+     368:	eaffffff 	b	36c <memset+0x9c>
+     36c:	e55b0011 	ldrb	r0, [fp, #-17]	; 0xffffffef
+     370:	e51b1010 	ldr	r1, [fp, #-16]
+     374:	e5c10000 	strb	r0, [r1]
+     378:	eaffffff 	b	37c <memset+0xac>
+     37c:	e51b000c 	ldr	r0, [fp, #-12]
+     380:	e2400001 	sub	r0, r0, #1
+     384:	e50b000c 	str	r0, [fp, #-12]
+     388:	e51b0010 	ldr	r0, [fp, #-16]
+     38c:	e2800001 	add	r0, r0, #1
+     390:	e50b0010 	str	r0, [fp, #-16]
+     394:	eaffffe4 	b	32c <memset+0x5c>
+     398:	e51b0010 	ldr	r0, [fp, #-16]
+     39c:	e58d0010 	str	r0, [sp, #16]
+     3a0:	eaffffff 	b	3a4 <memset+0xd4>
+     3a4:	e51b000c 	ldr	r0, [fp, #-12]
+     3a8:	e3500004 	cmp	r0, #4
+     3ac:	3a00000b 	bcc	3e0 <memset+0x110>
+     3b0:	eaffffff 	b	3b4 <memset+0xe4>
+     3b4:	e59d0014 	ldr	r0, [sp, #20]
+     3b8:	e59d1010 	ldr	r1, [sp, #16]
+     3bc:	e5810000 	str	r0, [r1]
+     3c0:	eaffffff 	b	3c4 <memset+0xf4>
+     3c4:	e51b000c 	ldr	r0, [fp, #-12]
+     3c8:	e2400004 	sub	r0, r0, #4
+     3cc:	e50b000c 	str	r0, [fp, #-12]
+     3d0:	e59d0010 	ldr	r0, [sp, #16]
+     3d4:	e2800004 	add	r0, r0, #4
+     3d8:	e58d0010 	str	r0, [sp, #16]
+     3dc:	eafffff0 	b	3a4 <memset+0xd4>
+     3e0:	e59d0010 	ldr	r0, [sp, #16]
+     3e4:	e50b0010 	str	r0, [fp, #-16]
+     3e8:	eaffffff 	b	3ec <memset+0x11c>
+     3ec:	e51b000c 	ldr	r0, [fp, #-12]
+     3f0:	e3500000 	cmp	r0, #0
+     3f4:	0a00000b 	beq	428 <memset+0x158>
+     3f8:	eaffffff 	b	3fc <memset+0x12c>
+     3fc:	e55b0011 	ldrb	r0, [fp, #-17]	; 0xffffffef
+     400:	e51b1010 	ldr	r1, [fp, #-16]
+     404:	e5c10000 	strb	r0, [r1]
+     408:	eaffffff 	b	40c <memset+0x13c>
+     40c:	e51b000c 	ldr	r0, [fp, #-12]
+     410:	e2400001 	sub	r0, r0, #1
+     414:	e50b000c 	str	r0, [fp, #-12]
+     418:	e51b0010 	ldr	r0, [fp, #-16]
+     41c:	e2800001 	add	r0, r0, #1
+     420:	e50b0010 	str	r0, [fp, #-16]
+     424:	eafffff0 	b	3ec <memset+0x11c>
+     428:	e51b0004 	ldr	r0, [fp, #-4]
+     42c:	e1a0d00b 	mov	sp, fp
+     430:	e8bd8800 	pop	{fp, pc}
+
+00000434 <strchr>:
+     434:	e24dd014 	sub	sp, sp, #20
+     438:	e1a02001 	mov	r2, r1
+     43c:	e1a03000 	mov	r3, r0
+     440:	e58d000c 	str	r0, [sp, #12]
+     444:	e5cd100b 	strb	r1, [sp, #11]
+     448:	e58d2004 	str	r2, [sp, #4]
+     44c:	e58d3000 	str	r3, [sp]
+     450:	eaffffff 	b	454 <strchr+0x20>
+     454:	e59d000c 	ldr	r0, [sp, #12]
+     458:	e5d00000 	ldrb	r0, [r0]
+     45c:	e3500000 	cmp	r0, #0
+     460:	0a00000e 	beq	4a0 <strchr+0x6c>
+     464:	eaffffff 	b	468 <strchr+0x34>
+     468:	e59d000c 	ldr	r0, [sp, #12]
+     46c:	e5d00000 	ldrb	r0, [r0]
+     470:	e5dd100b 	ldrb	r1, [sp, #11]
+     474:	e1500001 	cmp	r0, r1
+     478:	1a000003 	bne	48c <strchr+0x58>
+     47c:	eaffffff 	b	480 <strchr+0x4c>
+     480:	e59d000c 	ldr	r0, [sp, #12]
+     484:	e58d0010 	str	r0, [sp, #16]
+     488:	ea000007 	b	4ac <strchr+0x78>
+     48c:	eaffffff 	b	490 <strchr+0x5c>
+     490:	e59d000c 	ldr	r0, [sp, #12]
+     494:	e2800001 	add	r0, r0, #1
+     498:	e58d000c 	str	r0, [sp, #12]
+     49c:	eaffffec 	b	454 <strchr+0x20>
+     4a0:	e3a00000 	mov	r0, #0
+     4a4:	e58d0010 	str	r0, [sp, #16]
+     4a8:	eaffffff 	b	4ac <strchr+0x78>
+     4ac:	e59d0010 	ldr	r0, [sp, #16]
+     4b0:	e28dd014 	add	sp, sp, #20
+     4b4:	e12fff1e 	bx	lr
+
+000004b8 <gets>:
+     4b8:	e92d4800 	push	{fp, lr}
+     4bc:	e1a0b00d 	mov	fp, sp
+     4c0:	e24dd020 	sub	sp, sp, #32
+     4c4:	e1a02001 	mov	r2, r1
+     4c8:	e1a03000 	mov	r3, r0
+     4cc:	e50b0004 	str	r0, [fp, #-4]
+     4d0:	e50b1008 	str	r1, [fp, #-8]
+     4d4:	e3a00000 	mov	r0, #0
+     4d8:	e50b000c 	str	r0, [fp, #-12]
+     4dc:	e58d2008 	str	r2, [sp, #8]
+     4e0:	e58d3004 	str	r3, [sp, #4]
+     4e4:	eaffffff 	b	4e8 <gets+0x30>
+     4e8:	e51b000c 	ldr	r0, [fp, #-12]
+     4ec:	e2800001 	add	r0, r0, #1
+     4f0:	e51b1008 	ldr	r1, [fp, #-8]
+     4f4:	e1500001 	cmp	r0, r1
+     4f8:	aa00001a 	bge	568 <gets+0xb0>
+     4fc:	eaffffff 	b	500 <gets+0x48>
+     500:	e3a00000 	mov	r0, #0
+     504:	e28d100f 	add	r1, sp, #15
+     508:	e3a02001 	mov	r2, #1
+     50c:	eb0000ab 	bl	7c0 <read>
+     510:	e58d0010 	str	r0, [sp, #16]
+     514:	e59d0010 	ldr	r0, [sp, #16]
+     518:	e3500000 	cmp	r0, #0
+     51c:	ca000001 	bgt	528 <gets+0x70>
+     520:	eaffffff 	b	524 <gets+0x6c>
+     524:	ea00000f 	b	568 <gets+0xb0>
+     528:	e5dd000f 	ldrb	r0, [sp, #15]
+     52c:	e51b1004 	ldr	r1, [fp, #-4]
+     530:	e51b200c 	ldr	r2, [fp, #-12]
+     534:	e2823001 	add	r3, r2, #1
+     538:	e50b300c 	str	r3, [fp, #-12]
+     53c:	e7c10002 	strb	r0, [r1, r2]
+     540:	e5dd000f 	ldrb	r0, [sp, #15]
+     544:	e350000a 	cmp	r0, #10
+     548:	0a000004 	beq	560 <gets+0xa8>
+     54c:	eaffffff 	b	550 <gets+0x98>
+     550:	e5dd000f 	ldrb	r0, [sp, #15]
+     554:	e350000d 	cmp	r0, #13
+     558:	1a000001 	bne	564 <gets+0xac>
+     55c:	eaffffff 	b	560 <gets+0xa8>
+     560:	ea000000 	b	568 <gets+0xb0>
+     564:	eaffffdf 	b	4e8 <gets+0x30>
+     568:	e51b0004 	ldr	r0, [fp, #-4]
+     56c:	e51b100c 	ldr	r1, [fp, #-12]
+     570:	e3a02000 	mov	r2, #0
+     574:	e7c02001 	strb	r2, [r0, r1]
+     578:	e51b0004 	ldr	r0, [fp, #-4]
+     57c:	e1a0d00b 	mov	sp, fp
+     580:	e8bd8800 	pop	{fp, pc}
+
+00000584 <stat>:
+     584:	e92d4800 	push	{fp, lr}
+     588:	e1a0b00d 	mov	fp, sp
+     58c:	e24dd020 	sub	sp, sp, #32
+     590:	e1a02001 	mov	r2, r1
+     594:	e1a03000 	mov	r3, r0
+     598:	e50b0008 	str	r0, [fp, #-8]
+     59c:	e50b100c 	str	r1, [fp, #-12]
+     5a0:	e51b0008 	ldr	r0, [fp, #-8]
+     5a4:	e3a01000 	mov	r1, #0
+     5a8:	e58d2008 	str	r2, [sp, #8]
+     5ac:	e58d3004 	str	r3, [sp, #4]
+     5b0:	eb0000af 	bl	874 <open>
+     5b4:	e58d0010 	str	r0, [sp, #16]
+     5b8:	e59d0010 	ldr	r0, [sp, #16]
+     5bc:	e3500000 	cmp	r0, #0
+     5c0:	aa000003 	bge	5d4 <stat+0x50>
+     5c4:	eaffffff 	b	5c8 <stat+0x44>
+     5c8:	e3e00000 	mvn	r0, #0
+     5cc:	e50b0004 	str	r0, [fp, #-4]
+     5d0:	ea000009 	b	5fc <stat+0x78>
+     5d4:	e59d0010 	ldr	r0, [sp, #16]
+     5d8:	e51b100c 	ldr	r1, [fp, #-12]
+     5dc:	eb0000bf 	bl	8e0 <fstat>
+     5e0:	e58d000c 	str	r0, [sp, #12]
+     5e4:	e59d0010 	ldr	r0, [sp, #16]
+     5e8:	eb000086 	bl	808 <close>
+     5ec:	e59d100c 	ldr	r1, [sp, #12]
+     5f0:	e50b1004 	str	r1, [fp, #-4]
+     5f4:	e58d0000 	str	r0, [sp]
+     5f8:	eaffffff 	b	5fc <stat+0x78>
+     5fc:	e51b0004 	ldr	r0, [fp, #-4]
+     600:	e1a0d00b 	mov	sp, fp
+     604:	e8bd8800 	pop	{fp, pc}
+
+00000608 <atoi>:
+     608:	e24dd010 	sub	sp, sp, #16
+     60c:	e1a01000 	mov	r1, r0
+     610:	e58d000c 	str	r0, [sp, #12]
+     614:	e3a00000 	mov	r0, #0
+     618:	e58d0008 	str	r0, [sp, #8]
+     61c:	e58d1004 	str	r1, [sp, #4]
+     620:	eaffffff 	b	624 <atoi+0x1c>
+     624:	e59d000c 	ldr	r0, [sp, #12]
+     628:	e5d00000 	ldrb	r0, [r0]
+     62c:	e3a01000 	mov	r1, #0
+     630:	e3500030 	cmp	r0, #48	; 0x30
+     634:	e58d1000 	str	r1, [sp]
+     638:	ba000007 	blt	65c <atoi+0x54>
+     63c:	eaffffff 	b	640 <atoi+0x38>
+     640:	e59d000c 	ldr	r0, [sp, #12]
+     644:	e5d00000 	ldrb	r0, [r0]
+     648:	e3a01000 	mov	r1, #0
+     64c:	e350003a 	cmp	r0, #58	; 0x3a
+     650:	b3a01001 	movlt	r1, #1
+     654:	e58d1000 	str	r1, [sp]
+     658:	eaffffff 	b	65c <atoi+0x54>
+     65c:	e59d0000 	ldr	r0, [sp]
+     660:	e3100001 	tst	r0, #1
+     664:	0a00000a 	beq	694 <atoi+0x8c>
+     668:	eaffffff 	b	66c <atoi+0x64>
+     66c:	e59d0008 	ldr	r0, [sp, #8]
+     670:	e0800100 	add	r0, r0, r0, lsl #2
+     674:	e59d100c 	ldr	r1, [sp, #12]
+     678:	e2812001 	add	r2, r1, #1
+     67c:	e58d200c 	str	r2, [sp, #12]
+     680:	e5d11000 	ldrb	r1, [r1]
+     684:	e0810080 	add	r0, r1, r0, lsl #1
+     688:	e2400030 	sub	r0, r0, #48	; 0x30
+     68c:	e58d0008 	str	r0, [sp, #8]
+     690:	eaffffe3 	b	624 <atoi+0x1c>
+     694:	e59d0008 	ldr	r0, [sp, #8]
+     698:	e28dd010 	add	sp, sp, #16
+     69c:	e12fff1e 	bx	lr
+
+000006a0 <memmove>:
+     6a0:	e92d4800 	push	{fp, lr}
+     6a4:	e1a0b00d 	mov	fp, sp
+     6a8:	e24dd020 	sub	sp, sp, #32
+     6ac:	e1a03002 	mov	r3, r2
+     6b0:	e1a0c001 	mov	ip, r1
+     6b4:	e1a0e000 	mov	lr, r0
+     6b8:	e50b0004 	str	r0, [fp, #-4]
+     6bc:	e50b1008 	str	r1, [fp, #-8]
+     6c0:	e50b200c 	str	r2, [fp, #-12]
+     6c4:	e51b0004 	ldr	r0, [fp, #-4]
+     6c8:	e58d0010 	str	r0, [sp, #16]
+     6cc:	e51b0008 	ldr	r0, [fp, #-8]
+     6d0:	e58d000c 	str	r0, [sp, #12]
+     6d4:	e58d3008 	str	r3, [sp, #8]
+     6d8:	e58dc004 	str	ip, [sp, #4]
+     6dc:	e58de000 	str	lr, [sp]
+     6e0:	eaffffff 	b	6e4 <memmove+0x44>
+     6e4:	e51b000c 	ldr	r0, [fp, #-12]
+     6e8:	e2401001 	sub	r1, r0, #1
+     6ec:	e50b100c 	str	r1, [fp, #-12]
+     6f0:	e3500001 	cmp	r0, #1
+     6f4:	ba000009 	blt	720 <memmove+0x80>
+     6f8:	eaffffff 	b	6fc <memmove+0x5c>
+     6fc:	e59d000c 	ldr	r0, [sp, #12]
+     700:	e2801001 	add	r1, r0, #1
+     704:	e58d100c 	str	r1, [sp, #12]
+     708:	e5d00000 	ldrb	r0, [r0]
+     70c:	e59d1010 	ldr	r1, [sp, #16]
+     710:	e2812001 	add	r2, r1, #1
+     714:	e58d2010 	str	r2, [sp, #16]
+     718:	e5c10000 	strb	r0, [r1]
+     71c:	eafffff0 	b	6e4 <memmove+0x44>
+     720:	e51b0004 	ldr	r0, [fp, #-4]
+     724:	e1a0d00b 	mov	sp, fp
+     728:	e8bd8800 	pop	{fp, pc}
+
+0000072c <raise>:
+    return vdst;
+}
+
+void
+raise()
+{}
+     72c:	e12fff1e 	bx	lr
+
+00000730 <fork>:
+     730:	e52d4004 	push	{r4}		; (str r4, [sp, #-4]!)
+     734:	e1a04003 	mov	r4, r3
+     738:	e1a03002 	mov	r3, r2
+     73c:	e1a02001 	mov	r2, r1
+     740:	e1a01000 	mov	r1, r0
+     744:	e3a00001 	mov	r0, #1
+     748:	ef000000 	svc	0x00000000
+     74c:	e49d4004 	pop	{r4}		; (ldr r4, [sp], #4)
+     750:	e12fff1e 	bx	lr
+
+00000754 <exit>:
+     754:	e52d4004 	push	{r4}		; (str r4, [sp, #-4]!)
+     758:	e1a04003 	mov	r4, r3
+     75c:	e1a03002 	mov	r3, r2
+     760:	e1a02001 	mov	r2, r1
+     764:	e1a01000 	mov	r1, r0
+     768:	e3a00002 	mov	r0, #2
+     76c:	ef000000 	svc	0x00000000
+     770:	e49d4004 	pop	{r4}		; (ldr r4, [sp], #4)
+     774:	e12fff1e 	bx	lr
+
+00000778 <wait>:
+     778:	e52d4004 	push	{r4}		; (str r4, [sp, #-4]!)
+     77c:	e1a04003 	mov	r4, r3
+     780:	e1a03002 	mov	r3, r2
+     784:	e1a02001 	mov	r2, r1
+     788:	e1a01000 	mov	r1, r0
+     78c:	e3a00003 	mov	r0, #3
+     790:	ef000000 	svc	0x00000000
+     794:	e49d4004 	pop	{r4}		; (ldr r4, [sp], #4)
+     798:	e12fff1e 	bx	lr
+
+0000079c <pipe>:
+     79c:	e52d4004 	push	{r4}		; (str r4, [sp, #-4]!)
+     7a0:	e1a04003 	mov	r4, r3
+     7a4:	e1a03002 	mov	r3, r2
+     7a8:	e1a02001 	mov	r2, r1
+     7ac:	e1a01000 	mov	r1, r0
+     7b0:	e3a00004 	mov	r0, #4
+     7b4:	ef000000 	svc	0x00000000
+     7b8:	e49d4004 	pop	{r4}		; (ldr r4, [sp], #4)
+     7bc:	e12fff1e 	bx	lr
+
+000007c0 <read>:
+     7c0:	e52d4004 	push	{r4}		; (str r4, [sp, #-4]!)
+     7c4:	e1a04003 	mov	r4, r3
+     7c8:	e1a03002 	mov	r3, r2
+     7cc:	e1a02001 	mov	r2, r1
+     7d0:	e1a01000 	mov	r1, r0
+     7d4:	e3a00005 	mov	r0, #5
+     7d8:	ef000000 	svc	0x00000000
+     7dc:	e49d4004 	pop	{r4}		; (ldr r4, [sp], #4)
+     7e0:	e12fff1e 	bx	lr
+
+000007e4 <write>:
+     7e4:	e52d4004 	push	{r4}		; (str r4, [sp, #-4]!)
+     7e8:	e1a04003 	mov	r4, r3
+     7ec:	e1a03002 	mov	r3, r2
+     7f0:	e1a02001 	mov	r2, r1
+     7f4:	e1a01000 	mov	r1, r0
+     7f8:	e3a00010 	mov	r0, #16
+     7fc:	ef000000 	svc	0x00000000
+     800:	e49d4004 	pop	{r4}		; (ldr r4, [sp], #4)
+     804:	e12fff1e 	bx	lr
+
+00000808 <close>:
+     808:	e52d4004 	push	{r4}		; (str r4, [sp, #-4]!)
+     80c:	e1a04003 	mov	r4, r3
+     810:	e1a03002 	mov	r3, r2
+     814:	e1a02001 	mov	r2, r1
+     818:	e1a01000 	mov	r1, r0
+     81c:	e3a00015 	mov	r0, #21
+     820:	ef000000 	svc	0x00000000
+     824:	e49d4004 	pop	{r4}		; (ldr r4, [sp], #4)
+     828:	e12fff1e 	bx	lr
+
+0000082c <kill>:
+     82c:	e52d4004 	push	{r4}		; (str r4, [sp, #-4]!)
+     830:	e1a04003 	mov	r4, r3
+     834:	e1a03002 	mov	r3, r2
+     838:	e1a02001 	mov	r2, r1
+     83c:	e1a01000 	mov	r1, r0
+     840:	e3a00006 	mov	r0, #6
+     844:	ef000000 	svc	0x00000000
+     848:	e49d4004 	pop	{r4}		; (ldr r4, [sp], #4)
+     84c:	e12fff1e 	bx	lr
+
+00000850 <exec>:
+     850:	e52d4004 	push	{r4}		; (str r4, [sp, #-4]!)
+     854:	e1a04003 	mov	r4, r3
+     858:	e1a03002 	mov	r3, r2
+     85c:	e1a02001 	mov	r2, r1
+     860:	e1a01000 	mov	r1, r0
+     864:	e3a00007 	mov	r0, #7
+     868:	ef000000 	svc	0x00000000
+     86c:	e49d4004 	pop	{r4}		; (ldr r4, [sp], #4)
+     870:	e12fff1e 	bx	lr
+
+00000874 <open>:
+     874:	e52d4004 	push	{r4}		; (str r4, [sp, #-4]!)
+     878:	e1a04003 	mov	r4, r3
+     87c:	e1a03002 	mov	r3, r2
+     880:	e1a02001 	mov	r2, r1
+     884:	e1a01000 	mov	r1, r0
+     888:	e3a0000f 	mov	r0, #15
+     88c:	ef000000 	svc	0x00000000
+     890:	e49d4004 	pop	{r4}		; (ldr r4, [sp], #4)
+     894:	e12fff1e 	bx	lr
+
+00000898 <mknod>:
+     898:	e52d4004 	push	{r4}		; (str r4, [sp, #-4]!)
+     89c:	e1a04003 	mov	r4, r3
+     8a0:	e1a03002 	mov	r3, r2
+     8a4:	e1a02001 	mov	r2, r1
+     8a8:	e1a01000 	mov	r1, r0
+     8ac:	e3a00011 	mov	r0, #17
+     8b0:	ef000000 	svc	0x00000000
+     8b4:	e49d4004 	pop	{r4}		; (ldr r4, [sp], #4)
+     8b8:	e12fff1e 	bx	lr
+
+000008bc <unlink>:
+     8bc:	e52d4004 	push	{r4}		; (str r4, [sp, #-4]!)
+     8c0:	e1a04003 	mov	r4, r3
+     8c4:	e1a03002 	mov	r3, r2
+     8c8:	e1a02001 	mov	r2, r1
+     8cc:	e1a01000 	mov	r1, r0
+     8d0:	e3a00012 	mov	r0, #18
+     8d4:	ef000000 	svc	0x00000000
+     8d8:	e49d4004 	pop	{r4}		; (ldr r4, [sp], #4)
+     8dc:	e12fff1e 	bx	lr
+
+000008e0 <fstat>:
+     8e0:	e52d4004 	push	{r4}		; (str r4, [sp, #-4]!)
+     8e4:	e1a04003 	mov	r4, r3
+     8e8:	e1a03002 	mov	r3, r2
+     8ec:	e1a02001 	mov	r2, r1
+     8f0:	e1a01000 	mov	r1, r0
+     8f4:	e3a00008 	mov	r0, #8
+     8f8:	ef000000 	svc	0x00000000
+     8fc:	e49d4004 	pop	{r4}		; (ldr r4, [sp], #4)
+     900:	e12fff1e 	bx	lr
+
+00000904 <link>:
+     904:	e52d4004 	push	{r4}		; (str r4, [sp, #-4]!)
+     908:	e1a04003 	mov	r4, r3
+     90c:	e1a03002 	mov	r3, r2
+     910:	e1a02001 	mov	r2, r1
+     914:	e1a01000 	mov	r1, r0
+     918:	e3a00013 	mov	r0, #19
+     91c:	ef000000 	svc	0x00000000
+     920:	e49d4004 	pop	{r4}		; (ldr r4, [sp], #4)
+     924:	e12fff1e 	bx	lr
+
+00000928 <mkdir>:
+     928:	e52d4004 	push	{r4}		; (str r4, [sp, #-4]!)
+     92c:	e1a04003 	mov	r4, r3
+     930:	e1a03002 	mov	r3, r2
+     934:	e1a02001 	mov	r2, r1
+     938:	e1a01000 	mov	r1, r0
+     93c:	e3a00014 	mov	r0, #20
+     940:	ef000000 	svc	0x00000000
+     944:	e49d4004 	pop	{r4}		; (ldr r4, [sp], #4)
+     948:	e12fff1e 	bx	lr
+
+0000094c <chdir>:
+     94c:	e52d4004 	push	{r4}		; (str r4, [sp, #-4]!)
+     950:	e1a04003 	mov	r4, r3
+     954:	e1a03002 	mov	r3, r2
+     958:	e1a02001 	mov	r2, r1
+     95c:	e1a01000 	mov	r1, r0
+     960:	e3a00009 	mov	r0, #9
+     964:	ef000000 	svc	0x00000000
+     968:	e49d4004 	pop	{r4}		; (ldr r4, [sp], #4)
+     96c:	e12fff1e 	bx	lr
+
+00000970 <dup>:
+     970:	e52d4004 	push	{r4}		; (str r4, [sp, #-4]!)
+     974:	e1a04003 	mov	r4, r3
+     978:	e1a03002 	mov	r3, r2
+     97c:	e1a02001 	mov	r2, r1
+     980:	e1a01000 	mov	r1, r0
+     984:	e3a0000a 	mov	r0, #10
+     988:	ef000000 	svc	0x00000000
+     98c:	e49d4004 	pop	{r4}		; (ldr r4, [sp], #4)
+     990:	e12fff1e 	bx	lr
+
+00000994 <getpid>:
+     994:	e52d4004 	push	{r4}		; (str r4, [sp, #-4]!)
+     998:	e1a04003 	mov	r4, r3
+     99c:	e1a03002 	mov	r3, r2
+     9a0:	e1a02001 	mov	r2, r1
+     9a4:	e1a01000 	mov	r1, r0
+     9a8:	e3a0000b 	mov	r0, #11
+     9ac:	ef000000 	svc	0x00000000
+     9b0:	e49d4004 	pop	{r4}		; (ldr r4, [sp], #4)
+     9b4:	e12fff1e 	bx	lr
+
+000009b8 <sbrk>:
+     9b8:	e52d4004 	push	{r4}		; (str r4, [sp, #-4]!)
+     9bc:	e1a04003 	mov	r4, r3
+     9c0:	e1a03002 	mov	r3, r2
+     9c4:	e1a02001 	mov	r2, r1
+     9c8:	e1a01000 	mov	r1, r0
+     9cc:	e3a0000c 	mov	r0, #12
+     9d0:	ef000000 	svc	0x00000000
+     9d4:	e49d4004 	pop	{r4}		; (ldr r4, [sp], #4)
+     9d8:	e12fff1e 	bx	lr
+
+000009dc <sleep>:
+     9dc:	e52d4004 	push	{r4}		; (str r4, [sp, #-4]!)
+     9e0:	e1a04003 	mov	r4, r3
+     9e4:	e1a03002 	mov	r3, r2
+     9e8:	e1a02001 	mov	r2, r1
+     9ec:	e1a01000 	mov	r1, r0
+     9f0:	e3a0000d 	mov	r0, #13
+     9f4:	ef000000 	svc	0x00000000
+     9f8:	e49d4004 	pop	{r4}		; (ldr r4, [sp], #4)
+     9fc:	e12fff1e 	bx	lr
+
+00000a00 <uptime>:
+     a00:	e52d4004 	push	{r4}		; (str r4, [sp, #-4]!)
+     a04:	e1a04003 	mov	r4, r3
+     a08:	e1a03002 	mov	r3, r2
+     a0c:	e1a02001 	mov	r2, r1
+     a10:	e1a01000 	mov	r1, r0
+     a14:	e3a0000e 	mov	r0, #14
+     a18:	ef000000 	svc	0x00000000
+     a1c:	e49d4004 	pop	{r4}		; (ldr r4, [sp], #4)
+     a20:	e12fff1e 	bx	lr
+
+00000a24 <printf>:
+}
+
+// Print to the given fd. Only understands %d, %x, %p, %s.
+void
+printf(int fd, char *fmt, ...)
+{
+     a24:	e92d4800 	push	{fp, lr}
+     a28:	e1a0b00d 	mov	fp, sp
+     a2c:	e24dd028 	sub	sp, sp, #40	; 0x28
+     a30:	e1a02001 	mov	r2, r1
+     a34:	e1a03000 	mov	r3, r0
+     a38:	e50b0004 	str	r0, [fp, #-4]
+     a3c:	e50b1008 	str	r1, [fp, #-8]
+     a40:	e3a00000 	mov	r0, #0
+     a44:	e58d0010 	str	r0, [sp, #16]
+     a48:	e24b1008 	sub	r1, fp, #8
+     a4c:	e2811004 	add	r1, r1, #4
+     a50:	e58d100c 	str	r1, [sp, #12]
+     a54:	e58d0014 	str	r0, [sp, #20]
+     a58:	e58d2008 	str	r2, [sp, #8]
+     a5c:	e58d3004 	str	r3, [sp, #4]
+     a60:	eaffffff 	b	a64 <printf+0x40>
+     a64:	e51b0008 	ldr	r0, [fp, #-8]
+     a68:	e59d1014 	ldr	r1, [sp, #20]
+     a6c:	e7d00001 	ldrb	r0, [r0, r1]
+     a70:	e3500000 	cmp	r0, #0
+     a74:	0a00007e 	beq	c74 <printf+0x250>
+     a78:	eaffffff 	b	a7c <printf+0x58>
+     a7c:	e51b0008 	ldr	r0, [fp, #-8]
+     a80:	e59d1014 	ldr	r1, [sp, #20]
+     a84:	e7d00001 	ldrb	r0, [r0, r1]
+     a88:	e50b0010 	str	r0, [fp, #-16]
+     a8c:	e59d0010 	ldr	r0, [sp, #16]
+     a90:	e3500000 	cmp	r0, #0
+     a94:	1a00000c 	bne	acc <printf+0xa8>
+     a98:	eaffffff 	b	a9c <printf+0x78>
+     a9c:	e51b0010 	ldr	r0, [fp, #-16]
+     aa0:	e3500025 	cmp	r0, #37	; 0x25
+     aa4:	1a000003 	bne	ab8 <printf+0x94>
+     aa8:	eaffffff 	b	aac <printf+0x88>
+     aac:	e3a00025 	mov	r0, #37	; 0x25
+     ab0:	e58d0010 	str	r0, [sp, #16]
+     ab4:	ea000003 	b	ac8 <printf+0xa4>
+     ab8:	e51b0004 	ldr	r0, [fp, #-4]
+     abc:	e55b1010 	ldrb	r1, [fp, #-16]
+     ac0:	eb00006e 	bl	c80 <putc>
+     ac4:	eaffffff 	b	ac8 <printf+0xa4>
+     ac8:	ea000064 	b	c60 <printf+0x23c>
+     acc:	e59d0010 	ldr	r0, [sp, #16]
+     ad0:	e3500025 	cmp	r0, #37	; 0x25
+     ad4:	1a000060 	bne	c5c <printf+0x238>
+     ad8:	eaffffff 	b	adc <printf+0xb8>
+     adc:	e51b0010 	ldr	r0, [fp, #-16]
+     ae0:	e3500064 	cmp	r0, #100	; 0x64
+     ae4:	1a00000a 	bne	b14 <printf+0xf0>
+     ae8:	eaffffff 	b	aec <printf+0xc8>
+     aec:	e51b0004 	ldr	r0, [fp, #-4]
+     af0:	e59d100c 	ldr	r1, [sp, #12]
+     af4:	e5911000 	ldr	r1, [r1]
+     af8:	e3a0200a 	mov	r2, #10
+     afc:	e3a03001 	mov	r3, #1
+     b00:	eb00006f 	bl	cc4 <printint>
+     b04:	e59d000c 	ldr	r0, [sp, #12]
+     b08:	e2800004 	add	r0, r0, #4
+     b0c:	e58d000c 	str	r0, [sp, #12]
+     b10:	ea00004e 	b	c50 <printf+0x22c>
+     b14:	e51b0010 	ldr	r0, [fp, #-16]
+     b18:	e3500078 	cmp	r0, #120	; 0x78
+     b1c:	0a000004 	beq	b34 <printf+0x110>
+     b20:	eaffffff 	b	b24 <printf+0x100>
+     b24:	e51b0010 	ldr	r0, [fp, #-16]
+     b28:	e3500070 	cmp	r0, #112	; 0x70
+     b2c:	1a00000a 	bne	b5c <printf+0x138>
+     b30:	eaffffff 	b	b34 <printf+0x110>
+     b34:	e51b0004 	ldr	r0, [fp, #-4]
+     b38:	e59d100c 	ldr	r1, [sp, #12]
+     b3c:	e5911000 	ldr	r1, [r1]
+     b40:	e3a02010 	mov	r2, #16
+     b44:	e3a03000 	mov	r3, #0
+     b48:	eb00005d 	bl	cc4 <printint>
+     b4c:	e59d000c 	ldr	r0, [sp, #12]
+     b50:	e2800004 	add	r0, r0, #4
+     b54:	e58d000c 	str	r0, [sp, #12]
+     b58:	ea00003b 	b	c4c <printf+0x228>
+     b5c:	e51b0010 	ldr	r0, [fp, #-16]
+     b60:	e3500073 	cmp	r0, #115	; 0x73
+     b64:	1a00001a 	bne	bd4 <printf+0x1b0>
+     b68:	eaffffff 	b	b6c <printf+0x148>
+     b6c:	e59d000c 	ldr	r0, [sp, #12]
+     b70:	e4901004 	ldr	r1, [r0], #4
+     b74:	e50b100c 	str	r1, [fp, #-12]
+     b78:	e58d000c 	str	r0, [sp, #12]
+     b7c:	e51b000c 	ldr	r0, [fp, #-12]
+     b80:	e3500000 	cmp	r0, #0
+     b84:	1a000003 	bne	b98 <printf+0x174>
+     b88:	eaffffff 	b	b8c <printf+0x168>
+     b8c:	e59f00e8 	ldr	r0, [pc, #232]	; c7c <printf+0x258>
+     b90:	e50b000c 	str	r0, [fp, #-12]
+     b94:	eaffffff 	b	b98 <printf+0x174>
+     b98:	eaffffff 	b	b9c <printf+0x178>
+     b9c:	e51b000c 	ldr	r0, [fp, #-12]
+     ba0:	e5d00000 	ldrb	r0, [r0]
+     ba4:	e3500000 	cmp	r0, #0
+     ba8:	0a000008 	beq	bd0 <printf+0x1ac>
+     bac:	eaffffff 	b	bb0 <printf+0x18c>
+     bb0:	e51b0004 	ldr	r0, [fp, #-4]
+     bb4:	e51b100c 	ldr	r1, [fp, #-12]
+     bb8:	e5d11000 	ldrb	r1, [r1]
+     bbc:	eb00002f 	bl	c80 <putc>
+     bc0:	e51b000c 	ldr	r0, [fp, #-12]
+     bc4:	e2800001 	add	r0, r0, #1
+     bc8:	e50b000c 	str	r0, [fp, #-12]
+     bcc:	eafffff2 	b	b9c <printf+0x178>
+     bd0:	ea00001c 	b	c48 <printf+0x224>
+     bd4:	e51b0010 	ldr	r0, [fp, #-16]
+     bd8:	e3500063 	cmp	r0, #99	; 0x63
+     bdc:	1a000008 	bne	c04 <printf+0x1e0>
+     be0:	eaffffff 	b	be4 <printf+0x1c0>
+     be4:	e51b0004 	ldr	r0, [fp, #-4]
+     be8:	e59d100c 	ldr	r1, [sp, #12]
+     bec:	e5d11000 	ldrb	r1, [r1]
+     bf0:	eb000022 	bl	c80 <putc>
+     bf4:	e59d000c 	ldr	r0, [sp, #12]
+     bf8:	e2800004 	add	r0, r0, #4
+     bfc:	e58d000c 	str	r0, [sp, #12]
+     c00:	ea00000f 	b	c44 <printf+0x220>
+     c04:	e51b0010 	ldr	r0, [fp, #-16]
+     c08:	e3500025 	cmp	r0, #37	; 0x25
+     c0c:	1a000004 	bne	c24 <printf+0x200>
+     c10:	eaffffff 	b	c14 <printf+0x1f0>
+     c14:	e51b0004 	ldr	r0, [fp, #-4]
+     c18:	e55b1010 	ldrb	r1, [fp, #-16]
+     c1c:	eb000017 	bl	c80 <putc>
+     c20:	ea000006 	b	c40 <printf+0x21c>
+     c24:	e51b0004 	ldr	r0, [fp, #-4]
+     c28:	e3a01025 	mov	r1, #37	; 0x25
+     c2c:	eb000013 	bl	c80 <putc>
+     c30:	e51b0004 	ldr	r0, [fp, #-4]
+     c34:	e55b1010 	ldrb	r1, [fp, #-16]
+     c38:	eb000010 	bl	c80 <putc>
+     c3c:	eaffffff 	b	c40 <printf+0x21c>
+     c40:	eaffffff 	b	c44 <printf+0x220>
+     c44:	eaffffff 	b	c48 <printf+0x224>
+     c48:	eaffffff 	b	c4c <printf+0x228>
+     c4c:	eaffffff 	b	c50 <printf+0x22c>
+     c50:	e3a00000 	mov	r0, #0
+     c54:	e58d0010 	str	r0, [sp, #16]
+     c58:	eaffffff 	b	c5c <printf+0x238>
+     c5c:	eaffffff 	b	c60 <printf+0x23c>
+     c60:	eaffffff 	b	c64 <printf+0x240>
+     c64:	e59d0014 	ldr	r0, [sp, #20]
+     c68:	e2800001 	add	r0, r0, #1
+     c6c:	e58d0014 	str	r0, [sp, #20]
+     c70:	eaffff7b 	b	a64 <printf+0x40>
+     c74:	e1a0d00b 	mov	sp, fp
+     c78:	e8bd8800 	pop	{fp, pc}
+     c7c:	0000133c 	.word	0x0000133c
+
+00000c80 <putc>:
+{
+     c80:	e92d4800 	push	{fp, lr}
+     c84:	e1a0b00d 	mov	fp, sp
+     c88:	e24dd018 	sub	sp, sp, #24
+     c8c:	e1a02001 	mov	r2, r1
+     c90:	e1a03000 	mov	r3, r0
+     c94:	e50b0004 	str	r0, [fp, #-4]
+     c98:	e54b1005 	strb	r1, [fp, #-5]
+    write(fd, &c, 1);
+     c9c:	e51b0004 	ldr	r0, [fp, #-4]
+     ca0:	e24b1005 	sub	r1, fp, #5
+     ca4:	e3a0c001 	mov	ip, #1
+     ca8:	e58d200c 	str	r2, [sp, #12]
+     cac:	e1a0200c 	mov	r2, ip
+     cb0:	e58d3008 	str	r3, [sp, #8]
+     cb4:	ebfffeca 	bl	7e4 <write>
+}
+     cb8:	e58d0004 	str	r0, [sp, #4]
+     cbc:	e1a0d00b 	mov	sp, fp
+     cc0:	e8bd8800 	pop	{fp, pc}
+
+00000cc4 <printint>:
+{
+     cc4:	e92d4830 	push	{r4, r5, fp, lr}
+     cc8:	e28db008 	add	fp, sp, #8
+     ccc:	e24dd040 	sub	sp, sp, #64	; 0x40
+     cd0:	e1a0c003 	mov	ip, r3
+     cd4:	e1a0e002 	mov	lr, r2
+     cd8:	e1a04001 	mov	r4, r1
+     cdc:	e1a05000 	mov	r5, r0
+     ce0:	e50b000c 	str	r0, [fp, #-12]
+     ce4:	e50b1010 	str	r1, [fp, #-16]
+     ce8:	e50b2014 	str	r2, [fp, #-20]	; 0xffffffec
+     cec:	e50b3018 	str	r3, [fp, #-24]	; 0xffffffe8
+     cf0:	e3a00000 	mov	r0, #0
+     cf4:	e58d0018 	str	r0, [sp, #24]
+     cf8:	e51b0018 	ldr	r0, [fp, #-24]	; 0xffffffe8
+     cfc:	e3500000 	cmp	r0, #0
+     d00:	e58dc010 	str	ip, [sp, #16]
+     d04:	e58de00c 	str	lr, [sp, #12]
+     d08:	e58d4008 	str	r4, [sp, #8]
+     d0c:	e58d5004 	str	r5, [sp, #4]
+     d10:	0a00000a 	beq	d40 <printint+0x7c>
+     d14:	eaffffff 	b	d18 <printint+0x54>
+     d18:	e51b0010 	ldr	r0, [fp, #-16]
+     d1c:	e3500000 	cmp	r0, #0
+     d20:	aa000006 	bge	d40 <printint+0x7c>
+     d24:	eaffffff 	b	d28 <printint+0x64>
+     d28:	e3a00001 	mov	r0, #1
+     d2c:	e58d0018 	str	r0, [sp, #24]
+     d30:	e51b0010 	ldr	r0, [fp, #-16]
+     d34:	e2600000 	rsb	r0, r0, #0
+     d38:	e58d0014 	str	r0, [sp, #20]
+     d3c:	ea000002 	b	d4c <printint+0x88>
+     d40:	e51b0010 	ldr	r0, [fp, #-16]
+     d44:	e58d0014 	str	r0, [sp, #20]
+     d48:	eaffffff 	b	d4c <printint+0x88>
+     d4c:	e3a00000 	mov	r0, #0
+     d50:	e58d001c 	str	r0, [sp, #28]
+     d54:	eaffffff 	b	d58 <printint+0x94>
+     d58:	e59d0014 	ldr	r0, [sp, #20]
+     d5c:	e51b1014 	ldr	r1, [fp, #-20]	; 0xffffffec
+     d60:	eb000158 	bl	12c8 <__aeabi_uidivmod>
+     d64:	e59fe0a0 	ldr	lr, [pc, #160]	; e0c <printint+0x148>
+     d68:	e7de1001 	ldrb	r1, [lr, r1]
+     d6c:	e59de01c 	ldr	lr, [sp, #28]
+     d70:	e28e2001 	add	r2, lr, #1
+     d74:	e58d201c 	str	r2, [sp, #28]
+     d78:	e28d2020 	add	r2, sp, #32
+     d7c:	e7c2100e 	strb	r1, [r2, lr]
+     d80:	e58d0000 	str	r0, [sp]
+     d84:	eaffffff 	b	d88 <printint+0xc4>
+     d88:	e51b1014 	ldr	r1, [fp, #-20]	; 0xffffffec
+     d8c:	e59d0014 	ldr	r0, [sp, #20]
+     d90:	eb00010f 	bl	11d4 <__aeabi_uidiv>
+     d94:	e58d0014 	str	r0, [sp, #20]
+     d98:	e3500000 	cmp	r0, #0
+     d9c:	1affffed 	bne	d58 <printint+0x94>
+     da0:	eaffffff 	b	da4 <printint+0xe0>
+     da4:	e59d0018 	ldr	r0, [sp, #24]
+     da8:	e3500000 	cmp	r0, #0
+     dac:	0a000007 	beq	dd0 <printint+0x10c>
+     db0:	eaffffff 	b	db4 <printint+0xf0>
+     db4:	e59d001c 	ldr	r0, [sp, #28]
+     db8:	e2801001 	add	r1, r0, #1
+     dbc:	e58d101c 	str	r1, [sp, #28]
+     dc0:	e28d1020 	add	r1, sp, #32
+     dc4:	e3a0202d 	mov	r2, #45	; 0x2d
+     dc8:	e7c12000 	strb	r2, [r1, r0]
+     dcc:	eaffffff 	b	dd0 <printint+0x10c>
+     dd0:	eaffffff 	b	dd4 <printint+0x110>
+     dd4:	e59d001c 	ldr	r0, [sp, #28]
+     dd8:	e2400001 	sub	r0, r0, #1
+     ddc:	e58d001c 	str	r0, [sp, #28]
+     de0:	e3500000 	cmp	r0, #0
+     de4:	ba000006 	blt	e04 <printint+0x140>
+     de8:	eaffffff 	b	dec <printint+0x128>
+     dec:	e51b000c 	ldr	r0, [fp, #-12]
+     df0:	e59d101c 	ldr	r1, [sp, #28]
+     df4:	e28d2020 	add	r2, sp, #32
+     df8:	e7d21001 	ldrb	r1, [r2, r1]
+     dfc:	ebffff9f 	bl	c80 <putc>
+     e00:	eafffff3 	b	dd4 <printint+0x110>
+     e04:	e24bd008 	sub	sp, fp, #8
+     e08:	e8bd8830 	pop	{r4, r5, fp, pc}
+     e0c:	00001354 	.word	0x00001354
+
+00000e10 <free>:
+static Header base;
+static Header *freep;
+
+void
+free(void *ap)
+{
+     e10:	e24dd014 	sub	sp, sp, #20
+     e14:	e1a01000 	mov	r1, r0
+     e18:	e58d0010 	str	r0, [sp, #16]
+     e1c:	e59d0010 	ldr	r0, [sp, #16]
+     e20:	e2400008 	sub	r0, r0, #8
+     e24:	e58d000c 	str	r0, [sp, #12]
+     e28:	e59f0188 	ldr	r0, [pc, #392]	; fb8 <free+0x1a8>
+     e2c:	e5900000 	ldr	r0, [r0]
+     e30:	e58d0008 	str	r0, [sp, #8]
+     e34:	e58d1004 	str	r1, [sp, #4]
+     e38:	eaffffff 	b	e3c <free+0x2c>
+     e3c:	e59d000c 	ldr	r0, [sp, #12]
+     e40:	e59d1008 	ldr	r1, [sp, #8]
+     e44:	e3a02000 	mov	r2, #0
+     e48:	e1500001 	cmp	r0, r1
+     e4c:	e58d2000 	str	r2, [sp]
+     e50:	9a000008 	bls	e78 <free+0x68>
+     e54:	eaffffff 	b	e58 <free+0x48>
+     e58:	e59d000c 	ldr	r0, [sp, #12]
+     e5c:	e59d1008 	ldr	r1, [sp, #8]
+     e60:	e5911000 	ldr	r1, [r1]
+     e64:	e3a02000 	mov	r2, #0
+     e68:	e1500001 	cmp	r0, r1
+     e6c:	33a02001 	movcc	r2, #1
+     e70:	e58d2000 	str	r2, [sp]
+     e74:	eaffffff 	b	e78 <free+0x68>
+     e78:	e59d0000 	ldr	r0, [sp]
+     e7c:	e1e00000 	mvn	r0, r0
+     e80:	e3100001 	tst	r0, #1
+     e84:	0a000016 	beq	ee4 <free+0xd4>
+     e88:	eaffffff 	b	e8c <free+0x7c>
+     e8c:	e59d0008 	ldr	r0, [sp, #8]
+     e90:	e5901000 	ldr	r1, [r0]
+     e94:	e1500001 	cmp	r0, r1
+     e98:	3a00000c 	bcc	ed0 <free+0xc0>
+     e9c:	eaffffff 	b	ea0 <free+0x90>
+     ea0:	e59d000c 	ldr	r0, [sp, #12]
+     ea4:	e59d1008 	ldr	r1, [sp, #8]
+     ea8:	e1500001 	cmp	r0, r1
+     eac:	8a000006 	bhi	ecc <free+0xbc>
+     eb0:	eaffffff 	b	eb4 <free+0xa4>
+     eb4:	e59d000c 	ldr	r0, [sp, #12]
+     eb8:	e59d1008 	ldr	r1, [sp, #8]
+     ebc:	e5911000 	ldr	r1, [r1]
+     ec0:	e1500001 	cmp	r0, r1
+     ec4:	2a000001 	bcs	ed0 <free+0xc0>
+     ec8:	eaffffff 	b	ecc <free+0xbc>
+     ecc:	ea000004 	b	ee4 <free+0xd4>
+     ed0:	eaffffff 	b	ed4 <free+0xc4>
+     ed4:	e59d0008 	ldr	r0, [sp, #8]
+     ed8:	e5900000 	ldr	r0, [r0]
+     edc:	e58d0008 	str	r0, [sp, #8]
+     ee0:	eaffffd5 	b	e3c <free+0x2c>
+     ee4:	e59d000c 	ldr	r0, [sp, #12]
+     ee8:	e5901004 	ldr	r1, [r0, #4]
+     eec:	e0800181 	add	r0, r0, r1, lsl #3
+     ef0:	e59d1008 	ldr	r1, [sp, #8]
+     ef4:	e5911000 	ldr	r1, [r1]
+     ef8:	e1500001 	cmp	r0, r1
+     efc:	1a00000d 	bne	f38 <free+0x128>
+     f00:	eaffffff 	b	f04 <free+0xf4>
+     f04:	e59d0008 	ldr	r0, [sp, #8]
+     f08:	e5900000 	ldr	r0, [r0]
+     f0c:	e5900004 	ldr	r0, [r0, #4]
+     f10:	e59d100c 	ldr	r1, [sp, #12]
+     f14:	e5912004 	ldr	r2, [r1, #4]
+     f18:	e0820000 	add	r0, r2, r0
+     f1c:	e5810004 	str	r0, [r1, #4]
+     f20:	e59d0008 	ldr	r0, [sp, #8]
+     f24:	e5900000 	ldr	r0, [r0]
+     f28:	e5900000 	ldr	r0, [r0]
+     f2c:	e59d100c 	ldr	r1, [sp, #12]
+     f30:	e5810000 	str	r0, [r1]
+     f34:	ea000004 	b	f4c <free+0x13c>
+     f38:	e59d0008 	ldr	r0, [sp, #8]
+     f3c:	e5900000 	ldr	r0, [r0]
+     f40:	e59d100c 	ldr	r1, [sp, #12]
+     f44:	e5810000 	str	r0, [r1]
+     f48:	eaffffff 	b	f4c <free+0x13c>
+     f4c:	e59d0008 	ldr	r0, [sp, #8]
+     f50:	e5901004 	ldr	r1, [r0, #4]
+     f54:	e0800181 	add	r0, r0, r1, lsl #3
+     f58:	e59d100c 	ldr	r1, [sp, #12]
+     f5c:	e1500001 	cmp	r0, r1
+     f60:	1a00000b 	bne	f94 <free+0x184>
+     f64:	eaffffff 	b	f68 <free+0x158>
+     f68:	e59d000c 	ldr	r0, [sp, #12]
+     f6c:	e5900004 	ldr	r0, [r0, #4]
+     f70:	e59d1008 	ldr	r1, [sp, #8]
+     f74:	e5912004 	ldr	r2, [r1, #4]
+     f78:	e0820000 	add	r0, r2, r0
+     f7c:	e5810004 	str	r0, [r1, #4]
+     f80:	e59d000c 	ldr	r0, [sp, #12]
+     f84:	e5900000 	ldr	r0, [r0]
+     f88:	e59d1008 	ldr	r1, [sp, #8]
+     f8c:	e5810000 	str	r0, [r1]
+     f90:	ea000003 	b	fa4 <free+0x194>
+     f94:	e59d000c 	ldr	r0, [sp, #12]
+     f98:	e59d1008 	ldr	r1, [sp, #8]
+     f9c:	e5810000 	str	r0, [r1]
+     fa0:	eaffffff 	b	fa4 <free+0x194>
+     fa4:	e59d0008 	ldr	r0, [sp, #8]
+     fa8:	e59f1008 	ldr	r1, [pc, #8]	; fb8 <free+0x1a8>
+     fac:	e5810000 	str	r0, [r1]
+     fb0:	e28dd014 	add	sp, sp, #20
+     fb4:	e12fff1e 	bx	lr
+     fb8:	00001368 	.word	0x00001368
+
+00000fbc <malloc>:
+     fbc:	e92d4800 	push	{fp, lr}
+     fc0:	e1a0b00d 	mov	fp, sp
+     fc4:	e24dd018 	sub	sp, sp, #24
+     fc8:	e1a01000 	mov	r1, r0
+     fcc:	e50b0008 	str	r0, [fp, #-8]
+     fd0:	e51b0008 	ldr	r0, [fp, #-8]
+     fd4:	e2800007 	add	r0, r0, #7
+     fd8:	e3a02001 	mov	r2, #1
+     fdc:	e08201a0 	add	r0, r2, r0, lsr #3
+     fe0:	e58d0004 	str	r0, [sp, #4]
+     fe4:	e59f013c 	ldr	r0, [pc, #316]	; 1128 <malloc+0x16c>
+     fe8:	e5900000 	ldr	r0, [r0]
+     fec:	e58d0008 	str	r0, [sp, #8]
+     ff0:	e3500000 	cmp	r0, #0
+     ff4:	e58d1000 	str	r1, [sp]
+     ff8:	1a000008 	bne	1020 <malloc+0x64>
+     ffc:	eaffffff 	b	1000 <malloc+0x44>
+    1000:	e59f0124 	ldr	r0, [pc, #292]	; 112c <malloc+0x170>
+    1004:	e58d0008 	str	r0, [sp, #8]
+    1008:	e59f1118 	ldr	r1, [pc, #280]	; 1128 <malloc+0x16c>
+    100c:	e5810000 	str	r0, [r1]
+    1010:	e5800000 	str	r0, [r0]
+    1014:	e3a01000 	mov	r1, #0
+    1018:	e5801004 	str	r1, [r0, #4]
+    101c:	eaffffff 	b	1020 <malloc+0x64>
+    1020:	e59d0008 	ldr	r0, [sp, #8]
+    1024:	e5900000 	ldr	r0, [r0]
+    1028:	e58d000c 	str	r0, [sp, #12]
+    102c:	eaffffff 	b	1030 <malloc+0x74>
+    1030:	e59d000c 	ldr	r0, [sp, #12]
+    1034:	e5900004 	ldr	r0, [r0, #4]
+    1038:	e59d1004 	ldr	r1, [sp, #4]
+    103c:	e1500001 	cmp	r0, r1
+    1040:	3a00001f 	bcc	10c4 <malloc+0x108>
+    1044:	eaffffff 	b	1048 <malloc+0x8c>
+    1048:	e59d000c 	ldr	r0, [sp, #12]
+    104c:	e5900004 	ldr	r0, [r0, #4]
+    1050:	e59d1004 	ldr	r1, [sp, #4]
+    1054:	e1500001 	cmp	r0, r1
+    1058:	1a000005 	bne	1074 <malloc+0xb8>
+    105c:	eaffffff 	b	1060 <malloc+0xa4>
+    1060:	e59d000c 	ldr	r0, [sp, #12]
+    1064:	e5900000 	ldr	r0, [r0]
+    1068:	e59d1008 	ldr	r1, [sp, #8]
+    106c:	e5810000 	str	r0, [r1]
+    1070:	ea00000c 	b	10a8 <malloc+0xec>
+    1074:	e59d0004 	ldr	r0, [sp, #4]
+    1078:	e59d100c 	ldr	r1, [sp, #12]
+    107c:	e5912004 	ldr	r2, [r1, #4]
+    1080:	e0420000 	sub	r0, r2, r0
+    1084:	e5810004 	str	r0, [r1, #4]
+    1088:	e59d000c 	ldr	r0, [sp, #12]
+    108c:	e5901004 	ldr	r1, [r0, #4]
+    1090:	e0800181 	add	r0, r0, r1, lsl #3
+    1094:	e58d000c 	str	r0, [sp, #12]
+    1098:	e59d0004 	ldr	r0, [sp, #4]
+    109c:	e59d100c 	ldr	r1, [sp, #12]
+    10a0:	e5810004 	str	r0, [r1, #4]
+    10a4:	eaffffff 	b	10a8 <malloc+0xec>
+    10a8:	e59d0008 	ldr	r0, [sp, #8]
+    10ac:	e59f1074 	ldr	r1, [pc, #116]	; 1128 <malloc+0x16c>
+    10b0:	e5810000 	str	r0, [r1]
+    10b4:	e59d000c 	ldr	r0, [sp, #12]
+    10b8:	e2800008 	add	r0, r0, #8
+    10bc:	e50b0004 	str	r0, [fp, #-4]
+    10c0:	ea000015 	b	111c <malloc+0x160>
+    10c4:	e59d000c 	ldr	r0, [sp, #12]
+    10c8:	e59f1058 	ldr	r1, [pc, #88]	; 1128 <malloc+0x16c>
+    10cc:	e5911000 	ldr	r1, [r1]
+    10d0:	e1500001 	cmp	r0, r1
+    10d4:	1a00000a 	bne	1104 <malloc+0x148>
+    10d8:	eaffffff 	b	10dc <malloc+0x120>
+    10dc:	e59d0004 	ldr	r0, [sp, #4]
+    10e0:	eb000012 	bl	1130 <morecore>
+    10e4:	e58d000c 	str	r0, [sp, #12]
+    10e8:	e3500000 	cmp	r0, #0
+    10ec:	1a000003 	bne	1100 <malloc+0x144>
+    10f0:	eaffffff 	b	10f4 <malloc+0x138>
+    10f4:	e3a00000 	mov	r0, #0
+    10f8:	e50b0004 	str	r0, [fp, #-4]
+    10fc:	ea000006 	b	111c <malloc+0x160>
+    1100:	eaffffff 	b	1104 <malloc+0x148>
+    1104:	eaffffff 	b	1108 <malloc+0x14c>
+    1108:	e59d000c 	ldr	r0, [sp, #12]
+    110c:	e58d0008 	str	r0, [sp, #8]
+    1110:	e5900000 	ldr	r0, [r0]
+    1114:	e58d000c 	str	r0, [sp, #12]
+    1118:	eaffffc4 	b	1030 <malloc+0x74>
+    111c:	e51b0004 	ldr	r0, [fp, #-4]
+    1120:	e1a0d00b 	mov	sp, fp
+    1124:	e8bd8800 	pop	{fp, pc}
+    1128:	00001368 	.word	0x00001368
+    112c:	0000136c 	.word	0x0000136c
+
+00001130 <morecore>:
+    freep = p;
+}
+
+static Header*
+morecore(uint nu)
+{
+    1130:	e92d4800 	push	{fp, lr}
+    1134:	e1a0b00d 	mov	fp, sp
+    1138:	e24dd018 	sub	sp, sp, #24
+    113c:	e1a01000 	mov	r1, r0
+    1140:	e50b0008 	str	r0, [fp, #-8]
+    char *p;
+    Header *hp;
+    
+    if(nu < 4096)
+    1144:	e51b0008 	ldr	r0, [fp, #-8]
+    1148:	e3a02000 	mov	r2, #0
+    114c:	e1520620 	cmp	r2, r0, lsr #12
+    1150:	e58d1004 	str	r1, [sp, #4]
+    1154:	1a000003 	bne	1168 <morecore+0x38>
+    1158:	eaffffff 	b	115c <morecore+0x2c>
+        nu = 4096;
+    115c:	e3a00a01 	mov	r0, #4096	; 0x1000
+    1160:	e50b0008 	str	r0, [fp, #-8]
+    1164:	eaffffff 	b	1168 <morecore+0x38>
+    p = sbrk(nu * sizeof(Header));
+    1168:	e51b0008 	ldr	r0, [fp, #-8]
+    116c:	e1a00180 	lsl	r0, r0, #3
+    1170:	ebfffe10 	bl	9b8 <sbrk>
+    1174:	e58d000c 	str	r0, [sp, #12]
+    if(p == (char*)-1)
+    1178:	e59d000c 	ldr	r0, [sp, #12]
+    117c:	e3700001 	cmn	r0, #1
+    1180:	1a000003 	bne	1194 <morecore+0x64>
+    1184:	eaffffff 	b	1188 <morecore+0x58>
+        return 0;
+    1188:	e3a00000 	mov	r0, #0
+    118c:	e50b0004 	str	r0, [fp, #-4]
+    1190:	ea00000b 	b	11c4 <morecore+0x94>
+    hp = (Header*)p;
+    1194:	e59d000c 	ldr	r0, [sp, #12]
+    1198:	e58d0008 	str	r0, [sp, #8]
+    hp->s.size = nu;
+    119c:	e51b0008 	ldr	r0, [fp, #-8]
+    11a0:	e59d1008 	ldr	r1, [sp, #8]
+    11a4:	e5810004 	str	r0, [r1, #4]
+    free((void*)(hp + 1));
+    11a8:	e59d0008 	ldr	r0, [sp, #8]
+    11ac:	e2800008 	add	r0, r0, #8
+    11b0:	ebffff16 	bl	e10 <free>
+    return freep;
+    11b4:	e59f0014 	ldr	r0, [pc, #20]	; 11d0 <morecore+0xa0>
+    11b8:	e5900000 	ldr	r0, [r0]
+    11bc:	e50b0004 	str	r0, [fp, #-4]
+    11c0:	eaffffff 	b	11c4 <morecore+0x94>
+}
+    11c4:	e51b0004 	ldr	r0, [fp, #-4]
+    11c8:	e1a0d00b 	mov	sp, fp
+    11cc:	e8bd8800 	pop	{fp, pc}
+    11d0:	00001368 	.word	0x00001368
+
+000011d4 <__aeabi_uidiv>:
+    11d4:	e2512001 	subs	r2, r1, #1
+    11d8:	012fff1e 	bxeq	lr
+    11dc:	3a000036 	bcc	12bc <__aeabi_uidiv+0xe8>
+    11e0:	e1500001 	cmp	r0, r1
+    11e4:	9a000022 	bls	1274 <__aeabi_uidiv+0xa0>
+    11e8:	e1110002 	tst	r1, r2
+    11ec:	0a000023 	beq	1280 <__aeabi_uidiv+0xac>
+    11f0:	e311020e 	tst	r1, #-536870912	; 0xe0000000
+    11f4:	01a01181 	lsleq	r1, r1, #3
+    11f8:	03a03008 	moveq	r3, #8
+    11fc:	13a03001 	movne	r3, #1
+    1200:	e3510201 	cmp	r1, #268435456	; 0x10000000
+    1204:	31510000 	cmpcc	r1, r0
+    1208:	31a01201 	lslcc	r1, r1, #4
+    120c:	31a03203 	lslcc	r3, r3, #4
+    1210:	3afffffa 	bcc	1200 <__aeabi_uidiv+0x2c>
+    1214:	e3510102 	cmp	r1, #-2147483648	; 0x80000000
+    1218:	31510000 	cmpcc	r1, r0
+    121c:	31a01081 	lslcc	r1, r1, #1
+    1220:	31a03083 	lslcc	r3, r3, #1
+    1224:	3afffffa 	bcc	1214 <__aeabi_uidiv+0x40>
+    1228:	e3a02000 	mov	r2, #0
+    122c:	e1500001 	cmp	r0, r1
+    1230:	20400001 	subcs	r0, r0, r1
+    1234:	21822003 	orrcs	r2, r2, r3
+    1238:	e15000a1 	cmp	r0, r1, lsr #1
+    123c:	204000a1 	subcs	r0, r0, r1, lsr #1
+    1240:	218220a3 	orrcs	r2, r2, r3, lsr #1
+    1244:	e1500121 	cmp	r0, r1, lsr #2
+    1248:	20400121 	subcs	r0, r0, r1, lsr #2
+    124c:	21822123 	orrcs	r2, r2, r3, lsr #2
+    1250:	e15001a1 	cmp	r0, r1, lsr #3
+    1254:	204001a1 	subcs	r0, r0, r1, lsr #3
+    1258:	218221a3 	orrcs	r2, r2, r3, lsr #3
+    125c:	e3500000 	cmp	r0, #0
+    1260:	11b03223 	lsrsne	r3, r3, #4
+    1264:	11a01221 	lsrne	r1, r1, #4
+    1268:	1affffef 	bne	122c <__aeabi_uidiv+0x58>
+    126c:	e1a00002 	mov	r0, r2
+    1270:	e12fff1e 	bx	lr
+    1274:	03a00001 	moveq	r0, #1
+    1278:	13a00000 	movne	r0, #0
+    127c:	e12fff1e 	bx	lr
+    1280:	e3510801 	cmp	r1, #65536	; 0x10000
+    1284:	21a01821 	lsrcs	r1, r1, #16
+    1288:	23a02010 	movcs	r2, #16
+    128c:	33a02000 	movcc	r2, #0
+    1290:	e3510c01 	cmp	r1, #256	; 0x100
+    1294:	21a01421 	lsrcs	r1, r1, #8
+    1298:	22822008 	addcs	r2, r2, #8
+    129c:	e3510010 	cmp	r1, #16
+    12a0:	21a01221 	lsrcs	r1, r1, #4
+    12a4:	22822004 	addcs	r2, r2, #4
+    12a8:	e3510004 	cmp	r1, #4
+    12ac:	82822003 	addhi	r2, r2, #3
+    12b0:	908220a1 	addls	r2, r2, r1, lsr #1
+    12b4:	e1a00230 	lsr	r0, r0, r2
+    12b8:	e12fff1e 	bx	lr
+    12bc:	e3500000 	cmp	r0, #0
+    12c0:	13e00000 	mvnne	r0, #0
+    12c4:	ea000007 	b	12e8 <__aeabi_idiv0>
+
+000012c8 <__aeabi_uidivmod>:
+    12c8:	e3510000 	cmp	r1, #0
+    12cc:	0afffffa 	beq	12bc <__aeabi_uidiv+0xe8>
+    12d0:	e92d4003 	push	{r0, r1, lr}
+    12d4:	ebffffbe 	bl	11d4 <__aeabi_uidiv>
+    12d8:	e8bd4006 	pop	{r1, r2, lr}
+    12dc:	e0030092 	mul	r3, r2, r0
+    12e0:	e0411003 	sub	r1, r1, r3
+    12e4:	e12fff1e 	bx	lr
+
+000012e8 <__aeabi_idiv0>:
+    12e8:	e12fff1e 	bx	lr