Commit | Line | Data |
---|---|---|
68a581b8 SC |
1 | #objdump: -S |
2 | #as: -m68hc12 -gdwarf2 | |
3 | #name: Dwarf2 test on opers12.s | |
4 | #source: opers12.s | |
5 | ||
6 | .*: +file format elf32\-m68hc12 | |
7 | ||
8 | Disassembly of section .text: | |
9 | ||
cd2b2939 | 10 | 0+00 <start>: |
68a581b8 SC |
11 | sect .text |
12 | globl start | |
13 | ||
14 | start: | |
15 | anda \[12,x\] ; Indexed indirect | |
16 | 0: a4 e3 00 0c anda \[12,X\] | |
17 | ldaa #10 | |
18 | 4: 86 0a ldaa #10 | |
19 | ldx L1 | |
cd2b2939 | 20 | 6: fe 00 00 ldx 0 <start> |
68a581b8 | 21 | |
cd2b2939 | 22 | 0+09 <L1>: |
68a581b8 SC |
23 | L1: ldy ,x |
24 | 9: ed 00 ldy 0,X | |
25 | addd 1,y ; Offset from register | |
26 | b: e3 41 addd 1,Y | |
27 | subd \-1,y | |
28 | d: a3 5f subd \-1,Y | |
29 | eora 15,y | |
30 | f: a8 4f eora 15,Y | |
31 | eora \-16,y | |
32 | 11: a8 50 eora \-16,Y | |
33 | eorb 16,y | |
34 | 13: e8 e8 10 eorb 16,Y | |
35 | eorb \-17,y | |
36 | 16: e8 e9 ef eorb \-17,Y | |
37 | oraa 128,sp | |
38 | 19: aa f0 80 oraa 128,SP | |
39 | orab \-128,sp | |
40 | 1c: ea f1 80 orab \-128,SP | |
41 | orab 255,x | |
42 | 1f: ea e0 ff orab 255,X | |
43 | orab \-256,x | |
44 | 22: ea e1 00 orab \-256,X | |
45 | anda 256,x | |
46 | 25: a4 e2 01 00 anda 256,X | |
47 | andb \-257,x | |
48 | 29: e4 e2 fe ff andb \-257,X | |
49 | anda \[12,x\] ; Indexed indirect \(16\-bit offset\) | |
50 | 2d: a4 e3 00 0c anda \[12,X\] | |
51 | ldaa \[257,y\] | |
52 | 31: a6 eb 01 01 ldaa \[257,Y\] | |
53 | ldab \[32767,sp\] | |
54 | 35: e6 f3 7f ff ldab \[32767,SP\] | |
55 | ldd \[32768,pc\] | |
56 | 39: ec fb 80 00 ldd \[32768,PC\] | |
57 | ldd L1,pc | |
5da0c277 | 58 | 3d: ec f9 c9 ldd -55,PC \{9 <L1>\} |
68a581b8 SC |
59 | std a,x ; Two\-reg index |
60 | 40: 6c e4 std A,X | |
61 | ldx b,x | |
62 | 42: ee e5 ldx B,X | |
63 | stx d,y | |
64 | 44: 6e ee stx D,Y | |
65 | addd 1,\+x ; Pre\-Auto inc | |
66 | 46: e3 20 addd 1,\+X | |
67 | addd 2,\+x | |
68 | 48: e3 21 addd 2,\+X | |
69 | addd 8,\+x | |
70 | 4a: e3 27 addd 8,\+X | |
71 | addd 1,sp\+ ; Post\-Auto inc | |
72 | 4c: e3 b0 addd 1,SP\+ | |
73 | addd 2,sp\+ | |
74 | 4e: e3 b1 addd 2,SP\+ | |
75 | addd 8,sp\+ | |
76 | 50: e3 b7 addd 8,SP\+ | |
77 | subd 1,\-y ; Pre\-Auto dec | |
78 | 52: a3 6f subd 1,\-Y | |
79 | subd 2,\-y | |
80 | 54: a3 6e subd 2,\-Y | |
81 | subd 8,\-y | |
82 | 56: a3 68 subd 8,\-Y | |
83 | addd 1,y\- ; Post\-Auto dec | |
84 | 58: e3 7f addd 1,Y\- | |
85 | addd 2,y\- | |
86 | 5a: e3 7e addd 2,Y\- | |
87 | addd 8,y\- | |
88 | 5c: e3 78 addd 8,Y\- | |
89 | std \[d,x\] ; Indexed indirect with two reg index | |
90 | 5e: 6c e7 std \[D,X\] | |
91 | std \[d,y\] | |
92 | 60: 6c ef std \[D,Y\] | |
93 | std \[d,sp\] | |
94 | 62: 6c f7 std \[D,SP\] | |
95 | std \[d,pc\] | |
96 | 64: 6c ff std \[D,PC\] | |
97 | beq L1 | |
98 | 66: 27 a1 beq 9 <L1> | |
99 | lbeq start | |
100 | 68: 18 27 ff 94 lbeq 0 <start> | |
101 | lbcc L2 | |
102 | 6c: 18 24 00 4c lbcc bc <L2> | |
103 | ;; | |
104 | ;; Move insn with various operands | |
105 | ;; | |
106 | movb start, 1,x | |
107 | 70: 18 09 01 00 movb 0 <start>, 1,X | |
108 | 74: 00 | |
109 | movw 1,x, start | |
110 | 75: 18 05 01 00 movw 1,X, 0 <start> | |
111 | 79: 00 | |
112 | movb start, 1,\+x | |
113 | 7a: 18 09 20 00 movb 0 <start>, 1,\+X | |
114 | 7e: 00 | |
115 | movb start, 1,\-x | |
116 | 7f: 18 09 2f 00 movb 0 <start>, 1,\-X | |
117 | 83: 00 | |
118 | movb #23, 1,\-sp | |
119 | 84: 18 08 af 17 movb #23, 1,\-SP | |
120 | movb L1, L2 | |
cd2b2939 SC |
121 | 88: 18 0c 00 00 movb 0 <start>, 0 <start> |
122 | 8c: 00 00 | |
68a581b8 | 123 | movb L1, a,x |
cd2b2939 SC |
124 | 8e: 18 09 e4 00 movb 0 <start>, A,X |
125 | 92: 00 | |
68a581b8 | 126 | movw L1, b,x |
cd2b2939 SC |
127 | 93: 18 01 e5 00 movw 0 <start>, B,X |
128 | 97: 00 | |
68a581b8 | 129 | movw L1, d,x |
cd2b2939 SC |
130 | 98: 18 01 e6 00 movw 0 <start>, D,X |
131 | 9c: 00 | |
68a581b8 SC |
132 | movw d,x, a,x |
133 | 9d: 18 02 e6 e4 movw D,X, A,X | |
134 | movw b,sp, d,pc | |
135 | a1: 18 02 f5 fe movw B,SP, D,PC | |
136 | movw b,sp, L1 | |
cd2b2939 SC |
137 | a5: 18 05 f5 00 movw B,SP, 0 <start> |
138 | a9: 00 | |
68a581b8 SC |
139 | movw b,sp, 1,x |
140 | aa: 18 02 f5 01 movw B,SP, 1,X | |
141 | movw d,x, a,y | |
142 | ae: 18 02 e6 ec movw D,X, A,Y | |
143 | trap #0x30 | |
144 | b2: 18 30 trap #48 | |
145 | trap #0x39 | |
146 | b4: 18 39 trap #57 | |
147 | trap #0x40 | |
148 | b6: 18 40 trap #64 | |
149 | trap #0x80 | |
150 | b8: 18 80 trap #128 | |
151 | trap #255 | |
152 | ba: 18 ff trap #255 | |
153 | ||
cd2b2939 | 154 | 0+bc <L2>: |
68a581b8 SC |
155 | L2: |
156 | movw 1,x,2,x | |
157 | bc: 18 02 01 02 movw 1,X, 2,X | |
158 | movw \-1,\-1 | |
159 | c0: 18 04 ff ff movw ffff <bb\+0xd7ff>, ffff <bb\+0xd7ff> | |
160 | c4: ff ff | |
161 | movw \-1,1,x | |
162 | c6: 18 01 01 ff movw ffff <bb\+0xd7ff>, 1,X | |
163 | ca: ff | |
164 | movw #\-1,1,x | |
165 | cb: 18 00 01 ff movw #ffff <bb\+0xd7ff>, 1,X | |
166 | cf: ff | |
167 | movw 3,8 | |
168 | d0: 18 04 00 03 movw 3 <start\+0x3>, 8 <start\+0x8> | |
169 | d4: 00 08 | |
170 | movw #3,3 | |
171 | d6: 18 03 00 03 movw #3 <start\+0x3>, 3 <start\+0x3> | |
172 | da: 00 03 | |
173 | movw #3,1,x | |
174 | dc: 18 00 01 00 movw #3 <start\+0x3>, 1,X | |
175 | e0: 03 | |
176 | movw 3,1,x | |
177 | e1: 18 01 01 00 movw 3 <start\+0x3>, 1,X | |
178 | e5: 03 | |
179 | movw 3,\+2,x | |
180 | e6: 18 01 02 00 movw 3 <start\+0x3>, 2,X | |
181 | ea: 03 | |
182 | movw 4,\-2,x | |
183 | eb: 18 01 1e 00 movw 4 <start\+0x4>, \-2,X | |
184 | ef: 04 | |
185 | rts | |
186 | f0: 3d rts | |
187 | ||
cd2b2939 | 188 | 0+f1 <post_indexed_pb>: |
68a581b8 SC |
189 | ;; |
190 | ;; Post\-index byte with relocation | |
191 | ;; | |
192 | post_indexed_pb: | |
193 | t1: | |
194 | leas abort,x | |
195 | f1: 1b e2 00 00 leas 0,X | |
196 | ||
cd2b2939 | 197 | 0+f5 <t2>: |
68a581b8 SC |
198 | t2: |
199 | leax t2\-t1,y | |
200 | f5: 1a 44 leax 4,Y | |
201 | leax toto,x | |
49fa082d | 202 | f7: 1a e0 64 leax 100,X |
68a581b8 | 203 | leas toto\+titi,sp |
49fa082d | 204 | fa: 1b f0 6e leas 110,SP |
68a581b8 | 205 | leay titi,x |
49fa082d | 206 | fd: 19 0a leay 10,X |
68a581b8 | 207 | leas bb,y |
49fa082d | 208 | ff: 1b ea 28 00 leas 10240,Y |
68a581b8 | 209 | leas min5b,pc |
49fa082d | 210 | 103: 1b d0 leas -16,PC \{f5 <t2>\} |
68a581b8 | 211 | leas max5b,pc |
49fa082d | 212 | 105: 1b cf leas 15,PC \{116 <t2\+0x21>\} |
68a581b8 | 213 | leas min9b,pc |
5da0c277 | 214 | 107: 1b fa ff 00 leas -256,PC \{b <L1\+0x2>\} |
68a581b8 | 215 | leas max9b,pc |
5da0c277 | 216 | 10b: 1b f8 ff leas 255,PC \{20d <.L0\ 1\+0xd9>\} |
5d45665a SC |
217 | |
218 | ;; | |
219 | ;; Disassembler bug with movb | |
220 | ;; | |
221 | movb #23,0x2345 | |
5da0c277 SC |
222 | 10e: 18 0b 17 23 movb #23, 2345 <.L0\ 1\+0x2211> |
223 | 112: 45 | |
5d45665a | 224 | movb #40,12,sp |
5da0c277 | 225 | 113: 18 08 8c 28 movb #40, 12,SP |
5d45665a | 226 | movb #39,3,\+sp |
5da0c277 | 227 | 117: 18 08 a2 27 movb #39, 3,\+SP |
5d45665a | 228 | movb #20,14,sp |
5da0c277 | 229 | 11b: 18 08 8e 14 movb #20, 14,SP |
5d45665a | 230 | movw #0x3210,0x3456 |
5da0c277 SC |
231 | 11f: 18 03 32 10 movw #3210 <bb\+0xa10>, 3456 <bb\+0xc56> |
232 | 123: 34 56 | |
5d45665a | 233 | movw #0x4040,12,sp |
5da0c277 SC |
234 | 125: 18 00 8c 40 movw #4040 <bb\+0x1840>, 12,SP |
235 | 129: 40 | |
5d45665a | 236 | movw #0x3900,3,\+sp |
5da0c277 SC |
237 | 12a: 18 00 a2 39 movw #3900 <bb\+0x1100>, 3,\+SP |
238 | 12e: 00 | |
5d45665a | 239 | movw #0x2000,14,sp |
5da0c277 SC |
240 | 12f: 18 00 8e 20 movw #2000 <.L0\ 1\+0x1ecc>, 14,SP |
241 | 133: 00 |