Skip to content

Instantly share code, notes, and snippets.

@bryanduxbury
Created September 28, 2013 00:29
Show Gist options
  • Save bryanduxbury/6737031 to your computer and use it in GitHub Desktop.
Save bryanduxbury/6737031 to your computer and use it in GitHub Desktop.
/var/folders/kw/bmc5ytz17fsc8gmf6wtlv8tc0000gn/T/build8564835397500217407.tmp/firmware.cpp.o: file format elf32-avr
Disassembly of section .text._Z4testPhh:
00000000 <_Z4testPhh>:
0: 26 2f mov r18, r22
2: 26 95 lsr r18
4: 26 95 lsr r18
6: 26 95 lsr r18
8: fc 01 movw r30, r24
a: e2 0f add r30, r18
c: f1 1d adc r31, r1
e: 80 81 ld r24, Z
10: 90 e0 ldi r25, 0x00 ; 0
12: 67 70 andi r22, 0x07 ; 7
14: 00 c0 rjmp .+0 ; 0x16 <_Z4testPhh+0x16>
16: 95 95 asr r25
18: 87 95 ror r24
1a: 6a 95 dec r22
1c: 02 f4 brpl .+0 ; 0x1e <_Z4testPhh+0x1e>
1e: 81 70 andi r24, 0x01 ; 1
20: 08 95 ret
Disassembly of section .text._Z3setPhh:
00000000 <_Z3setPhh>:
0: 26 2f mov r18, r22
2: 26 95 lsr r18
4: 26 95 lsr r18
6: 26 95 lsr r18
8: fc 01 movw r30, r24
a: e2 0f add r30, r18
c: f1 1d adc r31, r1
e: 67 70 andi r22, 0x07 ; 7
10: 81 e0 ldi r24, 0x01 ; 1
12: 90 e0 ldi r25, 0x00 ; 0
14: 00 c0 rjmp .+0 ; 0x16 <_Z3setPhh+0x16>
16: 88 0f add r24, r24
18: 99 1f adc r25, r25
1a: 6a 95 dec r22
1c: 02 f4 brpl .+0 ; 0x1e <_Z3setPhh+0x1e>
1e: 20 81 ld r18, Z
20: 28 2b or r18, r24
22: 20 83 st Z, r18
24: 08 95 ret
Disassembly of section .text._Z16living_neighborsPhhh:
00000000 <_Z16living_neighborsPhhh>:
0: cf 92 push r12
2: df 92 push r13
4: ff 92 push r15
6: 0f 93 push r16
8: 1f 93 push r17
a: cf 93 push r28
c: df 93 push r29
e: 6c 01 movw r12, r24
10: 50 e0 ldi r21, 0x00 ; 0
12: 8a 01 movw r16, r20
14: 01 50 subi r16, 0x01 ; 1
16: 10 40 sbci r17, 0x00 ; 0
18: 89 e1 ldi r24, 0x19 ; 25
1a: 90 e0 ldi r25, 0x00 ; 0
1c: 9c 01 movw r18, r24
1e: 42 9f mul r20, r18
20: c0 01 movw r24, r0
22: 43 9f mul r20, r19
24: 90 0d add r25, r0
26: 52 9f mul r21, r18
28: 90 0d add r25, r0
2a: 11 24 eor r1, r1
2c: 49 97 sbiw r24, 0x19 ; 25
2e: 36 2f mov r19, r22
30: 38 0f add r19, r24
32: ff 24 eor r15, r15
34: cf ef ldi r28, 0xFF ; 255
36: df ef ldi r29, 0xFF ; 255
38: 70 e0 ldi r23, 0x00 ; 0
3a: 61 50 subi r22, 0x01 ; 1
3c: 70 40 sbci r23, 0x00 ; 0
3e: 00 c0 rjmp .+0 ; 0x40 <_Z16living_neighborsPhhh+0x40>
40: 41 15 cp r20, r1
42: 51 05 cpc r21, r1
44: 01 f4 brne .+0 ; 0x46 <_Z16living_neighborsPhhh+0x46>
46: 20 97 sbiw r28, 0x00 ; 0
48: 01 f0 breq .+0 ; 0x4a <_Z16living_neighborsPhhh+0x4a>
4a: a9 31 cpi r26, 0x19 ; 25
4c: b1 05 cpc r27, r1
4e: 00 f4 brcc .+0 ; 0x50 <_Z16living_neighborsPhhh+0x50>
50: 05 30 cpi r16, 0x05 ; 5
52: 11 05 cpc r17, r1
54: 00 f4 brcc .+0 ; 0x56 <_Z16living_neighborsPhhh+0x56>
56: 23 2f mov r18, r19
58: 24 0f add r18, r20
5a: 82 2f mov r24, r18
5c: 86 95 lsr r24
5e: 86 95 lsr r24
60: 86 95 lsr r24
62: f6 01 movw r30, r12
64: e8 0f add r30, r24
66: f1 1d adc r31, r1
68: 80 81 ld r24, Z
6a: 90 e0 ldi r25, 0x00 ; 0
6c: 27 70 andi r18, 0x07 ; 7
6e: 00 c0 rjmp .+0 ; 0x70 <_Z16living_neighborsPhhh+0x70>
70: 95 95 asr r25
72: 87 95 ror r24
74: 2a 95 dec r18
76: 02 f4 brpl .+0 ; 0x78 <_Z16living_neighborsPhhh+0x78>
78: 80 fd sbrc r24, 0
7a: f3 94 inc r15
7c: 4f 5f subi r20, 0xFF ; 255
7e: 5f 4f sbci r21, 0xFF ; 255
80: 11 96 adiw r26, 0x01 ; 1
82: 42 30 cpi r20, 0x02 ; 2
84: 51 05 cpc r21, r1
86: 01 f4 brne .+0 ; 0x88 <_Z16living_neighborsPhhh+0x88>
88: 21 96 adiw r28, 0x01 ; 1
8a: 0f 5f subi r16, 0xFF ; 255
8c: 1f 4f sbci r17, 0xFF ; 255
8e: 37 5e subi r19, 0xE7 ; 231
90: c2 30 cpi r28, 0x02 ; 2
92: d1 05 cpc r29, r1
94: 01 f0 breq .+0 ; 0x96 <_Z16living_neighborsPhhh+0x96>
96: db 01 movw r26, r22
98: 4f ef ldi r20, 0xFF ; 255
9a: 5f ef ldi r21, 0xFF ; 255
9c: 00 c0 rjmp .+0 ; 0x9e <_Z16living_neighborsPhhh+0x9e>
9e: 8f 2d mov r24, r15
a0: df 91 pop r29
a2: cf 91 pop r28
a4: 1f 91 pop r17
a6: 0f 91 pop r16
a8: ff 90 pop r15
aa: df 90 pop r13
ac: cf 90 pop r12
ae: 08 95 ret
Disassembly of section .text._Z15next_generationPhS_:
00000000 <_Z15next_generationPhS_>:
0: cf 92 push r12
2: df 92 push r13
4: ef 92 push r14
6: ff 92 push r15
8: 0f 93 push r16
a: 1f 93 push r17
c: cf 93 push r28
e: df 93 push r29
10: 6c 01 movw r12, r24
12: eb 01 movw r28, r22
14: ff 24 eor r15, r15
16: ee 24 eor r14, r14
18: 00 c0 rjmp .+0 ; 0x1a <_Z15next_generationPhS_+0x1a>
1a: c6 01 movw r24, r12
1c: 60 2f mov r22, r16
1e: 4e 2d mov r20, r14
20: 0e 94 00 00 call 0 ; 0x0 <_Z15next_generationPhS_>
24: 38 2f mov r19, r24
26: 81 2f mov r24, r17
28: 86 95 lsr r24
2a: 86 95 lsr r24
2c: 86 95 lsr r24
2e: f6 01 movw r30, r12
30: e8 0f add r30, r24
32: f1 1d adc r31, r1
34: 80 81 ld r24, Z
36: 90 e0 ldi r25, 0x00 ; 0
38: 21 2f mov r18, r17
3a: 27 70 andi r18, 0x07 ; 7
3c: 00 c0 rjmp .+0 ; 0x3e <_Z15next_generationPhS_+0x3e>
3e: 95 95 asr r25
40: 87 95 ror r24
42: 2a 95 dec r18
44: 02 f4 brpl .+0 ; 0x46 <_Z15next_generationPhS_+0x46>
46: 80 ff sbrs r24, 0
48: 00 c0 rjmp .+0 ; 0x4a <_Z15next_generationPhS_+0x4a>
4a: 32 50 subi r19, 0x02 ; 2
4c: 32 30 cpi r19, 0x02 ; 2
4e: 00 f4 brcc .+0 ; 0x50 <_Z15next_generationPhS_+0x50>
50: 00 c0 rjmp .+0 ; 0x52 <_Z15next_generationPhS_+0x52>
52: 33 30 cpi r19, 0x03 ; 3
54: 01 f4 brne .+0 ; 0x56 <_Z15next_generationPhS_+0x56>
56: ce 01 movw r24, r28
58: 61 2f mov r22, r17
5a: 0e 94 00 00 call 0 ; 0x0 <_Z15next_generationPhS_>
5e: 0f 5f subi r16, 0xFF ; 255
60: 1f 5f subi r17, 0xFF ; 255
62: 09 31 cpi r16, 0x19 ; 25
64: 01 f4 brne .+0 ; 0x66 <_Z15next_generationPhS_+0x66>
66: 89 e1 ldi r24, 0x19 ; 25
68: f8 0e add r15, r24
6a: e3 94 inc r14
6c: 8d e7 ldi r24, 0x7D ; 125
6e: f8 16 cp r15, r24
70: 01 f0 breq .+0 ; 0x72 <_Z15next_generationPhS_+0x72>
72: 1f 2d mov r17, r15
74: 00 e0 ldi r16, 0x00 ; 0
76: 00 c0 rjmp .+0 ; 0x78 <_Z15next_generationPhS_+0x78>
78: df 91 pop r29
7a: cf 91 pop r28
7c: 1f 91 pop r17
7e: 0f 91 pop r16
80: ff 90 pop r15
82: ef 90 pop r14
84: df 90 pop r13
86: cf 90 pop r12
88: 08 95 ret
Disassembly of section .text._Z9memcpy_PFPhS_h:
00000000 <_Z9memcpy_PFPhS_h>:
0: 20 e0 ldi r18, 0x00 ; 0
2: 30 e0 ldi r19, 0x00 ; 0
4: 50 e0 ldi r21, 0x00 ; 0
6: 00 c0 rjmp .+0 ; 0x8 <_Z9memcpy_PFPhS_h+0x8>
8: fb 01 movw r30, r22
a: e2 0f add r30, r18
c: f3 1f adc r31, r19
e: e4 91 lpm r30, Z+
10: dc 01 movw r26, r24
12: a2 0f add r26, r18
14: b3 1f adc r27, r19
16: ec 93 st X, r30
18: 2f 5f subi r18, 0xFF ; 255
1a: 3f 4f sbci r19, 0xFF ; 255
1c: 24 17 cp r18, r20
1e: 35 07 cpc r19, r21
20: 04 f0 brlt .+0 ; 0x22 <_Z9memcpy_PFPhS_h+0x22>
22: 08 95 ret
Disassembly of section .text._GLOBAL__I__Z4testPhh:
00000000 <_GLOBAL__I__Z4testPhh>:
0: 8f 92 push r8
2: af 92 push r10
4: cf 92 push r12
6: df 92 push r13
8: ef 92 push r14
a: ff 92 push r15
c: 0f 93 push r16
e: 80 e0 ldi r24, 0x00 ; 0
10: 90 e0 ldi r25, 0x00 ; 0
12: 6a e2 ldi r22, 0x2A ; 42
14: 70 e0 ldi r23, 0x00 ; 0
16: 4b e2 ldi r20, 0x2B ; 43
18: 50 e0 ldi r21, 0x00 ; 0
1a: 20 e0 ldi r18, 0x00 ; 0
1c: 08 e0 ldi r16, 0x08 ; 8
1e: f7 e2 ldi r31, 0x27 ; 39
20: ef 2e mov r14, r31
22: f1 2c mov r15, r1
24: e8 e2 ldi r30, 0x28 ; 40
26: ce 2e mov r12, r30
28: d1 2c mov r13, r1
2a: aa 24 eor r10, r10
2c: 34 e0 ldi r19, 0x04 ; 4
2e: 83 2e mov r8, r19
30: 0e 94 00 00 call 0 ; 0x0 <_GLOBAL__I__Z4testPhh>
34: 0f 91 pop r16
36: ff 90 pop r15
38: ef 90 pop r14
3a: df 90 pop r13
3c: cf 90 pop r12
3e: af 90 pop r10
40: 8f 90 pop r8
42: 08 95 ret
Disassembly of section .text._Z7tickISRv:
00000000 <_Z7tickISRv>:
0: 80 e0 ldi r24, 0x00 ; 0
2: 90 e0 ldi r25, 0x00 ; 0
4: 0e 94 00 00 call 0 ; 0x0 <_Z7tickISRv>
8: 08 95 ret
Disassembly of section .text._Z10setDisplayPhh:
00000000 <_Z10setDisplayPhh>:
0: cf 92 push r12
2: df 92 push r13
4: ef 92 push r14
6: ff 92 push r15
8: 0f 93 push r16
a: 1f 93 push r17
c: cf 93 push r28
e: df 93 push r29
10: 6c 01 movw r12, r24
12: e6 2e mov r14, r22
14: 00 e0 ldi r16, 0x00 ; 0
16: 10 e0 ldi r17, 0x00 ; 0
18: 00 c0 rjmp .+0 ; 0x1a <_Z10setDisplayPhh+0x1a>
1a: 2c 2f mov r18, r28
1c: 8c 2f mov r24, r28
1e: 86 95 lsr r24
20: 86 95 lsr r24
22: 86 95 lsr r24
24: f6 01 movw r30, r12
26: e8 0f add r30, r24
28: f1 1d adc r31, r1
2a: 80 81 ld r24, Z
2c: 90 e0 ldi r25, 0x00 ; 0
2e: 27 70 andi r18, 0x07 ; 7
30: 00 c0 rjmp .+0 ; 0x32 <_Z10setDisplayPhh+0x32>
32: 95 95 asr r25
34: 87 95 ror r24
36: 2a 95 dec r18
38: 02 f4 brpl .+0 ; 0x3a <_Z10setDisplayPhh+0x3a>
3a: 80 ff sbrs r24, 0
3c: 00 c0 rjmp .+0 ; 0x3e <_Z10setDisplayPhh+0x3e>
3e: 80 e0 ldi r24, 0x00 ; 0
40: 90 e0 ldi r25, 0x00 ; 0
42: be 01 movw r22, r28
44: 4e 2d mov r20, r14
46: 0e 94 00 00 call 0 ; 0x0 <_Z10setDisplayPhh>
4a: f3 94 inc r15
4c: 21 96 adiw r28, 0x01 ; 1
4e: 89 e1 ldi r24, 0x19 ; 25
50: f8 16 cp r15, r24
52: 01 f4 brne .+0 ; 0x54 <_Z10setDisplayPhh+0x54>
54: 07 5e subi r16, 0xE7 ; 231
56: 1f 4f sbci r17, 0xFF ; 255
58: 0d 37 cpi r16, 0x7D ; 125
5a: 11 05 cpc r17, r1
5c: 01 f0 breq .+0 ; 0x5e <_Z10setDisplayPhh+0x5e>
5e: e8 01 movw r28, r16
60: ff 24 eor r15, r15
62: 00 c0 rjmp .+0 ; 0x64 <_Z10setDisplayPhh+0x64>
64: df 91 pop r29
66: cf 91 pop r28
68: 1f 91 pop r17
6a: 0f 91 pop r16
6c: ff 90 pop r15
6e: ef 90 pop r14
70: df 90 pop r13
72: cf 90 pop r12
74: 08 95 ret
Disassembly of section .text.loop:
00000000 <loop>:
0: 0f 93 push r16
2: 1f 93 push r17
4: 80 e0 ldi r24, 0x00 ; 0
6: 90 e0 ldi r25, 0x00 ; 0
8: 0e 94 00 00 call 0 ; 0x0 <loop>
c: 80 e0 ldi r24, 0x00 ; 0
e: 90 e0 ldi r25, 0x00 ; 0
10: 68 e0 ldi r22, 0x08 ; 8
12: 0e 94 00 00 call 0 ; 0x0 <loop>
16: 89 e0 ldi r24, 0x09 ; 9
18: 0e 94 00 00 call 0 ; 0x0 <loop>
1c: 89 2b or r24, r25
1e: 01 f4 brne .+0 ; 0x20 <loop+0x20>
20: 00 e0 ldi r16, 0x00 ; 0
22: 10 e0 ldi r17, 0x00 ; 0
24: 80 e1 ldi r24, 0x10 ; 16
26: f8 01 movw r30, r16
28: 11 92 st Z+, r1
2a: 8a 95 dec r24
2c: 01 f4 brne .+0 ; 0x2e <loop+0x2e>
2e: 80 e0 ldi r24, 0x00 ; 0
30: 90 e0 ldi r25, 0x00 ; 0
32: b8 01 movw r22, r16
34: 0e 94 00 00 call 0 ; 0x0 <loop>
38: a0 e0 ldi r26, 0x00 ; 0
3a: b0 e0 ldi r27, 0x00 ; 0
3c: f8 01 movw r30, r16
3e: 80 e1 ldi r24, 0x10 ; 16
40: 01 90 ld r0, Z+
42: 0d 92 st X+, r0
44: 81 50 subi r24, 0x01 ; 1
46: 01 f4 brne .+0 ; 0x48 <loop+0x48>
48: 00 c0 rjmp .+0 ; 0x4a <loop+0x4a>
4a: 8a e0 ldi r24, 0x0A ; 10
4c: 0e 94 00 00 call 0 ; 0x0 <loop>
50: 89 2b or r24, r25
52: 01 f4 brne .+0 ; 0x54 <loop+0x54>
54: 80 91 00 00 lds r24, 0x0000
58: 90 91 00 00 lds r25, 0x0000
5c: 01 96 adiw r24, 0x01 ; 1
5e: 90 93 00 00 sts 0x0000, r25
62: 80 93 00 00 sts 0x0000, r24
66: 80 91 00 00 lds r24, 0x0000
6a: 90 91 00 00 lds r25, 0x0000
6e: 02 97 sbiw r24, 0x02 ; 2
70: 01 f4 brne .+0 ; 0x72 <loop+0x72>
72: 10 92 00 00 sts 0x0000, r1
76: 10 92 00 00 sts 0x0000, r1
7a: 20 91 00 00 lds r18, 0x0000
7e: 30 91 00 00 lds r19, 0x0000
82: a4 e0 ldi r26, 0x04 ; 4
84: 22 0f add r18, r18
86: 33 1f adc r19, r19
88: aa 95 dec r26
8a: 01 f4 brne .+0 ; 0x8c <loop+0x8c>
8c: 20 50 subi r18, 0x00 ; 0
8e: 30 40 sbci r19, 0x00 ; 0
90: 80 e0 ldi r24, 0x00 ; 0
92: 90 e0 ldi r25, 0x00 ; 0
94: f9 01 movw r30, r18
96: e8 0f add r30, r24
98: f9 1f adc r31, r25
9a: e4 91 lpm r30, Z+
9c: dc 01 movw r26, r24
9e: a0 50 subi r26, 0x00 ; 0
a0: b0 40 sbci r27, 0x00 ; 0
a2: ec 93 st X, r30
a4: 01 96 adiw r24, 0x01 ; 1
a6: 80 31 cpi r24, 0x10 ; 16
a8: 91 05 cpc r25, r1
aa: 01 f4 brne .+0 ; 0xac <loop+0xac>
ac: 64 e6 ldi r22, 0x64 ; 100
ae: 70 e0 ldi r23, 0x00 ; 0
b0: 80 e0 ldi r24, 0x00 ; 0
b2: 90 e0 ldi r25, 0x00 ; 0
b4: 0e 94 00 00 call 0 ; 0x0 <loop>
b8: 1f 91 pop r17
ba: 0f 91 pop r16
bc: 08 95 ret
be: 6a e0 ldi r22, 0x0A ; 10
c0: 70 e0 ldi r23, 0x00 ; 0
c2: 80 e0 ldi r24, 0x00 ; 0
c4: 90 e0 ldi r25, 0x00 ; 0
c6: 0e 94 00 00 call 0 ; 0x0 <loop>
ca: 00 c0 rjmp .+0 ; 0xcc <__SREG__+0x8d>
Disassembly of section .text.setup:
00000000 <setup>:
0: 80 e0 ldi r24, 0x00 ; 0
2: 90 e0 ldi r25, 0x00 ; 0
4: 41 e0 ldi r20, 0x01 ; 1
6: 50 e0 ldi r21, 0x00 ; 0
8: 60 e0 ldi r22, 0x00 ; 0
a: 70 e0 ldi r23, 0x00 ; 0
c: 0e 94 00 00 call 0 ; 0x0 <setup>
10: 80 e0 ldi r24, 0x00 ; 0
12: 90 e0 ldi r25, 0x00 ; 0
14: 60 e0 ldi r22, 0x00 ; 0
16: 70 e0 ldi r23, 0x00 ; 0
18: 21 e0 ldi r18, 0x01 ; 1
1a: 30 e0 ldi r19, 0x00 ; 0
1c: 40 e0 ldi r20, 0x00 ; 0
1e: 50 e0 ldi r21, 0x00 ; 0
20: 0e 94 00 00 call 0 ; 0x0 <setup>
24: 89 e0 ldi r24, 0x09 ; 9
26: 60 e0 ldi r22, 0x00 ; 0
28: 0e 94 00 00 call 0 ; 0x0 <setup>
2c: 89 e0 ldi r24, 0x09 ; 9
2e: 61 e0 ldi r22, 0x01 ; 1
30: 0e 94 00 00 call 0 ; 0x0 <setup>
34: 8a e0 ldi r24, 0x0A ; 10
36: 60 e0 ldi r22, 0x00 ; 0
38: 0e 94 00 00 call 0 ; 0x0 <setup>
3c: 8a e0 ldi r24, 0x0A ; 10
3e: 61 e0 ldi r22, 0x01 ; 1
40: 0e 94 00 00 call 0 ; 0x0 <setup>
44: 80 e0 ldi r24, 0x00 ; 0
46: 90 e0 ldi r25, 0x00 ; 0
48: fc 01 movw r30, r24
4a: e0 50 subi r30, 0x00 ; 0
4c: f0 40 sbci r31, 0x00 ; 0
4e: e4 91 lpm r30, Z+
50: dc 01 movw r26, r24
52: a0 50 subi r26, 0x00 ; 0
54: b0 40 sbci r27, 0x00 ; 0
56: ec 93 st X, r30
58: 01 96 adiw r24, 0x01 ; 1
5a: 80 31 cpi r24, 0x10 ; 16
5c: 91 05 cpc r25, r1
5e: 01 f4 brne .+0 ; 0x60 <setup+0x60>
60: 08 95 ret
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment