comparison src/obj_dump_clang @ 0:53676d1f5817 default tip

firsh commit
author tobaru
date Sun, 04 Feb 2018 17:54:49 +0900
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:53676d1f5817
1
2 build/start.o: file format elf32-littlearm
3
4
5 Disassembly of section .text:
6
7 00000000 <_uart_putc>:
8 0: e24dd00c sub sp, sp, #12
9 4: e1a01000 mov r1, r0
10 8: e58d0008 str r0, [sp, #8]
11 c: e59f0018 ldr r0, [pc, #24] ; 2c <_uart_putc+0x2c>
12 10: e58d0004 str r0, [sp, #4]
13 14: e59d0008 ldr r0, [sp, #8]
14 18: e59d2004 ldr r2, [sp, #4]
15 1c: e5c20000 strb r0, [r2]
16 20: e58d1000 str r1, [sp]
17 24: e28dd00c add sp, sp, #12
18 28: e12fff1e bx lr
19 2c: 101f1000 .word 0x101f1000
20
21 00000030 <_puts>:
22 30: e92d4800 push {fp, lr}
23 34: e1a0b00d mov fp, sp
24 38: e24dd008 sub sp, sp, #8
25 3c: e1a01000 mov r1, r0
26 40: e58d0004 str r0, [sp, #4]
27 44: e58d1000 str r1, [sp]
28 48: eaffffff b 4c <_puts+0x1c>
29 4c: e59d0004 ldr r0, [sp, #4]
30 50: e5d00000 ldrb r0, [r0]
31 54: e3500000 cmp r0, #0
32 58: 0a000007 beq 7c <_puts+0x4c>
33 5c: eaffffff b 60 <_puts+0x30>
34 60: e59d0004 ldr r0, [sp, #4]
35 64: e5d00000 ldrb r0, [r0]
36 68: ebfffffe bl 0 <_uart_putc>
37 6c: e59d0004 ldr r0, [sp, #4]
38 70: e2800001 add r0, r0, #1
39 74: e58d0004 str r0, [sp, #4]
40 78: eafffff3 b 4c <_puts+0x1c>
41 7c: e1a0d00b mov sp, fp
42 80: e8bd8800 pop {fp, pc}
43
44 00000084 <_putint>:
45 84: e92d4800 push {fp, lr}
46 88: e1a0b00d mov fp, sp
47 8c: e24dd020 sub sp, sp, #32
48 90: e1a03002 mov r3, r2
49 94: e1a0c001 mov ip, r1
50 98: e1a0e000 mov lr, r0
51 9c: e50b0004 str r0, [fp, #-4]
52 a0: e50b1008 str r1, [fp, #-8]
53 a4: e50b200c str r2, [fp, #-12]
54 a8: e59f0098 ldr r0, [pc, #152] ; 148 <_putint+0xc4>
55 ac: e58d0010 str r0, [sp, #16]
56 b0: e51b0004 ldr r0, [fp, #-4]
57 b4: e3500000 cmp r0, #0
58 b8: e58d3008 str r3, [sp, #8]
59 bc: e58dc004 str ip, [sp, #4]
60 c0: e58de000 str lr, [sp]
61 c4: 0a000003 beq d8 <_putint+0x54>
62 c8: eaffffff b cc <_putint+0x48>
63 cc: e51b0004 ldr r0, [fp, #-4]
64 d0: ebfffffe bl 30 <_puts>
65 d4: eaffffff b d8 <_putint+0x54>
66 d8: e3a0001c mov r0, #28
67 dc: e58d000c str r0, [sp, #12]
68 e0: eaffffff b e4 <_putint+0x60>
69 e4: e59d000c ldr r0, [sp, #12]
70 e8: e3500000 cmp r0, #0
71 ec: ba00000c blt 124 <_putint+0xa0>
72 f0: eaffffff b f4 <_putint+0x70>
73 f4: e59d0010 ldr r0, [sp, #16]
74 f8: e51b1008 ldr r1, [fp, #-8]
75 fc: e59d200c ldr r2, [sp, #12]
76 100: e3a0300f mov r3, #15
77 104: e0031231 and r1, r3, r1, lsr r2
78 108: e7d00001 ldrb r0, [r0, r1]
79 10c: ebfffffe bl 0 <_uart_putc>
80 110: eaffffff b 114 <_putint+0x90>
81 114: e59d000c ldr r0, [sp, #12]
82 118: e2400004 sub r0, r0, #4
83 11c: e58d000c str r0, [sp, #12]
84 120: eaffffef b e4 <_putint+0x60>
85 124: e51b000c ldr r0, [fp, #-12]
86 128: e3500000 cmp r0, #0
87 12c: 0a000003 beq 140 <_putint+0xbc>
88 130: eaffffff b 134 <_putint+0xb0>
89 134: e51b000c ldr r0, [fp, #-12]
90 138: ebfffffe bl 30 <_puts>
91 13c: eaffffff b 140 <_putint+0xbc>
92 140: e1a0d00b mov sp, fp
93 144: e8bd8800 pop {fp, pc}
94 148: 00000000 .word 0x00000000
95
96 0000014c <get_pde>:
97 14c: e24dd008 sub sp, sp, #8
98 150: e1a01000 mov r1, r0
99 154: e58d0004 str r0, [sp, #4]
100 158: e59d0004 ldr r0, [sp, #4]
101 15c: e1a00a20 lsr r0, r0, #20
102 160: e58d0004 str r0, [sp, #4]
103 164: e59f0014 ldr r0, [pc, #20] ; 180 <get_pde+0x34>
104 168: e5900000 ldr r0, [r0]
105 16c: e59d2004 ldr r2, [sp, #4]
106 170: e7900102 ldr r0, [r0, r2, lsl #2]
107 174: e58d1000 str r1, [sp]
108 178: e28dd008 add sp, sp, #8
109 17c: e12fff1e bx lr
110 180: 00000000 .word 0x00000000
111
112 00000184 <set_bootpgtbl>:
113 184: e92d4830 push {r4, r5, fp, lr}
114 188: e28db008 add fp, sp, #8
115 18c: e24dd028 sub sp, sp, #40 ; 0x28
116 190: e1a0c003 mov ip, r3
117 194: e1a0e002 mov lr, r2
118 198: e1a04001 mov r4, r1
119 19c: e1a05000 mov r5, r0
120 1a0: e50b000c str r0, [fp, #-12]
121 1a4: e50b1010 str r1, [fp, #-16]
122 1a8: e50b2014 str r2, [fp, #-20] ; 0xffffffec
123 1ac: e58d3018 str r3, [sp, #24]
124 1b0: e51b000c ldr r0, [fp, #-12]
125 1b4: e1a00a20 lsr r0, r0, #20
126 1b8: e50b000c str r0, [fp, #-12]
127 1bc: e51b0010 ldr r0, [fp, #-16]
128 1c0: e1a00a20 lsr r0, r0, #20
129 1c4: e50b0010 str r0, [fp, #-16]
130 1c8: e51b0014 ldr r0, [fp, #-20] ; 0xffffffec
131 1cc: e1a00a20 lsr r0, r0, #20
132 1d0: e50b0014 str r0, [fp, #-20] ; 0xffffffec
133 1d4: e3a00000 mov r0, #0
134 1d8: e58d0010 str r0, [sp, #16]
135 1dc: e58dc00c str ip, [sp, #12]
136 1e0: e58de008 str lr, [sp, #8]
137 1e4: e58d4004 str r4, [sp, #4]
138 1e8: e58d5000 str r5, [sp]
139 1ec: eaffffff b 1f0 <set_bootpgtbl+0x6c>
140 1f0: e59d0010 ldr r0, [sp, #16]
141 1f4: e51b1014 ldr r1, [fp, #-20] ; 0xffffffec
142 1f8: e1500001 cmp r0, r1
143 1fc: 2a00002e bcs 2bc <set_bootpgtbl+0x138>
144 200: eaffffff b 204 <set_bootpgtbl+0x80>
145 204: e51b0010 ldr r0, [fp, #-16]
146 208: e1a00a00 lsl r0, r0, #20
147 20c: e58d0014 str r0, [sp, #20]
148 210: e59d0018 ldr r0, [sp, #24]
149 214: e3500000 cmp r0, #0
150 218: 1a000006 bne 238 <set_bootpgtbl+0xb4>
151 21c: eaffffff b 220 <set_bootpgtbl+0x9c>
152 220: e59d0014 ldr r0, [sp, #20]
153 224: e3a0100e mov r1, #14
154 228: e3811b01 orr r1, r1, #1024 ; 0x400
155 22c: e1800001 orr r0, r0, r1
156 230: e58d0014 str r0, [sp, #20]
157 234: ea000005 b 250 <set_bootpgtbl+0xcc>
158 238: e59d0014 ldr r0, [sp, #20]
159 23c: e3a01002 mov r1, #2
160 240: e3811b01 orr r1, r1, #1024 ; 0x400
161 244: e1800001 orr r0, r0, r1
162 248: e58d0014 str r0, [sp, #20]
163 24c: eaffffff b 250 <set_bootpgtbl+0xcc>
164 250: e51b000c ldr r0, [fp, #-12]
165 254: e35000ff cmp r0, #255 ; 0xff
166 258: 8a000006 bhi 278 <set_bootpgtbl+0xf4>
167 25c: eaffffff b 260 <set_bootpgtbl+0xdc>
168 260: e59d0014 ldr r0, [sp, #20]
169 264: e59f105c ldr r1, [pc, #92] ; 2c8 <set_bootpgtbl+0x144>
170 268: e5911000 ldr r1, [r1]
171 26c: e51b200c ldr r2, [fp, #-12]
172 270: e7810102 str r0, [r1, r2, lsl #2]
173 274: ea000005 b 290 <set_bootpgtbl+0x10c>
174 278: e59d0014 ldr r0, [sp, #20]
175 27c: e59f1040 ldr r1, [pc, #64] ; 2c4 <set_bootpgtbl+0x140>
176 280: e5911000 ldr r1, [r1]
177 284: e51b200c ldr r2, [fp, #-12]
178 288: e7810102 str r0, [r1, r2, lsl #2]
179 28c: eaffffff b 290 <set_bootpgtbl+0x10c>
180 290: e51b000c ldr r0, [fp, #-12]
181 294: e2800001 add r0, r0, #1
182 298: e50b000c str r0, [fp, #-12]
183 29c: e51b0010 ldr r0, [fp, #-16]
184 2a0: e2800001 add r0, r0, #1
185 2a4: e50b0010 str r0, [fp, #-16]
186 2a8: eaffffff b 2ac <set_bootpgtbl+0x128>
187 2ac: e59d0010 ldr r0, [sp, #16]
188 2b0: e2800001 add r0, r0, #1
189 2b4: e58d0010 str r0, [sp, #16]
190 2b8: eaffffcc b 1f0 <set_bootpgtbl+0x6c>
191 2bc: e24bd008 sub sp, fp, #8
192 2c0: e8bd8830 pop {r4, r5, fp, pc}
193 ...
194
195 000002cc <load_pgtlb>:
196 2cc: e92d4800 push {fp, lr}
197 2d0: e1a0b00d mov fp, sp
198 2d4: e24dd020 sub sp, sp, #32
199 2d8: e1a02001 mov r2, r1
200 2dc: e1a03000 mov r3, r0
201 2e0: e50b0004 str r0, [fp, #-4]
202 2e4: e50b1008 str r1, [fp, #-8]
203 2e8: ee100f10 mrc 15, 0, r0, cr0, cr0, {0}
204 2ec: e50b000c str r0, [fp, #-12]
205 2f0: e55b0009 ldrb r0, [fp, #-9]
206 2f4: e3500041 cmp r0, #65 ; 0x41
207 2f8: e58d2008 str r2, [sp, #8]
208 2fc: e58d3004 str r3, [sp, #4]
209 300: 1a000001 bne 30c <load_pgtlb+0x40>
210 304: eaffffff b 308 <load_pgtlb+0x3c>
211 308: eaffffff b 30c <load_pgtlb+0x40>
212 30c: e15b00ba ldrh r0, [fp, #-10]
213 310: e200000f and r0, r0, #15
214 314: e54b000d strb r0, [fp, #-13]
215 318: e55b000d ldrb r0, [fp, #-13]
216 31c: e3500007 cmp r0, #7
217 320: 0a000007 beq 344 <load_pgtlb+0x78>
218 324: eaffffff b 328 <load_pgtlb+0x5c>
219 328: e55b000d ldrb r0, [fp, #-13]
220 32c: e350000f cmp r0, #15
221 330: 0a000003 beq 344 <load_pgtlb+0x78>
222 334: eaffffff b 338 <load_pgtlb+0x6c>
223 338: e59f0074 ldr r0, [pc, #116] ; 3b4 <load_pgtlb+0xe8>
224 33c: ebfffffe bl 30 <_puts>
225 340: eaffffff b 344 <load_pgtlb+0x78>
226 344: e59f006c ldr r0, [pc, #108] ; 3b8 <load_pgtlb+0xec>
227 348: e58d000c str r0, [sp, #12]
228 34c: e59d000c ldr r0, [sp, #12]
229 350: ee030f10 mcr 15, 0, r0, cr3, cr0, {0}
230 354: e3a00004 mov r0, #4
231 358: e58d000c str r0, [sp, #12]
232 35c: e59d000c ldr r0, [sp, #12]
233 360: ee020f50 mcr 15, 0, r0, cr2, cr0, {2}
234 364: e59f0050 ldr r0, [pc, #80] ; 3bc <load_pgtlb+0xf0>
235 368: e5900000 ldr r0, [r0]
236 36c: e58d000c str r0, [sp, #12]
237 370: e59d000c ldr r0, [sp, #12]
238 374: ee020f30 mcr 15, 0, r0, cr2, cr0, {1}
239 378: e51b0008 ldr r0, [fp, #-8]
240 37c: e58d000c str r0, [sp, #12]
241 380: e59d000c ldr r0, [sp, #12]
242 384: ee020f10 mcr 15, 0, r0, cr2, cr0, {0}
243 388: ee110f10 mrc 15, 0, r0, cr1, cr0, {0}
244 38c: e58d000c str r0, [sp, #12]
245 390: e59d000c ldr r0, [sp, #12]
246 394: e59f1024 ldr r1, [pc, #36] ; 3c0 <load_pgtlb+0xf4>
247 398: e1800001 orr r0, r0, r1
248 39c: e58d000c str r0, [sp, #12]
249 3a0: e59d000c ldr r0, [sp, #12]
250 3a4: ee010f10 mcr 15, 0, r0, cr1, cr0, {0}
251 3a8: ebfffffe bl 3c4 <_flush_all>
252 3ac: e1a0d00b mov sp, fp
253 3b0: e8bd8800 pop {fp, pc}
254 3b4: 00000000 .word 0x00000000
255 3b8: 55555555 .word 0x55555555
256 3bc: 00000000 .word 0x00000000
257 3c0: 0080300d .word 0x0080300d
258
259 000003c4 <_flush_all>:
260 3c4: e24dd004 sub sp, sp, #4
261 3c8: e3a00000 mov r0, #0
262 3cc: e58d0000 str r0, [sp]
263 3d0: e59d0000 ldr r0, [sp]
264 3d4: ee080f17 mcr 15, 0, r0, cr8, cr7, {0}
265 3d8: e28dd004 add sp, sp, #4
266 3dc: e12fff1e bx lr
267
268 000003e0 <clear_bss>:
269 3e0: e92d4800 push {fp, lr}
270 3e4: e1a0b00d mov fp, sp
271 3e8: e24dd008 sub sp, sp, #8
272 3ec: e59f0018 ldr r0, [pc, #24] ; 40c <clear_bss+0x2c>
273 3f0: e59f1018 ldr r1, [pc, #24] ; 410 <clear_bss+0x30>
274 3f4: e0412000 sub r2, r1, r0
275 3f8: e3a01000 mov r1, #0
276 3fc: ebfffffe bl 0 <memset>
277 400: e58d0004 str r0, [sp, #4]
278 404: e1a0d00b mov sp, fp
279 408: e8bd8800 pop {fp, pc}
280 ...
281
282 00000414 <start>:
283 414: e92d4800 push {fp, lr}
284 418: e1a0b00d mov fp, sp
285 41c: e24dd010 sub sp, sp, #16
286 420: e59f00bc ldr r0, [pc, #188] ; 4e4 <start+0xd0>
287 424: ebfffffe bl 30 <_puts>
288 428: e3a00601 mov r0, #1048576 ; 0x100000
289 42c: e3a0e000 mov lr, #0
290 430: e58d0008 str r0, [sp, #8]
291 434: e1a0000e mov r0, lr
292 438: e1a0100e mov r1, lr
293 43c: e59d2008 ldr r2, [sp, #8]
294 440: e1a0300e mov r3, lr
295 444: e58de004 str lr, [sp, #4]
296 448: ebfffffe bl 184 <set_bootpgtbl>
297 44c: e3a00102 mov r0, #-2147483648 ; 0x80000000
298 450: e59d1004 ldr r1, [sp, #4]
299 454: e59d2008 ldr r2, [sp, #8]
300 458: e59d3004 ldr r3, [sp, #4]
301 45c: ebfffffe bl 184 <set_bootpgtbl>
302 460: e3a0080f mov r0, #983040 ; 0xf0000
303 464: e3800102 orr r0, r0, #-2147483648 ; 0x80000000
304 468: e50b0004 str r0, [fp, #-4]
305 46c: e51b0004 ldr r0, [fp, #-4]
306 470: e59f1070 ldr r1, [pc, #112] ; 4e8 <start+0xd4>
307 474: e1500001 cmp r0, r1
308 478: 8a000003 bhi 48c <start+0x78>
309 47c: eaffffff b 480 <start+0x6c>
310 480: e59f0064 ldr r0, [pc, #100] ; 4ec <start+0xd8>
311 484: ebfffffe bl 0 <cprintf>
312 488: eaffffff b 48c <start+0x78>
313 48c: e3a008ff mov r0, #16711680 ; 0xff0000
314 490: e38004ff orr r0, r0, #-16777216 ; 0xff000000
315 494: e3a02601 mov r2, #1048576 ; 0x100000
316 498: e3a01000 mov r1, #0
317 49c: e58d1000 str r1, [sp]
318 4a0: e59d3000 ldr r3, [sp]
319 4a4: ebfffffe bl 184 <set_bootpgtbl>
320 4a8: e3a00209 mov r0, #-1879048192 ; 0x90000000
321 4ac: e3a01201 mov r1, #268435456 ; 0x10000000
322 4b0: e3a02302 mov r2, #134217728 ; 0x8000000
323 4b4: e3a03001 mov r3, #1
324 4b8: ebfffffe bl 184 <set_bootpgtbl>
325 4bc: e59f002c ldr r0, [pc, #44] ; 4f0 <start+0xdc>
326 4c0: e5900000 ldr r0, [r0]
327 4c4: e59f1028 ldr r1, [pc, #40] ; 4f4 <start+0xe0>
328 4c8: e5911000 ldr r1, [r1]
329 4cc: ebfffffe bl 2cc <load_pgtlb>
330 4d0: ebfffffe bl 0 <jump_stack>
331 4d4: ebfffffe bl 3e0 <clear_bss>
332 4d8: ebfffffe bl 0 <kmain>
333 4dc: e1a0d00b mov sp, fp
334 4e0: e8bd8800 pop {fp, pc}
335 ...