ARM GAS C:\Users\mike\AppData\Local\Temp\ccAQnebG.s page 1
1 .cpu cortex-m3
2 .eabi_attribute 20, 1
3 .eabi_attribute 21, 1
4 .eabi_attribute 23, 3
5 .eabi_attribute 24, 1
6 .eabi_attribute 25, 1
7 .eabi_attribute 26, 1
8 .eabi_attribute 30, 1
9 .eabi_attribute 34, 1
10 .eabi_attribute 18, 4
11 .file "displayDial.cpp"
12 .text
13 .Ltext0:
14 .cfi_sections .debug_frame
15 .section .text._Z41__static_initialization_and_destruction_0ii,"ax",%progbits
16 .align 1
17 .arch armv7-m
18 .syntax unified
19 .thumb
20 .thumb_func
21 .fpu softvfp
23 _Z41__static_initialization_and_destruction_0ii:
24 .LVL0:
25 .LFB25:
26 .file 1 "../libOLED/src/displayDial.cpp"
1:../libOLED/src/displayDial.cpp **** /*
2:../libOLED/src/displayDial.cpp **** * dials.c
3:../libOLED/src/displayDial.cpp **** *
4:../libOLED/src/displayDial.cpp **** * Created on: 22 Jan 2016
5:../libOLED/src/displayDial.cpp **** * Author: Mike
6:../libOLED/src/displayDial.cpp **** */
7:../libOLED/src/displayDial.cpp ****
8:../libOLED/src/displayDial.cpp **** #include "libOLED/ap_math.H"
9:../libOLED/src/displayDial.cpp **** #include "libOLED/displayclass.H"
10:../libOLED/src/displayDial.cpp **** #include "libOLED/fontclass.H"
11:../libOLED/src/displayDial.cpp **** #include "libOLED/displayDial.H"
12:../libOLED/src/displayDial.cpp ****
13:../libOLED/src/displayDial.cpp ****
14:../libOLED/src/displayDial.cpp **** static ap_math math;
15:../libOLED/src/displayDial.cpp **** // this is the number of degrees between top centre of scale and
16:../libOLED/src/displayDial.cpp **** // left or right hand end of scale : 90 degrees produces a semicircle.
17:../libOLED/src/displayDial.cpp ****
18:../libOLED/src/displayDial.cpp ****
19:../libOLED/src/displayDial.cpp **** displayDial_t::displayDial_t(display_t & display,uint8_t x, uint8_t y, uint8_t siz,uint16_t angle_)
20:../libOLED/src/displayDial.cpp **** {
21:../libOLED/src/displayDial.cpp ****
22:../libOLED/src/displayDial.cpp **** }
23:../libOLED/src/displayDial.cpp ****
24:../libOLED/src/displayDial.cpp **** /* position is integer from 0 to SINE_STEPS */
25:../libOLED/src/displayDial.cpp **** void
26:../libOLED/src/displayDial.cpp **** displayDial_t::draw_needle (int16_t position)
27:../libOLED/src/displayDial.cpp **** {
28:../libOLED/src/displayDial.cpp **** int ang = math.SINE_SCALING * ((position - (math.SINE_STEPS/2)) * m_a1) / (math.SINE_STEPS/2);
29:../libOLED/src/displayDial.cpp ****
30:../libOLED/src/displayDial.cpp **** int si = math.ap_sin (ang);
31:../libOLED/src/displayDial.cpp **** int co = math.ap_cos (ang);
32:../libOLED/src/displayDial.cpp ****
ARM GAS C:\Users\mike\AppData\Local\Temp\ccAQnebG.s page 2
33:../libOLED/src/displayDial.cpp **** /* calculate a shift for a second side of the needle */
34:../libOLED/src/displayDial.cpp **** int xl = math.ap_sin (ang - math.SINE_STEPS);
35:../libOLED/src/displayDial.cpp **** int yl = math.ap_cos (ang - math.SINE_STEPS);
36:../libOLED/src/displayDial.cpp ****
37:../libOLED/src/displayDial.cpp **** int si2 = m_siz + 2;
38:../libOLED/src/displayDial.cpp **** int si3 = 2 * m_siz / 3;
39:../libOLED/src/displayDial.cpp ****
40:../libOLED/src/displayDial.cpp **** int xs,ys;
41:../libOLED/src/displayDial.cpp **** // three parallel lines
42:../libOLED/src/displayDial.cpp **** xs = -xl;
43:../libOLED/src/displayDial.cpp **** ys = -yl;
44:../libOLED/src/displayDial.cpp **** int step;
45:../libOLED/src/displayDial.cpp **** for(step =0; step < 3; step++)
46:../libOLED/src/displayDial.cpp **** {
47:../libOLED/src/displayDial.cpp **** m_display.drawLine (math.AP_SCALE(si*si2-xs) + m_xo, m_yo - math.AP_SCALE(co * si2 - ys),
48:../libOLED/src/displayDial.cpp ****
49:../libOLED/src/displayDial.cpp **** math.AP_SCALE(si*si3-xs) + m_xo,m_yo - math.AP_SCALE(co * si3 - ys), INVERT);
50:../libOLED/src/displayDial.cpp **** xs+=xl;
51:../libOLED/src/displayDial.cpp **** ys+=yl;
52:../libOLED/src/displayDial.cpp **** }
53:../libOLED/src/displayDial.cpp **** }
54:../libOLED/src/displayDial.cpp ****
55:../libOLED/src/displayDial.cpp ****
56:../libOLED/src/displayDial.cpp **** void displayDial_t::draw_scale ( int16_t low, int16_t high, uint8_t width, uint8_t num_step,int16_t
57:../libOLED/src/displayDial.cpp **** {
58:../libOLED/src/displayDial.cpp ****
59:../libOLED/src/displayDial.cpp **** int ang;
60:../libOLED/src/displayDial.cpp **** m_low = low;
61:../libOLED/src/displayDial.cpp **** m_high = high;
62:../libOLED/src/displayDial.cpp **** int sc_low = low/scale;
63:../libOLED/src/displayDial.cpp **** int sc_high = high/scale;
64:../libOLED/src/displayDial.cpp **** int step = 256 * m_a1 * 2 / (4 * (sc_high - sc_low));
65:../libOLED/src/displayDial.cpp **** int t;
66:../libOLED/src/displayDial.cpp **** ang = -m_a1 * 256;
67:../libOLED/src/displayDial.cpp **** for (t = sc_low * 4; t <= sc_high * 4; t++)
68:../libOLED/src/displayDial.cpp **** {
69:../libOLED/src/displayDial.cpp **** int si = math.ap_sin ((ang*math.SINE_SCALING) / 256);
70:../libOLED/src/displayDial.cpp **** int co = math.ap_cos ((ang*math.SINE_SCALING) / 256);
71:../libOLED/src/displayDial.cpp ****
72:../libOLED/src/displayDial.cpp **** int len;
73:../libOLED/src/displayDial.cpp **** switch (t % 4)
74:../libOLED/src/displayDial.cpp **** {
75:../libOLED/src/displayDial.cpp **** case 0:
76:../libOLED/src/displayDial.cpp **** len = width;
77:../libOLED/src/displayDial.cpp **** break;
78:../libOLED/src/displayDial.cpp **** case 1:
79:../libOLED/src/displayDial.cpp **** case 3:
80:../libOLED/src/displayDial.cpp **** case -1:
81:../libOLED/src/displayDial.cpp **** case -3:
82:../libOLED/src/displayDial.cpp **** len = width / 4;
83:../libOLED/src/displayDial.cpp **** break;
84:../libOLED/src/displayDial.cpp **** case 2:
85:../libOLED/src/displayDial.cpp **** case -2:
86:../libOLED/src/displayDial.cpp **** len = width / 2;
87:../libOLED/src/displayDial.cpp **** break;
88:../libOLED/src/displayDial.cpp **** }
89:../libOLED/src/displayDial.cpp ****
ARM GAS C:\Users\mike\AppData\Local\Temp\ccAQnebG.s page 3
90:../libOLED/src/displayDial.cpp **** m_display.drawLine (math.AP_SCALE((m_siz)*si) + m_xo, m_yo - math.AP_SCALE((m_siz) * co),
91:../libOLED/src/displayDial.cpp **** math.AP_SCALE((m_siz-len)*si) + m_xo,
92:../libOLED/src/displayDial.cpp **** m_yo - math.AP_SCALE((m_siz - len) * co), WHITE);
93:../libOLED/src/displayDial.cpp **** ang += step;
94:../libOLED/src/displayDial.cpp **** }
95:../libOLED/src/displayDial.cpp ****
96:../libOLED/src/displayDial.cpp **** }
97:../libOLED/src/displayDial.cpp ****
98:../libOLED/src/displayDial.cpp ****
99:../libOLED/src/displayDial.cpp **** void displayDial_t::draw_limits()
100:../libOLED/src/displayDial.cpp **** {
101:../libOLED/src/displayDial.cpp **** m_display.fontSigDigits (small_font, 0,56,0,10,m_low,WHITE);
102:../libOLED/src/displayDial.cpp **** m_display.fontSigDigits (small_font, 120,56,1,10,m_high,WHITE);
103:../libOLED/src/displayDial.cpp **** }
27 .loc 1 103 1 view -0
28 .cfi_startproc
29 @ args = 0, pretend = 0, frame = 0
30 @ frame_needed = 0, uses_anonymous_args = 0
31 .loc 1 103 1 is_stmt 0 view .LVU1
32 0000 0128 cmp r0, #1
33 0002 00D0 beq .L7
34 0004 7047 bx lr
35 .L7:
36 .loc 1 103 1 discriminator 1 view .LVU2
37 0006 08B5 push {r3, lr}
38 .LCFI0:
39 .cfi_def_cfa_offset 8
40 .cfi_offset 3, -8
41 .cfi_offset 14, -4
42 .loc 1 103 1 discriminator 1 view .LVU3
43 0008 4FF6FF73 movw r3, #65535
44 000c 9942 cmp r1, r3
45 000e 00D0 beq .L8
46 .LVL1:
47 .L1:
48 .loc 1 103 1 view .LVU4
49 0010 08BD pop {r3, pc}
50 .LVL2:
51 .L8:
14:../libOLED/src/displayDial.cpp **** // this is the number of degrees between top centre of scale and
52 .loc 1 14 16 view .LVU5
53 0012 0248 ldr r0, .L9
54 .LVL3:
14:../libOLED/src/displayDial.cpp **** // this is the number of degrees between top centre of scale and
55 .loc 1 14 16 view .LVU6
56 0014 FFF7FEFF bl _ZN7ap_mathC1Ev
57 .LVL4:
58 .loc 1 103 1 view .LVU7
59 0018 FAE7 b .L1
60 .L10:
61 001a 00BF .align 2
62 .L9:
63 001c 00000000 .word .LANCHOR0
64 .cfi_endproc
65 .LFE25:
67 .section .text._ZN13displayDial_tC2ER9display_thhht,"ax",%progbits
68 .align 1
ARM GAS C:\Users\mike\AppData\Local\Temp\ccAQnebG.s page 4
69 .global _ZN13displayDial_tC2ER9display_thhht
70 .syntax unified
71 .thumb
72 .thumb_func
73 .fpu softvfp
75 _ZN13displayDial_tC2ER9display_thhht:
76 .LVL5:
77 .LFB20:
19:../libOLED/src/displayDial.cpp **** {
78 .loc 1 19 1 is_stmt 1 view -0
79 .cfi_startproc
80 @ args = 8, pretend = 0, frame = 0
81 @ frame_needed = 0, uses_anonymous_args = 0
82 @ link register save eliminated.
19:../libOLED/src/displayDial.cpp **** {
83 .loc 1 19 1 is_stmt 0 view .LVU9
84 0000 10B4 push {r4}
85 .LCFI1:
86 .cfi_def_cfa_offset 4
87 .cfi_offset 4, -4
88 .LBB20:
19:../libOLED/src/displayDial.cpp **** {
89 .loc 1 19 160 view .LVU10
90 0002 0160 str r1, [r0]
91 0004 0271 strb r2, [r0, #4]
92 0006 4371 strb r3, [r0, #5]
93 0008 9DF80430 ldrb r3, [sp, #4] @ zero_extendqisi2
94 .LVL6:
19:../libOLED/src/displayDial.cpp **** {
95 .loc 1 19 160 view .LVU11
96 000c 8371 strb r3, [r0, #6]
97 000e BDF80830 ldrh r3, [sp, #8]
98 0012 0381 strh r3, [r0, #8] @ movhi
99 .LBE20:
22:../libOLED/src/displayDial.cpp ****
100 .loc 1 22 1 view .LVU12
101 0014 10BC pop {r4}
102 .LCFI2:
103 .cfi_restore 4
104 .cfi_def_cfa_offset 0
105 .LVL7:
22:../libOLED/src/displayDial.cpp ****
106 .loc 1 22 1 view .LVU13
107 0016 7047 bx lr
108 .cfi_endproc
109 .LFE20:
111 .global _ZN13displayDial_tC1ER9display_thhht
112 .thumb_set _ZN13displayDial_tC1ER9display_thhht,_ZN13displayDial_tC2ER9display_thhht
113 .section .text._ZN13displayDial_t11draw_needleEs,"ax",%progbits
114 .align 1
115 .global _ZN13displayDial_t11draw_needleEs
116 .syntax unified
117 .thumb
118 .thumb_func
119 .fpu softvfp
121 _ZN13displayDial_t11draw_needleEs:
122 .LVL8:
ARM GAS C:\Users\mike\AppData\Local\Temp\ccAQnebG.s page 5
123 .LFB22:
27:../libOLED/src/displayDial.cpp **** int ang = math.SINE_SCALING * ((position - (math.SINE_STEPS/2)) * m_a1) / (math.SINE_STEPS/2);
124 .loc 1 27 1 is_stmt 1 view -0
125 .cfi_startproc
126 @ args = 0, pretend = 0, frame = 8
127 @ frame_needed = 0, uses_anonymous_args = 0
27:../libOLED/src/displayDial.cpp **** int ang = math.SINE_SCALING * ((position - (math.SINE_STEPS/2)) * m_a1) / (math.SINE_STEPS/2);
128 .loc 1 27 1 is_stmt 0 view .LVU15
129 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr}
130 .LCFI3:
131 .cfi_def_cfa_offset 36
132 .cfi_offset 4, -36
133 .cfi_offset 5, -32
134 .cfi_offset 6, -28
135 .cfi_offset 7, -24
136 .cfi_offset 8, -20
137 .cfi_offset 9, -16
138 .cfi_offset 10, -12
139 .cfi_offset 11, -8
140 .cfi_offset 14, -4
141 0004 85B0 sub sp, sp, #20
142 .LCFI4:
143 .cfi_def_cfa_offset 56
144 0006 0746 mov r7, r0
28:../libOLED/src/displayDial.cpp ****
145 .loc 1 28 3 is_stmt 1 view .LVU16
28:../libOLED/src/displayDial.cpp ****
146 .loc 1 28 44 is_stmt 0 view .LVU17
147 0008 B439 subs r1, r1, #180
148 .LVL9:
28:../libOLED/src/displayDial.cpp ****
149 .loc 1 28 69 view .LVU18
150 000a 0489 ldrh r4, [r0, #8]
28:../libOLED/src/displayDial.cpp ****
151 .loc 1 28 67 view .LVU19
152 000c 04FB01F1 mul r1, r4, r1
28:../libOLED/src/displayDial.cpp ****
153 .loc 1 28 7 view .LVU20
154 0010 314C ldr r4, .L17
155 0012 84FB0134 smull r3, r4, r4, r1
156 0016 0C44 add r4, r4, r1
157 0018 C917 asrs r1, r1, #31
158 001a C1EB6414 rsb r4, r1, r4, asr #5
159 .LVL10:
30:../libOLED/src/displayDial.cpp **** int co = math.ap_cos (ang);
160 .loc 1 30 3 is_stmt 1 view .LVU21
30:../libOLED/src/displayDial.cpp **** int co = math.ap_cos (ang);
161 .loc 1 30 24 is_stmt 0 view .LVU22
162 001e 2F4D ldr r5, .L17+4
163 0020 2146 mov r1, r4
164 0022 2846 mov r0, r5
165 .LVL11:
30:../libOLED/src/displayDial.cpp **** int co = math.ap_cos (ang);
166 .loc 1 30 24 view .LVU23
167 0024 FFF7FEFF bl _ZN7ap_math6ap_sinEi
168 .LVL12:
169 0028 8346 mov fp, r0
ARM GAS C:\Users\mike\AppData\Local\Temp\ccAQnebG.s page 6
170 .LVL13:
31:../libOLED/src/displayDial.cpp ****
171 .loc 1 31 3 is_stmt 1 view .LVU24
31:../libOLED/src/displayDial.cpp ****
172 .loc 1 31 24 is_stmt 0 view .LVU25
173 002a 2146 mov r1, r4
174 002c 2846 mov r0, r5
175 .LVL14:
31:../libOLED/src/displayDial.cpp ****
176 .loc 1 31 24 view .LVU26
177 002e FFF7FEFF bl _ZN7ap_math6ap_cosEi
178 .LVL15:
179 0032 8246 mov r10, r0
180 .LVL16:
34:../libOLED/src/displayDial.cpp **** int yl = math.ap_cos (ang - math.SINE_STEPS);
181 .loc 1 34 3 is_stmt 1 view .LVU27
34:../libOLED/src/displayDial.cpp **** int yl = math.ap_cos (ang - math.SINE_STEPS);
182 .loc 1 34 24 is_stmt 0 view .LVU28
183 0034 A4F5B474 sub r4, r4, #360
184 .LVL17:
34:../libOLED/src/displayDial.cpp **** int yl = math.ap_cos (ang - math.SINE_STEPS);
185 .loc 1 34 24 view .LVU29
186 0038 2146 mov r1, r4
187 003a 2846 mov r0, r5
188 .LVL18:
34:../libOLED/src/displayDial.cpp **** int yl = math.ap_cos (ang - math.SINE_STEPS);
189 .loc 1 34 24 view .LVU30
190 003c FFF7FEFF bl _ZN7ap_math6ap_sinEi
191 .LVL19:
192 0040 8046 mov r8, r0
193 0042 0290 str r0, [sp, #8]
194 .LVL20:
35:../libOLED/src/displayDial.cpp ****
195 .loc 1 35 3 is_stmt 1 view .LVU31
35:../libOLED/src/displayDial.cpp ****
196 .loc 1 35 24 is_stmt 0 view .LVU32
197 0044 2146 mov r1, r4
198 0046 2846 mov r0, r5
199 .LVL21:
35:../libOLED/src/displayDial.cpp ****
200 .loc 1 35 24 view .LVU33
201 0048 FFF7FEFF bl _ZN7ap_math6ap_cosEi
202 .LVL22:
203 004c 0390 str r0, [sp, #12]
204 .LVL23:
37:../libOLED/src/displayDial.cpp **** int si3 = 2 * m_siz / 3;
205 .loc 1 37 3 is_stmt 1 view .LVU34
37:../libOLED/src/displayDial.cpp **** int si3 = 2 * m_siz / 3;
206 .loc 1 37 13 is_stmt 0 view .LVU35
207 004e BE79 ldrb r6, [r7, #6] @ zero_extendqisi2
37:../libOLED/src/displayDial.cpp **** int si3 = 2 * m_siz / 3;
208 .loc 1 37 7 view .LVU36
209 0050 06F10209 add r9, r6, #2
210 .LVL24:
38:../libOLED/src/displayDial.cpp ****
211 .loc 1 38 3 is_stmt 1 view .LVU37
38:../libOLED/src/displayDial.cpp ****
ARM GAS C:\Users\mike\AppData\Local\Temp\ccAQnebG.s page 7
212 .loc 1 38 15 is_stmt 0 view .LVU38
213 0054 7600 lsls r6, r6, #1
38:../libOLED/src/displayDial.cpp ****
214 .loc 1 38 7 view .LVU39
215 0056 224B ldr r3, .L17+8
216 0058 83FB0636 smull r3, r6, r3, r6
217 .LVL25:
40:../libOLED/src/displayDial.cpp **** // three parallel lines
218 .loc 1 40 3 is_stmt 1 view .LVU40
42:../libOLED/src/displayDial.cpp **** ys = -yl;
219 .loc 1 42 3 view .LVU41
42:../libOLED/src/displayDial.cpp **** ys = -yl;
220 .loc 1 42 6 is_stmt 0 view .LVU42
221 005c 4346 mov r3, r8
222 005e 5D42 rsbs r5, r3, #0
223 .LVL26:
43:../libOLED/src/displayDial.cpp **** int step;
224 .loc 1 43 3 is_stmt 1 view .LVU43
43:../libOLED/src/displayDial.cpp **** int step;
225 .loc 1 43 6 is_stmt 0 view .LVU44
226 0060 4442 rsbs r4, r0, #0
227 .LVL27:
44:../libOLED/src/displayDial.cpp **** for(step =0; step < 3; step++)
228 .loc 1 44 3 is_stmt 1 view .LVU45
45:../libOLED/src/displayDial.cpp **** {
229 .loc 1 45 3 view .LVU46
45:../libOLED/src/displayDial.cpp **** {
230 .loc 1 45 12 is_stmt 0 view .LVU47
231 0062 4FF00008 mov r8, #0
232 .LVL28:
233 .L15:
45:../libOLED/src/displayDial.cpp **** {
234 .loc 1 45 21 discriminator 3 view .LVU48
235 0066 B8F1020F cmp r8, #2
236 006a 32DC bgt .L13
47:../libOLED/src/displayDial.cpp ****
237 .loc 1 47 5 is_stmt 1 discriminator 2 view .LVU49
47:../libOLED/src/displayDial.cpp ****
238 .loc 1 47 41 is_stmt 0 discriminator 2 view .LVU50
239 006c 09FB0BF1 mul r1, r9, fp
47:../libOLED/src/displayDial.cpp ****
240 .loc 1 47 38 discriminator 2 view .LVU51
241 0070 491B subs r1, r1, r5
242 .LVL29:
243 .LBB21:
244 .LBI21:
245 .file 2 "../libOLED/inc/libOLED/ap_math.H"
1:../libOLED/inc/libOLED/ap_math.H **** /*
2:../libOLED/inc/libOLED/ap_math.H **** * ap_math.h
3:../libOLED/inc/libOLED/ap_math.H **** *
4:../libOLED/inc/libOLED/ap_math.H **** * Created on: 31 Jan 2016
5:../libOLED/inc/libOLED/ap_math.H **** * Author: Mike
6:../libOLED/inc/libOLED/ap_math.H **** */
7:../libOLED/inc/libOLED/ap_math.H ****
8:../libOLED/inc/libOLED/ap_math.H **** #pragma once
9:../libOLED/inc/libOLED/ap_math.H ****
10:../libOLED/inc/libOLED/ap_math.H **** #include <cstdint>
ARM GAS C:\Users\mike\AppData\Local\Temp\ccAQnebG.s page 8
11:../libOLED/inc/libOLED/ap_math.H ****
12:../libOLED/inc/libOLED/ap_math.H ****
13:../libOLED/inc/libOLED/ap_math.H **** class ap_math
14:../libOLED/inc/libOLED/ap_math.H **** {
15:../libOLED/inc/libOLED/ap_math.H **** public:
16:../libOLED/inc/libOLED/ap_math.H **** ap_math ();
17:../libOLED/inc/libOLED/ap_math.H ****
18:../libOLED/inc/libOLED/ap_math.H **** int
19:../libOLED/inc/libOLED/ap_math.H **** ap_sin (int angle);
20:../libOLED/inc/libOLED/ap_math.H ****
21:../libOLED/inc/libOLED/ap_math.H **** int
22:../libOLED/inc/libOLED/ap_math.H **** ap_cos (int angle);
23:../libOLED/inc/libOLED/ap_math.H ****
24:../libOLED/inc/libOLED/ap_math.H **** unsigned const AP_K = 256;
25:../libOLED/inc/libOLED/ap_math.H ****
26:../libOLED/inc/libOLED/ap_math.H **** int AP_SCALE(int x) {return x/AP_K; };
246 .loc 2 26 7 is_stmt 1 discriminator 2 view .LVU52
247 .LBB22:
248 .loc 2 26 24 discriminator 2 view .LVU53
249 .loc 2 26 33 is_stmt 0 discriminator 2 view .LVU54
250 0072 1A4B ldr r3, .L17+4
251 0074 D3F800E0 ldr lr, [r3]
252 .loc 2 26 32 discriminator 2 view .LVU55
253 0078 B1FBFEF1 udiv r1, r1, lr
254 .LVL30:
255 .loc 2 26 32 discriminator 2 view .LVU56
256 .LBE22:
257 .LBE21:
47:../libOLED/src/displayDial.cpp ****
258 .loc 1 47 52 discriminator 2 view .LVU57
259 007c 97F804C0 ldrb ip, [r7, #4] @ zero_extendqisi2
47:../libOLED/src/displayDial.cpp ****
260 .loc 1 47 50 discriminator 2 view .LVU58
261 0080 6144 add r1, r1, ip
47:../libOLED/src/displayDial.cpp ****
262 .loc 1 47 58 discriminator 2 view .LVU59
263 0082 7879 ldrb r0, [r7, #5] @ zero_extendqisi2
47:../libOLED/src/displayDial.cpp ****
264 .loc 1 47 82 discriminator 2 view .LVU60
265 0084 09FB0AF2 mul r2, r9, r10
47:../libOLED/src/displayDial.cpp ****
266 .loc 1 47 78 discriminator 2 view .LVU61
267 0088 121B subs r2, r2, r4
268 .LVL31:
269 .LBB23:
270 .LBI23:
271 .loc 2 26 7 is_stmt 1 discriminator 2 view .LVU62
272 .LBB24:
273 .loc 2 26 24 discriminator 2 view .LVU63
274 .loc 2 26 32 is_stmt 0 discriminator 2 view .LVU64
275 008a B2FBFEF2 udiv r2, r2, lr
276 .LVL32:
277 .loc 2 26 32 discriminator 2 view .LVU65
278 .LBE24:
279 .LBE23:
47:../libOLED/src/displayDial.cpp ****
280 .loc 1 47 63 discriminator 2 view .LVU66
ARM GAS C:\Users\mike\AppData\Local\Temp\ccAQnebG.s page 9
281 008e 821A subs r2, r0, r2
49:../libOLED/src/displayDial.cpp **** xs+=xl;
282 .loc 1 49 21 discriminator 2 view .LVU67
283 0090 06FB0BF3 mul r3, r6, fp
49:../libOLED/src/displayDial.cpp **** xs+=xl;
284 .loc 1 49 18 discriminator 2 view .LVU68
285 0094 5B1B subs r3, r3, r5
286 .LVL33:
287 .LBB25:
288 .LBI25:
289 .loc 2 26 7 is_stmt 1 discriminator 2 view .LVU69
290 .LBB26:
291 .loc 2 26 24 discriminator 2 view .LVU70
292 .loc 2 26 32 is_stmt 0 discriminator 2 view .LVU71
293 0096 B3FBFEF3 udiv r3, r3, lr
294 .LVL34:
295 .loc 2 26 32 discriminator 2 view .LVU72
296 .LBE26:
297 .LBE25:
49:../libOLED/src/displayDial.cpp **** xs+=xl;
298 .loc 1 49 30 discriminator 2 view .LVU73
299 009a 6344 add r3, r3, ip
49:../libOLED/src/displayDial.cpp **** xs+=xl;
300 .loc 1 49 61 discriminator 2 view .LVU74
301 009c 06FB0AFC mul ip, r6, r10
49:../libOLED/src/displayDial.cpp **** xs+=xl;
302 .loc 1 49 57 discriminator 2 view .LVU75
303 00a0 ACEB040C sub ip, ip, r4
304 .LVL35:
305 .LBB27:
306 .LBI27:
307 .loc 2 26 7 is_stmt 1 discriminator 2 view .LVU76
308 .LBB28:
309 .loc 2 26 24 discriminator 2 view .LVU77
310 .loc 2 26 32 is_stmt 0 discriminator 2 view .LVU78
311 00a4 BCFBFEFC udiv ip, ip, lr
312 .LVL36:
313 .loc 2 26 32 discriminator 2 view .LVU79
314 .LBE28:
315 .LBE27:
49:../libOLED/src/displayDial.cpp **** xs+=xl;
316 .loc 1 49 42 discriminator 2 view .LVU80
317 00a8 A0EB0C00 sub r0, r0, ip
47:../libOLED/src/displayDial.cpp ****
318 .loc 1 47 24 discriminator 2 view .LVU81
319 00ac 4FF0030C mov ip, #3
320 00b0 CDF804C0 str ip, [sp, #4]
321 00b4 00B2 sxth r0, r0
322 00b6 0090 str r0, [sp]
323 00b8 1BB2 sxth r3, r3
324 00ba 12B2 sxth r2, r2
325 00bc 09B2 sxth r1, r1
326 00be 3868 ldr r0, [r7]
327 00c0 FFF7FEFF bl _ZN9display_t8drawLineEssss8colour_t
328 .LVL37:
50:../libOLED/src/displayDial.cpp **** ys+=yl;
329 .loc 1 50 5 is_stmt 1 discriminator 2 view .LVU82
ARM GAS C:\Users\mike\AppData\Local\Temp\ccAQnebG.s page 10
50:../libOLED/src/displayDial.cpp **** ys+=yl;
330 .loc 1 50 7 is_stmt 0 discriminator 2 view .LVU83
331 00c4 029B ldr r3, [sp, #8]
332 00c6 1D44 add r5, r5, r3
333 .LVL38:
51:../libOLED/src/displayDial.cpp **** }
334 .loc 1 51 5 is_stmt 1 discriminator 2 view .LVU84
51:../libOLED/src/displayDial.cpp **** }
335 .loc 1 51 7 is_stmt 0 discriminator 2 view .LVU85
336 00c8 039B ldr r3, [sp, #12]
337 00ca 1C44 add r4, r4, r3
338 .LVL39:
45:../libOLED/src/displayDial.cpp **** {
339 .loc 1 45 3 discriminator 2 view .LVU86
340 00cc 08F10108 add r8, r8, #1
341 .LVL40:
45:../libOLED/src/displayDial.cpp **** {
342 .loc 1 45 3 discriminator 2 view .LVU87
343 00d0 C9E7 b .L15
344 .L13:
53:../libOLED/src/displayDial.cpp ****
345 .loc 1 53 2 view .LVU88
346 00d2 05B0 add sp, sp, #20
347 .LCFI5:
348 .cfi_def_cfa_offset 36
349 @ sp needed
350 00d4 BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
351 .LVL41:
352 .L18:
53:../libOLED/src/displayDial.cpp ****
353 .loc 1 53 2 view .LVU89
354 .align 2
355 .L17:
356 00d8 B7600BB6 .word -1240768329
357 00dc 00000000 .word .LANCHOR0
358 00e0 56555555 .word 1431655766
359 .cfi_endproc
360 .LFE22:
362 .section .text._ZN13displayDial_t10draw_scaleEsshhs,"ax",%progbits
363 .align 1
364 .global _ZN13displayDial_t10draw_scaleEsshhs
365 .syntax unified
366 .thumb
367 .thumb_func
368 .fpu softvfp
370 _ZN13displayDial_t10draw_scaleEsshhs:
371 .LVL42:
372 .LFB23:
57:../libOLED/src/displayDial.cpp ****
373 .loc 1 57 1 is_stmt 1 view -0
374 .cfi_startproc
375 @ args = 8, pretend = 0, frame = 8
376 @ frame_needed = 0, uses_anonymous_args = 0
57:../libOLED/src/displayDial.cpp ****
377 .loc 1 57 1 is_stmt 0 view .LVU91
378 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr}
379 .LCFI6:
ARM GAS C:\Users\mike\AppData\Local\Temp\ccAQnebG.s page 11
380 .cfi_def_cfa_offset 36
381 .cfi_offset 4, -36
382 .cfi_offset 5, -32
383 .cfi_offset 6, -28
384 .cfi_offset 7, -24
385 .cfi_offset 8, -20
386 .cfi_offset 9, -16
387 .cfi_offset 10, -12
388 .cfi_offset 11, -8
389 .cfi_offset 14, -4
390 0004 85B0 sub sp, sp, #20
391 .LCFI7:
392 .cfi_def_cfa_offset 56
393 0006 8046 mov r8, r0
394 0008 0393 str r3, [sp, #12]
395 000a BDF93C30 ldrsh r3, [sp, #60]
396 .LVL43:
59:../libOLED/src/displayDial.cpp **** m_low = low;
397 .loc 1 59 3 is_stmt 1 view .LVU92
60:../libOLED/src/displayDial.cpp **** m_high = high;
398 .loc 1 60 3 view .LVU93
60:../libOLED/src/displayDial.cpp **** m_high = high;
399 .loc 1 60 9 is_stmt 0 view .LVU94
400 000e 4181 strh r1, [r0, #10] @ movhi
61:../libOLED/src/displayDial.cpp **** int sc_low = low/scale;
401 .loc 1 61 3 is_stmt 1 view .LVU95
61:../libOLED/src/displayDial.cpp **** int sc_low = low/scale;
402 .loc 1 61 10 is_stmt 0 view .LVU96
403 0010 8281 strh r2, [r0, #12] @ movhi
62:../libOLED/src/displayDial.cpp **** int sc_high = high/scale;
404 .loc 1 62 3 is_stmt 1 view .LVU97
62:../libOLED/src/displayDial.cpp **** int sc_high = high/scale;
405 .loc 1 62 7 is_stmt 0 view .LVU98
406 0012 91FBF3F1 sdiv r1, r1, r3
407 .LVL44:
63:../libOLED/src/displayDial.cpp **** int step = 256 * m_a1 * 2 / (4 * (sc_high - sc_low));
408 .loc 1 63 3 is_stmt 1 view .LVU99
63:../libOLED/src/displayDial.cpp **** int step = 256 * m_a1 * 2 / (4 * (sc_high - sc_low));
409 .loc 1 63 7 is_stmt 0 view .LVU100
410 0016 92FBF3FB sdiv fp, r2, r3
411 .LVL45:
64:../libOLED/src/displayDial.cpp **** int t;
412 .loc 1 64 3 is_stmt 1 view .LVU101
64:../libOLED/src/displayDial.cpp **** int t;
413 .loc 1 64 20 is_stmt 0 view .LVU102
414 001a 0389 ldrh r3, [r0, #8]
64:../libOLED/src/displayDial.cpp **** int t;
415 .loc 1 64 25 view .LVU103
416 001c 5802 lsls r0, r3, #9
417 .LVL46:
64:../libOLED/src/displayDial.cpp **** int t;
418 .loc 1 64 45 view .LVU104
419 001e ABEB0102 sub r2, fp, r1
420 .LVL47:
64:../libOLED/src/displayDial.cpp **** int t;
421 .loc 1 64 34 view .LVU105
422 0022 9200 lsls r2, r2, #2
ARM GAS C:\Users\mike\AppData\Local\Temp\ccAQnebG.s page 12
64:../libOLED/src/displayDial.cpp **** int t;
423 .loc 1 64 7 view .LVU106
424 0024 90FBF2F9 sdiv r9, r0, r2
425 .LVL48:
65:../libOLED/src/displayDial.cpp **** ang = -m_a1 * 256;
426 .loc 1 65 3 is_stmt 1 view .LVU107
66:../libOLED/src/displayDial.cpp **** for (t = sc_low * 4; t <= sc_high * 4; t++)
427 .loc 1 66 3 view .LVU108
66:../libOLED/src/displayDial.cpp **** for (t = sc_low * 4; t <= sc_high * 4; t++)
428 .loc 1 66 7 is_stmt 0 view .LVU109
429 0028 C3EB0363 rsb r3, r3, r3, lsl #24
430 002c 1F02 lsls r7, r3, #8
431 .LVL49:
67:../libOLED/src/displayDial.cpp **** {
432 .loc 1 67 3 is_stmt 1 view .LVU110
433 .LBB29:
67:../libOLED/src/displayDial.cpp **** {
434 .loc 1 67 10 is_stmt 0 view .LVU111
435 002e 8D00 lsls r5, r1, #2
436 .LVL50:
67:../libOLED/src/displayDial.cpp **** {
437 .loc 1 67 10 view .LVU112
438 0030 2FE0 b .L27
439 .LVL51:
440 .L29:
441 .LBB30:
69:../libOLED/src/displayDial.cpp **** int co = math.ap_cos ((ang*math.SINE_SCALING) / 256);
442 .loc 1 69 28 view .LVU113
443 0032 07F13F06 add r6, r7, #63
444 .LVL52:
69:../libOLED/src/displayDial.cpp **** int co = math.ap_cos ((ang*math.SINE_SCALING) / 256);
445 .loc 1 69 28 view .LVU114
446 0036 32E0 b .L21
447 .LVL53:
448 .L26:
75:../libOLED/src/displayDial.cpp **** len = width;
449 .loc 1 75 2 is_stmt 1 view .LVU115
76:../libOLED/src/displayDial.cpp **** break;
450 .loc 1 76 4 view .LVU116
76:../libOLED/src/displayDial.cpp **** break;
451 .loc 1 76 8 is_stmt 0 view .LVU117
452 0038 DDF80CA0 ldr r10, [sp, #12]
453 .LVL54:
77:../libOLED/src/displayDial.cpp **** case 1:
454 .loc 1 77 4 is_stmt 1 view .LVU118
455 .L22:
90:../libOLED/src/displayDial.cpp **** math.AP_SCALE((m_siz-len)*si) + m_xo,
456 .loc 1 90 7 discriminator 2 view .LVU119
90:../libOLED/src/displayDial.cpp **** math.AP_SCALE((m_siz-len)*si) + m_xo,
457 .loc 1 90 42 is_stmt 0 discriminator 2 view .LVU120
458 003c 98F806C0 ldrb ip, [r8, #6] @ zero_extendqisi2
90:../libOLED/src/displayDial.cpp **** math.AP_SCALE((m_siz-len)*si) + m_xo,
459 .loc 1 90 40 discriminator 2 view .LVU121
460 0040 04FB0CF1 mul r1, r4, ip
461 .LVL55:
462 .LBB31:
463 .LBI31:
ARM GAS C:\Users\mike\AppData\Local\Temp\ccAQnebG.s page 13
464 .loc 2 26 7 is_stmt 1 discriminator 2 view .LVU122
465 .LBB32:
466 .loc 2 26 24 discriminator 2 view .LVU123
467 .loc 2 26 33 is_stmt 0 discriminator 2 view .LVU124
468 0044 2E4B ldr r3, .L30
469 0046 1B68 ldr r3, [r3]
470 .loc 2 26 32 discriminator 2 view .LVU125
471 0048 B1FBF3F1 udiv r1, r1, r3
472 .LVL56:
473 .loc 2 26 32 discriminator 2 view .LVU126
474 .LBE32:
475 .LBE31:
90:../libOLED/src/displayDial.cpp **** math.AP_SCALE((m_siz-len)*si) + m_xo,
476 .loc 1 90 55 discriminator 2 view .LVU127
477 004c 98F804E0 ldrb lr, [r8, #4] @ zero_extendqisi2
90:../libOLED/src/displayDial.cpp **** math.AP_SCALE((m_siz-len)*si) + m_xo,
478 .loc 1 90 53 discriminator 2 view .LVU128
479 0050 7144 add r1, r1, lr
90:../libOLED/src/displayDial.cpp **** math.AP_SCALE((m_siz-len)*si) + m_xo,
480 .loc 1 90 61 discriminator 2 view .LVU129
481 0052 98F80560 ldrb r6, [r8, #5] @ zero_extendqisi2
90:../libOLED/src/displayDial.cpp **** math.AP_SCALE((m_siz-len)*si) + m_xo,
482 .loc 1 90 81 discriminator 2 view .LVU130
483 0056 00FB0CF2 mul r2, r0, ip
484 .LVL57:
485 .LBB33:
486 .LBI33:
487 .loc 2 26 7 is_stmt 1 discriminator 2 view .LVU131
488 .LBB34:
489 .loc 2 26 24 discriminator 2 view .LVU132
490 .loc 2 26 32 is_stmt 0 discriminator 2 view .LVU133
491 005a B2FBF3F2 udiv r2, r2, r3
492 .LVL58:
493 .loc 2 26 32 discriminator 2 view .LVU134
494 .LBE34:
495 .LBE33:
90:../libOLED/src/displayDial.cpp **** math.AP_SCALE((m_siz-len)*si) + m_xo,
496 .loc 1 90 66 discriminator 2 view .LVU135
497 005e B21A subs r2, r6, r2
91:../libOLED/src/displayDial.cpp **** m_yo - math.AP_SCALE((m_siz - len) * co), WHITE);
498 .loc 1 91 27 discriminator 2 view .LVU136
499 0060 ACEB0A0C sub ip, ip, r10
91:../libOLED/src/displayDial.cpp **** m_yo - math.AP_SCALE((m_siz - len) * co), WHITE);
500 .loc 1 91 20 discriminator 2 view .LVU137
501 0064 04FB0CF4 mul r4, r4, ip
502 .LVL59:
503 .LBB35:
504 .LBI35:
505 .loc 2 26 7 is_stmt 1 discriminator 2 view .LVU138
506 .LBB36:
507 .loc 2 26 24 discriminator 2 view .LVU139
508 .loc 2 26 32 is_stmt 0 discriminator 2 view .LVU140
509 0068 B4FBF3F4 udiv r4, r4, r3
510 .LVL60:
511 .loc 2 26 32 discriminator 2 view .LVU141
512 .LBE36:
513 .LBE35:
ARM GAS C:\Users\mike\AppData\Local\Temp\ccAQnebG.s page 14
91:../libOLED/src/displayDial.cpp **** m_yo - math.AP_SCALE((m_siz - len) * co), WHITE);
514 .loc 1 91 37 discriminator 2 view .LVU142
515 006c 7444 add r4, r4, lr
92:../libOLED/src/displayDial.cpp **** ang += step;
516 .loc 1 92 23 discriminator 2 view .LVU143
517 006e 00FB0CF0 mul r0, r0, ip
518 .LVL61:
519 .LBB37:
520 .LBI37:
521 .loc 2 26 7 is_stmt 1 discriminator 2 view .LVU144
522 .LBB38:
523 .loc 2 26 24 discriminator 2 view .LVU145
524 .loc 2 26 32 is_stmt 0 discriminator 2 view .LVU146
525 0072 B0FBF3F3 udiv r3, r0, r3
526 .LVL62:
527 .loc 2 26 32 discriminator 2 view .LVU147
528 .LBE38:
529 .LBE37:
92:../libOLED/src/displayDial.cpp **** ang += step;
530 .loc 1 92 8 discriminator 2 view .LVU148
531 0076 F61A subs r6, r6, r3
90:../libOLED/src/displayDial.cpp **** math.AP_SCALE((m_siz-len)*si) + m_xo,
532 .loc 1 90 26 discriminator 2 view .LVU149
533 0078 0123 movs r3, #1
534 007a 0193 str r3, [sp, #4]
535 007c 36B2 sxth r6, r6
536 007e 0096 str r6, [sp]
537 0080 23B2 sxth r3, r4
538 0082 12B2 sxth r2, r2
539 0084 09B2 sxth r1, r1
540 0086 D8F80000 ldr r0, [r8]
541 008a FFF7FEFF bl _ZN9display_t8drawLineEssss8colour_t
542 .LVL63:
93:../libOLED/src/displayDial.cpp **** }
543 .loc 1 93 7 is_stmt 1 discriminator 2 view .LVU150
93:../libOLED/src/displayDial.cpp **** }
544 .loc 1 93 11 is_stmt 0 discriminator 2 view .LVU151
545 008e 4F44 add r7, r7, r9
546 .LVL64:
93:../libOLED/src/displayDial.cpp **** }
547 .loc 1 93 11 discriminator 2 view .LVU152
548 .LBE30:
67:../libOLED/src/displayDial.cpp **** {
549 .loc 1 67 3 discriminator 2 view .LVU153
550 0090 0135 adds r5, r5, #1
551 .LVL65:
552 .L27:
67:../libOLED/src/displayDial.cpp **** {
553 .loc 1 67 26 discriminator 1 view .LVU154
554 0092 B5EB8B0F cmp r5, fp, lsl #2
555 0096 2FDC bgt .L19
556 .LBB39:
69:../libOLED/src/displayDial.cpp **** int co = math.ap_cos ((ang*math.SINE_SCALING) / 256);
557 .loc 1 69 7 is_stmt 1 view .LVU155
69:../libOLED/src/displayDial.cpp **** int co = math.ap_cos ((ang*math.SINE_SCALING) / 256);
558 .loc 1 69 28 is_stmt 0 view .LVU156
559 0098 3E46 mov r6, r7
ARM GAS C:\Users\mike\AppData\Local\Temp\ccAQnebG.s page 15
560 009a 002F cmp r7, #0
561 009c C9DB blt .L29
562 .L21:
69:../libOLED/src/displayDial.cpp **** int co = math.ap_cos ((ang*math.SINE_SCALING) / 256);
563 .loc 1 69 28 view .LVU157
564 009e B611 asrs r6, r6, #6
565 00a0 3146 mov r1, r6
566 00a2 1748 ldr r0, .L30
567 00a4 FFF7FEFF bl _ZN7ap_math6ap_sinEi
568 .LVL66:
569 00a8 0446 mov r4, r0
570 .LVL67:
70:../libOLED/src/displayDial.cpp ****
571 .loc 1 70 7 is_stmt 1 view .LVU158
70:../libOLED/src/displayDial.cpp ****
572 .loc 1 70 28 is_stmt 0 view .LVU159
573 00aa 3146 mov r1, r6
574 00ac 1448 ldr r0, .L30
575 .LVL68:
70:../libOLED/src/displayDial.cpp ****
576 .loc 1 70 28 view .LVU160
577 00ae FFF7FEFF bl _ZN7ap_math6ap_cosEi
578 .LVL69:
72:../libOLED/src/displayDial.cpp **** switch (t % 4)
579 .loc 1 72 7 is_stmt 1 view .LVU161
73:../libOLED/src/displayDial.cpp **** {
580 .loc 1 73 7 view .LVU162
73:../libOLED/src/displayDial.cpp **** {
581 .loc 1 73 17 is_stmt 0 view .LVU163
582 00b2 6A42 rsbs r2, r5, #0
583 00b4 05F00303 and r3, r5, #3
584 00b8 02F00302 and r2, r2, #3
585 00bc 58BF it pl
586 00be 5342 rsbpl r3, r2, #0
73:../libOLED/src/displayDial.cpp **** {
587 .loc 1 73 7 view .LVU164
588 00c0 0333 adds r3, r3, #3
589 00c2 062B cmp r3, #6
590 00c4 BAD8 bhi .L22
591 00c6 01A2 adr r2, .L24
592 00c8 52F823F0 ldr pc, [r2, r3, lsl #2]
593 .p2align 2
594 .L24:
595 00cc E9000000 .word .L23+1
596 00d0 F1000000 .word .L25+1
597 00d4 E9000000 .word .L23+1
598 00d8 39000000 .word .L26+1
599 00dc E9000000 .word .L23+1
600 00e0 F1000000 .word .L25+1
601 00e4 E9000000 .word .L23+1
602 .p2align 1
603 .L23:
78:../libOLED/src/displayDial.cpp **** case 3:
604 .loc 1 78 2 is_stmt 1 view .LVU165
79:../libOLED/src/displayDial.cpp **** case -1:
605 .loc 1 79 2 view .LVU166
80:../libOLED/src/displayDial.cpp **** case -3:
ARM GAS C:\Users\mike\AppData\Local\Temp\ccAQnebG.s page 16
606 .loc 1 80 2 view .LVU167
81:../libOLED/src/displayDial.cpp **** len = width / 4;
607 .loc 1 81 2 view .LVU168
82:../libOLED/src/displayDial.cpp **** break;
608 .loc 1 82 4 view .LVU169
82:../libOLED/src/displayDial.cpp **** break;
609 .loc 1 82 16 is_stmt 0 view .LVU170
610 00e8 039B ldr r3, [sp, #12]
611 00ea 4FEA930A lsr r10, r3, #2
612 .LVL70:
83:../libOLED/src/displayDial.cpp **** case 2:
613 .loc 1 83 4 is_stmt 1 view .LVU171
614 00ee A5E7 b .L22
615 .L25:
84:../libOLED/src/displayDial.cpp **** case -2:
616 .loc 1 84 2 view .LVU172
85:../libOLED/src/displayDial.cpp **** len = width / 2;
617 .loc 1 85 2 view .LVU173
86:../libOLED/src/displayDial.cpp **** break;
618 .loc 1 86 4 view .LVU174
86:../libOLED/src/displayDial.cpp **** break;
619 .loc 1 86 16 is_stmt 0 view .LVU175
620 00f0 039B ldr r3, [sp, #12]
621 00f2 4FEA530A lsr r10, r3, #1
622 .LVL71:
87:../libOLED/src/displayDial.cpp **** }
623 .loc 1 87 4 is_stmt 1 view .LVU176
624 00f6 A1E7 b .L22
625 .LVL72:
626 .L19:
87:../libOLED/src/displayDial.cpp **** }
627 .loc 1 87 4 is_stmt 0 view .LVU177
628 .LBE39:
629 .LBE29:
96:../libOLED/src/displayDial.cpp ****
630 .loc 1 96 1 view .LVU178
631 00f8 05B0 add sp, sp, #20
632 .LCFI8:
633 .cfi_def_cfa_offset 36
634 @ sp needed
635 00fa BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
636 .LVL73:
637 .L31:
96:../libOLED/src/displayDial.cpp ****
638 .loc 1 96 1 view .LVU179
639 00fe 00BF .align 2
640 .L30:
641 0100 00000000 .word .LANCHOR0
642 .cfi_endproc
643 .LFE23:
645 .section .text._ZN13displayDial_t11draw_limitsEv,"ax",%progbits
646 .align 1
647 .global _ZN13displayDial_t11draw_limitsEv
648 .syntax unified
649 .thumb
650 .thumb_func
651 .fpu softvfp
ARM GAS C:\Users\mike\AppData\Local\Temp\ccAQnebG.s page 17
653 _ZN13displayDial_t11draw_limitsEv:
654 .LVL74:
655 .LFB24:
100:../libOLED/src/displayDial.cpp **** m_display.fontSigDigits (small_font, 0,56,0,10,m_low,WHITE);
656 .loc 1 100 1 is_stmt 1 view -0
657 .cfi_startproc
658 @ args = 0, pretend = 0, frame = 0
659 @ frame_needed = 0, uses_anonymous_args = 0
100:../libOLED/src/displayDial.cpp **** m_display.fontSigDigits (small_font, 0,56,0,10,m_low,WHITE);
660 .loc 1 100 1 is_stmt 0 view .LVU181
661 0000 F0B5 push {r4, r5, r6, r7, lr}
662 .LCFI9:
663 .cfi_def_cfa_offset 20
664 .cfi_offset 4, -20
665 .cfi_offset 5, -16
666 .cfi_offset 6, -12
667 .cfi_offset 7, -8
668 .cfi_offset 14, -4
669 0002 85B0 sub sp, sp, #20
670 .LCFI10:
671 .cfi_def_cfa_offset 40
672 0004 0446 mov r4, r0
101:../libOLED/src/displayDial.cpp **** m_display.fontSigDigits (small_font, 120,56,1,10,m_high,WHITE);
673 .loc 1 101 3 is_stmt 1 view .LVU182
101:../libOLED/src/displayDial.cpp **** m_display.fontSigDigits (small_font, 120,56,1,10,m_high,WHITE);
674 .loc 1 101 50 is_stmt 0 view .LVU183
675 0006 B0F90A30 ldrsh r3, [r0, #10]
101:../libOLED/src/displayDial.cpp **** m_display.fontSigDigits (small_font, 120,56,1,10,m_high,WHITE);
676 .loc 1 101 27 view .LVU184
677 000a 0D4E ldr r6, .L34
678 000c 0125 movs r5, #1
679 000e 0395 str r5, [sp, #12]
680 0010 0293 str r3, [sp, #8]
681 0012 0A27 movs r7, #10
682 0014 0197 str r7, [sp, #4]
683 0016 0022 movs r2, #0
684 0018 0092 str r2, [sp]
685 001a 3823 movs r3, #56
686 001c 3146 mov r1, r6
687 001e 0068 ldr r0, [r0]
688 .LVL75:
101:../libOLED/src/displayDial.cpp **** m_display.fontSigDigits (small_font, 120,56,1,10,m_high,WHITE);
689 .loc 1 101 27 view .LVU185
690 0020 FFF7FEFF bl _ZN9display_t13fontSigDigitsER6font_thhbhi8colour_t
691 .LVL76:
102:../libOLED/src/displayDial.cpp **** }
692 .loc 1 102 3 is_stmt 1 view .LVU186
102:../libOLED/src/displayDial.cpp **** }
693 .loc 1 102 52 is_stmt 0 view .LVU187
694 0024 B4F90C30 ldrsh r3, [r4, #12]
102:../libOLED/src/displayDial.cpp **** }
695 .loc 1 102 27 view .LVU188
696 0028 0395 str r5, [sp, #12]
697 002a 0293 str r3, [sp, #8]
698 002c 0197 str r7, [sp, #4]
699 002e 0095 str r5, [sp]
700 0030 3823 movs r3, #56
ARM GAS C:\Users\mike\AppData\Local\Temp\ccAQnebG.s page 18
701 0032 7822 movs r2, #120
702 0034 3146 mov r1, r6
703 0036 2068 ldr r0, [r4]
704 0038 FFF7FEFF bl _ZN9display_t13fontSigDigitsER6font_thhbhi8colour_t
705 .LVL77:
706 .loc 1 103 1 view .LVU189
707 003c 05B0 add sp, sp, #20
708 .LCFI11:
709 .cfi_def_cfa_offset 20
710 @ sp needed
711 003e F0BD pop {r4, r5, r6, r7, pc}
712 .LVL78:
713 .L35:
714 .loc 1 103 1 view .LVU190
715 .align 2
716 .L34:
717 0040 00000000 .word small_font
718 .cfi_endproc
719 .LFE24:
721 .section .text._GLOBAL__sub_I__ZN13displayDial_tC2ER9display_thhht,"ax",%progbits
722 .align 1
723 .syntax unified
724 .thumb
725 .thumb_func
726 .fpu softvfp
728 _GLOBAL__sub_I__ZN13displayDial_tC2ER9display_thhht:
729 .LFB26:
730 .loc 1 103 1 is_stmt 1 view -0
731 .cfi_startproc
732 @ args = 0, pretend = 0, frame = 0
733 @ frame_needed = 0, uses_anonymous_args = 0
734 0000 08B5 push {r3, lr}
735 .LCFI12:
736 .cfi_def_cfa_offset 8
737 .cfi_offset 3, -8
738 .cfi_offset 14, -4
739 .loc 1 103 1 is_stmt 0 view .LVU192
740 0002 4FF6FF71 movw r1, #65535
741 0006 0120 movs r0, #1
742 0008 FFF7FEFF bl _Z41__static_initialization_and_destruction_0ii
743 .LVL79:
744 000c 08BD pop {r3, pc}
745 .cfi_endproc
746 .LFE26:
748 .section .init_array,"aw",%init_array
749 .align 2
750 0000 00000000 .word _GLOBAL__sub_I__ZN13displayDial_tC2ER9display_thhht(target1)
751 .section .bss._ZL4math,"aw",%nobits
752 .align 2
753 .set .LANCHOR0,. + 0
756 _ZL4math:
757 0000 00000000 .space 364
757 00000000
757 00000000
757 00000000
757 00000000
758 .text
ARM GAS C:\Users\mike\AppData\Local\Temp\ccAQnebG.s page 19
759 .Letext0:
760 .file 3 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
761 .file 4 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
762 .file 5 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
763 .file 6 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
764 .file 7 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
765 .file 8 "../libOLED/inc/libOLED/fontclass.H"
766 .file 9 "../libOLED/inc/libOLED/displayDial.H"
767 .file 10 "../libOLED/inc/libOLED/displayclass.H"
768 .file 11 "<built-in>"
ARM GAS C:\Users\mike\AppData\Local\Temp\ccAQnebG.s page 20
DEFINED SYMBOLS
*ABS*:0000000000000000 displayDial.cpp
C:\Users\mike\AppData\Local\Temp\ccAQnebG.s:16 .text._Z41__static_initialization_and_destruction_0ii:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccAQnebG.s:23 .text._Z41__static_initialization_and_destruction_0ii:0000000000000000 _Z41__static_initialization_and_destruction_0ii
C:\Users\mike\AppData\Local\Temp\ccAQnebG.s:63 .text._Z41__static_initialization_and_destruction_0ii:000000000000001c $d
C:\Users\mike\AppData\Local\Temp\ccAQnebG.s:68 .text._ZN13displayDial_tC2ER9display_thhht:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccAQnebG.s:75 .text._ZN13displayDial_tC2ER9display_thhht:0000000000000000 _ZN13displayDial_tC2ER9display_thhht
C:\Users\mike\AppData\Local\Temp\ccAQnebG.s:75 .text._ZN13displayDial_tC2ER9display_thhht:0000000000000000 _ZN13displayDial_tC1ER9display_thhht
C:\Users\mike\AppData\Local\Temp\ccAQnebG.s:114 .text._ZN13displayDial_t11draw_needleEs:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccAQnebG.s:121 .text._ZN13displayDial_t11draw_needleEs:0000000000000000 _ZN13displayDial_t11draw_needleEs
C:\Users\mike\AppData\Local\Temp\ccAQnebG.s:356 .text._ZN13displayDial_t11draw_needleEs:00000000000000d8 $d
C:\Users\mike\AppData\Local\Temp\ccAQnebG.s:363 .text._ZN13displayDial_t10draw_scaleEsshhs:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccAQnebG.s:370 .text._ZN13displayDial_t10draw_scaleEsshhs:0000000000000000 _ZN13displayDial_t10draw_scaleEsshhs
C:\Users\mike\AppData\Local\Temp\ccAQnebG.s:595 .text._ZN13displayDial_t10draw_scaleEsshhs:00000000000000cc $d
C:\Users\mike\AppData\Local\Temp\ccAQnebG.s:602 .text._ZN13displayDial_t10draw_scaleEsshhs:00000000000000e8 $t
C:\Users\mike\AppData\Local\Temp\ccAQnebG.s:641 .text._ZN13displayDial_t10draw_scaleEsshhs:0000000000000100 $d
C:\Users\mike\AppData\Local\Temp\ccAQnebG.s:646 .text._ZN13displayDial_t11draw_limitsEv:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccAQnebG.s:653 .text._ZN13displayDial_t11draw_limitsEv:0000000000000000 _ZN13displayDial_t11draw_limitsEv
C:\Users\mike\AppData\Local\Temp\ccAQnebG.s:717 .text._ZN13displayDial_t11draw_limitsEv:0000000000000040 $d
C:\Users\mike\AppData\Local\Temp\ccAQnebG.s:722 .text._GLOBAL__sub_I__ZN13displayDial_tC2ER9display_thhht:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccAQnebG.s:728 .text._GLOBAL__sub_I__ZN13displayDial_tC2ER9display_thhht:0000000000000000 _GLOBAL__sub_I__ZN13displayDial_tC2ER9display_thhht
C:\Users\mike\AppData\Local\Temp\ccAQnebG.s:749 .init_array:0000000000000000 $d
C:\Users\mike\AppData\Local\Temp\ccAQnebG.s:752 .bss._ZL4math:0000000000000000 $d
C:\Users\mike\AppData\Local\Temp\ccAQnebG.s:756 .bss._ZL4math:0000000000000000 _ZL4math
UNDEFINED SYMBOLS
_ZN7ap_mathC1Ev
_ZN7ap_math6ap_sinEi
_ZN7ap_math6ap_cosEi
_ZN9display_t8drawLineEssss8colour_t
_ZN9display_t13fontSigDigitsER6font_thhbhi8colour_t
small_font