代码拉取完成,页面将自动刷新
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 1
1 .cpu cortex-m4
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 "kservice.c"
12 .text
13 .Ltext0:
14 .cfi_sections .debug_frame
15 .section .text.print_number,"ax",%progbits
16 .align 1
17 .arch armv7e-m
18 .syntax unified
19 .thumb
20 .thumb_func
21 .fpu softvfp
23 print_number:
24 .LVL0:
25 .LFB33:
26 .file 1 "Middlewares/Third_Party/RealThread_RTOS/src/kservice.c"
1:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /*
2:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * Copyright (c) 2006-2021, RT-Thread Development Team
3:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
4:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * SPDX-License-Identifier: Apache-2.0
5:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
6:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * Change Logs:
7:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * Date Author Notes
8:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * 2006-03-16 Bernard the first version
9:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * 2006-05-25 Bernard rewrite vsprintf
10:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * 2006-08-10 Bernard add rt_show_version
11:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * 2010-03-17 Bernard remove rt_strlcpy function
12:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * fix gcc compiling issue.
13:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * 2010-04-15 Bernard remove weak definition on ICCM16C compiler
14:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * 2012-07-18 Arda add the alignment display for signed integer
15:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * 2012-11-23 Bernard fix IAR compiler error.
16:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * 2012-12-22 Bernard fix rt_kprintf issue, which found by Grissiom.
17:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * 2013-06-24 Bernard remove rt_kprintf if RT_USING_CONSOLE is not defined.
18:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * 2013-09-24 aozima make sure the device is in STREAM mode when used by rt_kprintf.
19:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * 2015-07-06 Bernard Add rt_assert_handler routine.
20:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
21:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
22:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #include <rtthread.h>
23:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #include <rthw.h>
24:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
25:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* use precision */
26:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #define RT_PRINTF_PRECISION
27:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
28:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
29:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @addtogroup KernelService
30:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
31:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
32:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**@{*/
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 2
33:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
34:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* global errno in RT-Thread */
35:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** static volatile int __rt_errno;
36:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
37:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #if defined(RT_USING_DEVICE) && defined(RT_USING_CONSOLE)
38:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** static rt_device_t _console_device = RT_NULL;
39:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
40:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
41:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /*
42:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function will get errno
43:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
44:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @return errno
45:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
46:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_err_t rt_get_errno(void)
47:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
48:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_thread_t tid;
49:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
50:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (rt_interrupt_get_nest() != 0)
51:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
52:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* it's in interrupt context */
53:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return __rt_errno;
54:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
55:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
56:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** tid = rt_thread_self();
57:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (tid == RT_NULL)
58:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return __rt_errno;
59:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
60:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return tid->error;
61:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
62:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
63:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /*
64:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function will set errno
65:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
66:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param error the errno shall be set
67:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
68:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** void rt_set_errno(rt_err_t error)
69:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
70:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_thread_t tid;
71:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
72:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (rt_interrupt_get_nest() != 0)
73:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
74:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* it's in interrupt context */
75:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** __rt_errno = error;
76:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
77:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return;
78:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
79:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
80:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** tid = rt_thread_self();
81:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (tid == RT_NULL)
82:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
83:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** __rt_errno = error;
84:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
85:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return;
86:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
87:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
88:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** tid->error = error;
89:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 3
90:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
91:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
92:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function returns errno.
93:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
94:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @return the errno in the system
95:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
96:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int *_rt_errno(void)
97:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
98:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_thread_t tid;
99:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
100:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (rt_interrupt_get_nest() != 0)
101:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return (int *)&__rt_errno;
102:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
103:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** tid = rt_thread_self();
104:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (tid != RT_NULL)
105:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return (int *) & (tid->error);
106:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
107:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return (int *)&__rt_errno;
108:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
109:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
110:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
111:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function will set the content of memory to specified value
112:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
113:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param s the address of source memory
114:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param c the value shall be set in content
115:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param count the copied length
116:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
117:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @return the address of source memory
118:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
119:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** void *rt_memset(void *s, int c, rt_ubase_t count)
120:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
121:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_USING_TINY_SIZE
122:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *xs = (char *)s;
123:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
124:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (count--)
125:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *xs++ = c;
126:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
127:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return s;
128:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #else
129:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #define LBLOCKSIZE (sizeof(long))
130:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #define UNALIGNED(X) ((long)X & (LBLOCKSIZE - 1))
131:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #define TOO_SMALL(LEN) ((LEN) < LBLOCKSIZE)
132:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
133:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** unsigned int i;
134:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *m = (char *)s;
135:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** unsigned long buffer;
136:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** unsigned long *aligned_addr;
137:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** unsigned int d = c & 0xff; /* To avoid sign extension, copy C to an
138:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** unsigned variable. */
139:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
140:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (!TOO_SMALL(count) && !UNALIGNED(s))
141:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
142:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* If we get this far, we know that n is large and m is word-aligned. */
143:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** aligned_addr = (unsigned long *)s;
144:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
145:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* Store D into each char sized location in BUFFER so that
146:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * we can set large blocks quickly.
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 4
147:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
148:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (LBLOCKSIZE == 4)
149:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
150:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** buffer = (d << 8) | d;
151:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** buffer |= (buffer << 16);
152:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
153:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else
154:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
155:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** buffer = 0;
156:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** for (i = 0; i < LBLOCKSIZE; i ++)
157:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** buffer = (buffer << 8) | d;
158:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
159:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
160:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (count >= LBLOCKSIZE * 4)
161:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
162:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *aligned_addr++ = buffer;
163:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *aligned_addr++ = buffer;
164:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *aligned_addr++ = buffer;
165:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *aligned_addr++ = buffer;
166:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** count -= 4 * LBLOCKSIZE;
167:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
168:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
169:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (count >= LBLOCKSIZE)
170:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
171:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *aligned_addr++ = buffer;
172:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** count -= LBLOCKSIZE;
173:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
174:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
175:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* Pick up the remainder with a bytewise loop. */
176:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** m = (char *)aligned_addr;
177:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
178:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
179:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (count--)
180:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
181:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *m++ = (char)d;
182:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
183:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
184:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return s;
185:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
186:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #undef LBLOCKSIZE
187:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #undef UNALIGNED
188:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #undef TOO_SMALL
189:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
190:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
191:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
192:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
193:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function will copy memory content from source address to destination
194:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * address.
195:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
196:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param dst the address of destination memory
197:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param src the address of source memory
198:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param count the copied length
199:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
200:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @return the address of destination memory
201:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
202:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** void *rt_memcpy(void *dst, const void *src, rt_ubase_t count)
203:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 5
204:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_USING_TINY_SIZE
205:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *tmp = (char *)dst, *s = (char *)src;
206:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_ubase_t len;
207:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
208:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (tmp <= s || tmp > (s + count))
209:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
210:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (count--)
211:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *tmp ++ = *s ++;
212:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
213:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else
214:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
215:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** for (len = count; len > 0; len --)
216:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** tmp[len - 1] = s[len - 1];
217:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
218:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
219:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return dst;
220:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #else
221:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
222:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #define UNALIGNED(X, Y) \
223:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1)))
224:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #define BIGBLOCKSIZE (sizeof (long) << 2)
225:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #define LITTLEBLOCKSIZE (sizeof (long))
226:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #define TOO_SMALL(LEN) ((LEN) < BIGBLOCKSIZE)
227:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
228:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *dst_ptr = (char *)dst;
229:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *src_ptr = (char *)src;
230:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** long *aligned_dst;
231:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** long *aligned_src;
232:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int len = count;
233:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
234:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* If the size is small, or either SRC or DST is unaligned,
235:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** then punt into the byte copy loop. This should be rare. */
236:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (!TOO_SMALL(len) && !UNALIGNED(src_ptr, dst_ptr))
237:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
238:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** aligned_dst = (long *)dst_ptr;
239:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** aligned_src = (long *)src_ptr;
240:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
241:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* Copy 4X long words at a time if possible. */
242:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (len >= BIGBLOCKSIZE)
243:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
244:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *aligned_dst++ = *aligned_src++;
245:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *aligned_dst++ = *aligned_src++;
246:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *aligned_dst++ = *aligned_src++;
247:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *aligned_dst++ = *aligned_src++;
248:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** len -= BIGBLOCKSIZE;
249:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
250:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
251:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* Copy one long word at a time if possible. */
252:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (len >= LITTLEBLOCKSIZE)
253:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
254:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *aligned_dst++ = *aligned_src++;
255:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** len -= LITTLEBLOCKSIZE;
256:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
257:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
258:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* Pick up any residual with a byte copier. */
259:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** dst_ptr = (char *)aligned_dst;
260:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** src_ptr = (char *)aligned_src;
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 6
261:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
262:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
263:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (len--)
264:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *dst_ptr++ = *src_ptr++;
265:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
266:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return dst;
267:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #undef UNALIGNED
268:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #undef BIGBLOCKSIZE
269:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #undef LITTLEBLOCKSIZE
270:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #undef TOO_SMALL
271:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
272:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
273:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
274:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
275:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function will move memory content from source address to destination
276:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * address.
277:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
278:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param dest the address of destination memory
279:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param src the address of source memory
280:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param n the copied length
281:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
282:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @return the address of destination memory
283:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
284:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** void *rt_memmove(void *dest, const void *src, rt_ubase_t n)
285:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
286:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *tmp = (char *)dest, *s = (char *)src;
287:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
288:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (s < tmp && tmp < s + n)
289:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
290:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** tmp += n;
291:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** s += n;
292:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
293:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (n--)
294:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *(--tmp) = *(--s);
295:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
296:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else
297:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
298:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (n--)
299:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *tmp++ = *s++;
300:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
301:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
302:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return dest;
303:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
304:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
305:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
306:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function will compare two areas of memory
307:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
308:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param cs one area of memory
309:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param ct another area of memory
310:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param count the size of the area
311:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
312:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @return the result
313:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
314:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_int32_t rt_memcmp(const void *cs, const void *ct, rt_ubase_t count)
315:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
316:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** const unsigned char *su1, *su2;
317:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int res = 0;
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 7
318:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
319:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** for (su1 = (const unsigned char *)cs, su2 = (const unsigned char *)ct; 0 < count; ++su1, ++su2,
320:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if ((res = *su1 - *su2) != 0)
321:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
322:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
323:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return res;
324:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
325:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
326:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
327:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function will return the first occurrence of a string.
328:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
329:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param s1 the source string
330:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param s2 the find string
331:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
332:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @return the first occurrence of a s2 in s1, or RT_NULL if no found.
333:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
334:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *rt_strstr(const char *s1, const char *s2)
335:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
336:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int l1, l2;
337:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
338:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** l2 = rt_strlen(s2);
339:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (!l2)
340:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return (char *)s1;
341:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** l1 = rt_strlen(s1);
342:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (l1 >= l2)
343:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
344:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** l1 --;
345:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (!rt_memcmp(s1, s2, l2))
346:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return (char *)s1;
347:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** s1 ++;
348:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
349:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
350:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return RT_NULL;
351:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
352:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
353:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
354:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function will compare two strings while ignoring differences in case
355:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
356:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param a the string to be compared
357:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param b the string to be compared
358:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
359:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @return the result
360:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
361:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_int32_t rt_strcasecmp(const char *a, const char *b)
362:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
363:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int ca, cb;
364:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
365:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** do
366:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
367:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ca = *a++ & 0xff;
368:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** cb = *b++ & 0xff;
369:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (ca >= 'A' && ca <= 'Z')
370:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ca += 'a' - 'A';
371:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (cb >= 'A' && cb <= 'Z')
372:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** cb += 'a' - 'A';
373:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
374:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (ca == cb && ca != '\0');
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 8
375:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
376:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return ca - cb;
377:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
378:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
379:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
380:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function will copy string no more than n bytes.
381:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
382:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param dst the string to copy
383:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param src the string to be copied
384:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param n the maximum copied length
385:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
386:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @return the result
387:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
388:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *rt_strncpy(char *dst, const char *src, rt_ubase_t n)
389:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
390:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (n != 0)
391:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
392:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *d = dst;
393:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** const char *s = src;
394:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
395:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** do
396:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
397:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if ((*d++ = *s++) == 0)
398:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
399:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* NUL pad the remaining n-1 bytes */
400:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (--n != 0)
401:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *d++ = 0;
402:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
403:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
404:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** } while (--n != 0);
405:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
406:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
407:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return (dst);
408:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
409:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
410:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
411:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function will compare two strings with specified maximum length
412:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
413:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param cs the string to be compared
414:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param ct the string to be compared
415:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param count the maximum compare length
416:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
417:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @return the result
418:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
419:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_int32_t rt_strncmp(const char *cs, const char *ct, rt_ubase_t count)
420:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
421:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** register signed char __res = 0;
422:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
423:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (count)
424:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
425:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if ((__res = *cs - *ct++) != 0 || !*cs++)
426:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
427:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** count --;
428:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
429:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
430:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return __res;
431:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 9
432:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
433:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
434:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function will compare two strings without specified length
435:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
436:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param cs the string to be compared
437:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param ct the string to be compared
438:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
439:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @return the result
440:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
441:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_int32_t rt_strcmp(const char *cs, const char *ct)
442:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
443:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (*cs && *cs == *ct)
444:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
445:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** cs++;
446:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ct++;
447:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
448:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
449:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return (*cs - *ct);
450:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
451:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
452:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
453:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * The strnlen() function returns the number of characters in the
454:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * string pointed to by s, excluding the terminating null byte ('\0'),
455:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * but at most maxlen. In doing this, strnlen() looks only at the
456:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * first maxlen characters in the string pointed to by s and never
457:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * beyond s+maxlen.
458:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
459:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param s the string
460:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param maxlen the max size
461:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @return the length of string
462:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
463:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_size_t rt_strnlen(const char *s, rt_ubase_t maxlen)
464:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
465:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** const char *sc;
466:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
467:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** for (sc = s; *sc != '\0' && (rt_ubase_t)(sc - s) < maxlen; ++sc) /* nothing */
468:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ;
469:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
470:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return sc - s;
471:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
472:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
473:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
474:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function will return the length of a string, which terminate will
475:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * null character.
476:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
477:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param s the string
478:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
479:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @return the length of string
480:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
481:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_size_t rt_strlen(const char *s)
482:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
483:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** const char *sc;
484:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
485:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** for (sc = s; *sc != '\0'; ++sc) /* nothing */
486:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ;
487:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
488:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return sc - s;
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 10
489:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
490:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
491:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_USING_HEAP
492:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
493:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function will duplicate a string.
494:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
495:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param s the string to be duplicated
496:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
497:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @return the duplicated string pointer
498:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
499:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *rt_strdup(const char *s)
500:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
501:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_size_t len = rt_strlen(s) + 1;
502:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *tmp = (char *)rt_malloc(len);
503:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
504:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (!tmp)
505:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return RT_NULL;
506:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
507:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_memcpy(tmp, s, len);
508:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
509:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return tmp;
510:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
511:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
512:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #if defined(__CC_ARM) || defined(__CLANG_ARM)
513:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *strdup(const char *s) __attribute__((alias("rt_strdup")));
514:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
515:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
516:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
517:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
518:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function will show the version of rt-thread rtos
519:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
520:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** void rt_show_version(void)
521:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
522:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_kprintf("\n \\ | /\n");
523:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_kprintf("- RT - Thread Operating System\n");
524:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_kprintf(" / | \\ %d.%d.%d build %s\n",
525:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** RT_VERSION, RT_SUBVERSION, RT_REVISION, __DATE__);
526:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_kprintf(" 2006 - 2020 Copyright by rt-thread team\n");
527:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
528:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
529:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* private function */
530:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #define _ISDIGIT(c) ((unsigned)((c) - '0') < 10)
531:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
532:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_PRINTF_LONGLONG
533:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_inline int divide(long long *n, int base)
534:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
535:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int res;
536:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
537:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* optimized for processor which does not support divide instructions. */
538:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (base == 10)
539:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
540:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** res = (int)(((unsigned long long)*n) % 10U);
541:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *n = (long long)(((unsigned long long)*n) / 10U);
542:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
543:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else
544:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
545:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** res = (int)(((unsigned long long)*n) % 16U);
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 11
546:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *n = (long long)(((unsigned long long)*n) / 16U);
547:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
548:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
549:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return res;
550:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
551:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #else
552:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_inline int divide(long *n, int base)
553:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
554:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int res;
555:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
556:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* optimized for processor which does not support divide instructions. */
557:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (base == 10)
558:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
559:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** res = (int)(((unsigned long)*n) % 10U);
560:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *n = (long)(((unsigned long)*n) / 10U);
561:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
562:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else
563:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
564:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** res = (int)(((unsigned long)*n) % 16U);
565:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *n = (long)(((unsigned long)*n) / 16U);
566:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
567:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
568:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return res;
569:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
570:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
571:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
572:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_inline int skip_atoi(const char **s)
573:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
574:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** register int i = 0;
575:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (_ISDIGIT(**s))
576:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** i = i * 10 + *((*s)++) - '0';
577:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
578:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return i;
579:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
580:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
581:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #define ZEROPAD (1 << 0) /* pad with zero */
582:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #define SIGN (1 << 1) /* unsigned/signed long */
583:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #define PLUS (1 << 2) /* show plus */
584:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #define SPACE (1 << 3) /* space if plus */
585:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #define LEFT (1 << 4) /* left justified */
586:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #define SPECIAL (1 << 5) /* 0x */
587:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #define LARGE (1 << 6) /* use 'ABCDEF' instead of 'abcdef' */
588:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
589:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_PRINTF_PRECISION
590:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** static char *print_number(char *buf,
591:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *end,
592:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_PRINTF_LONGLONG
593:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** long long num,
594:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #else
595:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** long num,
596:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
597:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int base,
598:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int s,
599:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int precision,
600:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int type)
601:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #else
602:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** static char *print_number(char *buf,
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 12
603:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *end,
604:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_PRINTF_LONGLONG
605:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** long long num,
606:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #else
607:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** long num,
608:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
609:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int base,
610:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int s,
611:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int type)
612:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
613:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
27 .loc 1 613 1 view -0
28 .cfi_startproc
29 @ args = 12, pretend = 0, frame = 16
30 @ frame_needed = 0, uses_anonymous_args = 0
31 .loc 1 613 1 is_stmt 0 view .LVU1
32 0000 2DE9F047 push {r4, r5, r6, r7, r8, r9, r10, lr}
33 .LCFI0:
34 .cfi_def_cfa_offset 32
35 .cfi_offset 4, -32
36 .cfi_offset 5, -28
37 .cfi_offset 6, -24
38 .cfi_offset 7, -20
39 .cfi_offset 8, -16
40 .cfi_offset 9, -12
41 .cfi_offset 10, -8
42 .cfi_offset 14, -4
43 0004 84B0 sub sp, sp, #16
44 .LCFI1:
45 .cfi_def_cfa_offset 48
46 0006 9946 mov r9, r3
47 0008 0D9C ldr r4, [sp, #52]
48 000a 0E9D ldr r5, [sp, #56]
614:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char c, sign;
49 .loc 1 614 5 is_stmt 1 view .LVU2
615:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_PRINTF_LONGLONG
616:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char tmp[32];
617:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #else
618:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char tmp[16];
50 .loc 1 618 5 view .LVU3
619:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
620:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int precision_bak = precision;
51 .loc 1 620 5 view .LVU4
52 .LVL1:
621:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** const char *digits;
53 .loc 1 621 5 view .LVU5
622:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** static const char small_digits[] = "0123456789abcdef";
54 .loc 1 622 5 view .LVU6
623:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** static const char large_digits[] = "0123456789ABCDEF";
55 .loc 1 623 5 view .LVU7
624:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** register int i;
56 .loc 1 624 5 view .LVU8
625:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** register int size;
57 .loc 1 625 5 view .LVU9
626:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
627:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** size = s;
58 .loc 1 627 5 view .LVU10
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 13
628:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
629:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** digits = (type & LARGE) ? large_digits : small_digits;
59 .loc 1 629 5 view .LVU11
60 .loc 1 629 44 is_stmt 0 view .LVU12
61 000c 15F0400F tst r5, #64
62 0010 17D0 beq .L34
63 0012 DFF848A1 ldr r10, .L46
64 .L2:
65 .LVL2:
630:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (type & LEFT)
66 .loc 1 630 5 is_stmt 1 discriminator 4 view .LVU13
67 .loc 1 630 8 is_stmt 0 discriminator 4 view .LVU14
68 0016 15F0100F tst r5, #16
69 001a 01D0 beq .L3
631:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** type &= ~ZEROPAD;
70 .loc 1 631 9 is_stmt 1 view .LVU15
71 .loc 1 631 14 is_stmt 0 view .LVU16
72 001c 25F00105 bic r5, r5, #1
73 .LVL3:
74 .L3:
632:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
633:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** c = (type & ZEROPAD) ? '0' : ' ';
75 .loc 1 633 5 is_stmt 1 view .LVU17
76 .loc 1 633 7 is_stmt 0 view .LVU18
77 0020 15F0010F tst r5, #1
78 0024 10D0 beq .L35
79 0026 3026 movs r6, #48
80 .L4:
81 .LVL4:
634:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
635:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* get sign */
636:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** sign = 0;
82 .loc 1 636 5 is_stmt 1 discriminator 4 view .LVU19
637:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (type & SIGN)
83 .loc 1 637 5 discriminator 4 view .LVU20
84 .loc 1 637 8 is_stmt 0 discriminator 4 view .LVU21
85 0028 15F0020F tst r5, #2
86 002c 11D0 beq .L36
638:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
639:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (num < 0)
87 .loc 1 639 9 is_stmt 1 view .LVU22
88 .loc 1 639 12 is_stmt 0 view .LVU23
89 002e 002A cmp r2, #0
90 0030 0CDB blt .L42
640:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
641:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** sign = '-';
642:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** num = -num;
643:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
644:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (type & PLUS)
91 .loc 1 644 14 is_stmt 1 view .LVU24
92 .loc 1 644 17 is_stmt 0 view .LVU25
93 0032 15F0040F tst r5, #4
94 0036 21D1 bne .L37
645:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** sign = '+';
646:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (type & SPACE)
95 .loc 1 646 14 is_stmt 1 view .LVU26
96 .loc 1 646 17 is_stmt 0 view .LVU27
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 14
97 0038 15F0080F tst r5, #8
98 003c 20D1 bne .L38
636:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (type & SIGN)
99 .loc 1 636 10 view .LVU28
100 003e 0027 movs r7, #0
101 0040 08E0 b .L5
102 .LVL5:
103 .L34:
629:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (type & LEFT)
104 .loc 1 629 44 view .LVU29
105 0042 DFF81CA1 ldr r10, .L46+4
106 0046 E6E7 b .L2
107 .LVL6:
108 .L35:
633:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
109 .loc 1 633 7 view .LVU30
110 0048 2026 movs r6, #32
111 004a EDE7 b .L4
112 .LVL7:
113 .L42:
641:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** num = -num;
114 .loc 1 641 13 is_stmt 1 view .LVU31
642:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
115 .loc 1 642 13 view .LVU32
642:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
116 .loc 1 642 19 is_stmt 0 view .LVU33
117 004c 5242 rsbs r2, r2, #0
118 .LVL8:
641:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** num = -num;
119 .loc 1 641 18 view .LVU34
120 004e 2D27 movs r7, #45
121 0050 00E0 b .L5
122 .LVL9:
123 .L36:
636:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (type & SIGN)
124 .loc 1 636 10 view .LVU35
125 0052 0027 movs r7, #0
126 .LVL10:
127 .L5:
647:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** sign = ' ';
648:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
649:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
650:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_PRINTF_SPECIAL
651:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (type & SPECIAL)
652:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
653:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (base == 16)
654:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** size -= 2;
655:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (base == 8)
656:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** size--;
657:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
658:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
659:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
660:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** i = 0;
128 .loc 1 660 5 is_stmt 1 view .LVU36
661:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (num == 0)
129 .loc 1 661 5 view .LVU37
130 .loc 1 661 8 is_stmt 0 view .LVU38
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 15
131 0054 8ABB cbnz r2, .L39
662:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** tmp[i++] = '0';
132 .loc 1 662 9 is_stmt 1 view .LVU39
133 .LVL11:
134 .loc 1 662 18 is_stmt 0 view .LVU40
135 0056 3023 movs r3, #48
136 .LVL12:
137 .loc 1 662 18 view .LVU41
138 0058 8DF80030 strb r3, [sp]
139 .loc 1 662 14 view .LVU42
140 005c 4FF0010C mov ip, #1
141 .LVL13:
142 .L8:
663:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else
664:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
665:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (num != 0)
666:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** tmp[i++] = digits[divide(&num, base)];
667:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
668:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
669:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_PRINTF_PRECISION
670:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (i > precision)
143 .loc 1 670 5 is_stmt 1 view .LVU43
144 .loc 1 670 8 is_stmt 0 view .LVU44
145 0060 A445 cmp ip, r4
146 0062 2DDC bgt .L40
147 0064 2246 mov r2, r4
148 .LVL14:
149 .L12:
671:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** precision = i;
672:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** size -= precision;
150 .loc 1 672 5 is_stmt 1 view .LVU45
151 .loc 1 672 10 is_stmt 0 view .LVU46
152 0066 0C9B ldr r3, [sp, #48]
153 0068 9B1A subs r3, r3, r2
154 .LVL15:
673:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #else
674:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** size -= i;
675:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
676:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
677:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (!(type & (ZEROPAD | LEFT)))
155 .loc 1 677 5 is_stmt 1 view .LVU47
156 .loc 1 677 8 is_stmt 0 view .LVU48
157 006a 15F0110F tst r5, #17
158 006e 37D1 bne .L13
678:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
679:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if ((sign) && (size > 0))
159 .loc 1 679 9 is_stmt 1 view .LVU49
160 .loc 1 679 12 is_stmt 0 view .LVU50
161 0070 17B1 cbz r7, .L14
162 .loc 1 679 20 discriminator 1 view .LVU51
163 0072 002B cmp r3, #0
164 0074 00DD ble .L14
680:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** size--;
165 .loc 1 680 13 is_stmt 1 view .LVU52
166 .loc 1 680 17 is_stmt 0 view .LVU53
167 0076 013B subs r3, r3, #1
168 .LVL16:
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 16
169 .L14:
670:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** precision = i;
170 .loc 1 670 8 view .LVU54
171 0078 9E46 mov lr, r3
172 007a 25E0 b .L16
173 .LVL17:
174 .L37:
645:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (type & SPACE)
175 .loc 1 645 18 view .LVU55
176 007c 2B27 movs r7, #43
177 007e E9E7 b .L5
178 .L38:
647:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
179 .loc 1 647 18 view .LVU56
180 0080 2027 movs r7, #32
181 0082 E7E7 b .L5
182 .LVL18:
183 .L43:
184 .LBB4:
185 .LBB5:
559:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *n = (long)(((unsigned long)*n) / 10U);
186 .loc 1 559 9 is_stmt 1 view .LVU57
559:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *n = (long)(((unsigned long)*n) / 10U);
187 .loc 1 559 41 is_stmt 0 view .LVU58
188 0084 374B ldr r3, .L46+8
189 0086 A3FB023E umull r3, lr, r3, r2
190 008a 4FEADE0E lsr lr, lr, #3
191 008e 0EEB8E08 add r8, lr, lr, lsl #2
192 0092 A2EB4808 sub r8, r2, r8, lsl #1
193 .LVL19:
560:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
194 .loc 1 560 9 is_stmt 1 view .LVU59
560:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
195 .loc 1 560 14 is_stmt 0 view .LVU60
196 0096 7246 mov r2, lr
197 .LVL20:
198 .L10:
568:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
199 .loc 1 568 5 is_stmt 1 view .LVU61
568:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
200 .loc 1 568 5 is_stmt 0 view .LVU62
201 .LBE5:
202 .LBE4:
666:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
203 .loc 1 666 30 view .LVU63
204 0098 1AF808E0 ldrb lr, [r10, r8] @ zero_extendqisi2
666:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
205 .loc 1 666 22 view .LVU64
206 009c 04AB add r3, sp, #16
207 009e 6344 add r3, r3, ip
208 00a0 03F810EC strb lr, [r3, #-16]
666:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
209 .loc 1 666 18 view .LVU65
210 00a4 0CF1010C add ip, ip, #1
211 .LVL21:
212 .L7:
665:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** tmp[i++] = digits[divide(&num, base)];
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 17
213 .loc 1 665 15 is_stmt 1 view .LVU66
214 00a8 002A cmp r2, #0
215 00aa D9D0 beq .L8
666:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
216 .loc 1 666 13 view .LVU67
217 .LVL22:
218 .LBB7:
219 .LBI4:
552:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
220 .loc 1 552 15 view .LVU68
221 .LBB6:
554:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
222 .loc 1 554 5 view .LVU69
557:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
223 .loc 1 557 5 view .LVU70
557:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
224 .loc 1 557 8 is_stmt 0 view .LVU71
225 00ac B9F10A0F cmp r9, #10
226 00b0 E8D0 beq .L43
564:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *n = (long)(((unsigned long)*n) / 16U);
227 .loc 1 564 9 is_stmt 1 view .LVU72
564:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *n = (long)(((unsigned long)*n) / 16U);
228 .loc 1 564 13 is_stmt 0 view .LVU73
229 00b2 02F00F08 and r8, r2, #15
230 .LVL23:
565:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
231 .loc 1 565 9 is_stmt 1 view .LVU74
565:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
232 .loc 1 565 41 is_stmt 0 view .LVU75
233 00b6 1209 lsrs r2, r2, #4
234 .LVL24:
565:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
235 .loc 1 565 41 view .LVU76
236 00b8 EEE7 b .L10
237 .LVL25:
238 .L39:
565:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
239 .loc 1 565 41 view .LVU77
240 .LBE6:
241 .LBE7:
660:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (num == 0)
242 .loc 1 660 7 view .LVU78
243 00ba 4FF0000C mov ip, #0
244 00be F3E7 b .L7
245 .LVL26:
246 .L40:
671:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** size -= precision;
247 .loc 1 671 19 view .LVU79
248 00c0 6246 mov r2, ip
249 .LVL27:
671:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** size -= precision;
250 .loc 1 671 19 view .LVU80
251 00c2 D0E7 b .L12
252 .LVL28:
253 .L15:
681:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
682:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (size-- > 0)
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 18
683:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
684:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (buf < end)
685:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *buf = ' ';
686:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ buf;
254 .loc 1 686 13 is_stmt 1 view .LVU81
255 00c4 0130 adds r0, r0, #1
256 .LVL29:
682:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
257 .loc 1 682 20 is_stmt 0 view .LVU82
258 00c6 9E46 mov lr, r3
259 .L16:
682:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
260 .loc 1 682 15 is_stmt 1 view .LVU83
682:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
261 .loc 1 682 20 is_stmt 0 view .LVU84
262 00c8 0EF1FF33 add r3, lr, #-1
263 .LVL30:
682:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
264 .loc 1 682 15 view .LVU85
265 00cc BEF1000F cmp lr, #0
266 00d0 06DD ble .L13
684:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *buf = ' ';
267 .loc 1 684 13 is_stmt 1 view .LVU86
684:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *buf = ' ';
268 .loc 1 684 16 is_stmt 0 view .LVU87
269 00d2 8842 cmp r0, r1
270 00d4 F6D2 bcs .L15
685:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ buf;
271 .loc 1 685 17 is_stmt 1 view .LVU88
685:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ buf;
272 .loc 1 685 22 is_stmt 0 view .LVU89
273 00d6 4FF0200E mov lr, #32
274 00da 80F800E0 strb lr, [r0]
275 00de F1E7 b .L15
276 .L13:
687:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
688:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
689:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
690:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (sign)
277 .loc 1 690 5 is_stmt 1 view .LVU90
278 .loc 1 690 8 is_stmt 0 view .LVU91
279 00e0 27B1 cbz r7, .L18
691:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
692:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (buf < end)
280 .loc 1 692 9 is_stmt 1 view .LVU92
281 .loc 1 692 12 is_stmt 0 view .LVU93
282 00e2 8842 cmp r0, r1
283 00e4 00D2 bcs .L19
693:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
694:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *buf = sign;
284 .loc 1 694 13 is_stmt 1 view .LVU94
285 .loc 1 694 18 is_stmt 0 view .LVU95
286 00e6 0770 strb r7, [r0]
287 .L19:
695:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
696:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** -- size;
288 .loc 1 696 9 is_stmt 1 view .LVU96
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 19
289 00e8 013B subs r3, r3, #1
290 .LVL31:
697:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ buf;
291 .loc 1 697 9 view .LVU97
292 00ea 0130 adds r0, r0, #1
293 .LVL32:
294 .L18:
698:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
699:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
700:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_PRINTF_SPECIAL
701:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (type & SPECIAL)
702:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
703:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (base == 8)
704:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
705:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (buf < end)
706:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *buf = '0';
707:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ buf;
708:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
709:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (base == 16)
710:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
711:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (buf < end)
712:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *buf = '0';
713:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ buf;
714:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (buf < end)
715:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
716:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *buf = type & LARGE ? 'X' : 'x';
717:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
718:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ buf;
719:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
720:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
721:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
722:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
723:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* no align to the left */
724:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (!(type & LEFT))
295 .loc 1 724 5 view .LVU98
296 .loc 1 724 8 is_stmt 0 view .LVU99
297 00ec 15F0100F tst r5, #16
298 00f0 02D0 beq .L20
299 .loc 1 724 8 view .LVU100
300 00f2 0CE0 b .L25
301 .LVL33:
302 .L22:
725:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
726:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (size-- > 0)
727:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
728:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (buf < end)
729:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *buf = c;
730:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ buf;
303 .loc 1 730 13 is_stmt 1 view .LVU101
304 00f4 0130 adds r0, r0, #1
305 .LVL34:
726:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
306 .loc 1 726 20 is_stmt 0 view .LVU102
307 00f6 2B46 mov r3, r5
308 .LVL35:
309 .L20:
726:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 20
310 .loc 1 726 15 is_stmt 1 view .LVU103
726:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
311 .loc 1 726 20 is_stmt 0 view .LVU104
312 00f8 5D1E subs r5, r3, #1
313 .LVL36:
726:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
314 .loc 1 726 15 view .LVU105
315 00fa 002B cmp r3, #0
316 00fc 03DD ble .L44
728:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *buf = c;
317 .loc 1 728 13 is_stmt 1 view .LVU106
728:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *buf = c;
318 .loc 1 728 16 is_stmt 0 view .LVU107
319 00fe 8842 cmp r0, r1
320 0100 F8D2 bcs .L22
729:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ buf;
321 .loc 1 729 17 is_stmt 1 view .LVU108
729:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ buf;
322 .loc 1 729 22 is_stmt 0 view .LVU109
323 0102 0670 strb r6, [r0]
324 0104 F6E7 b .L22
325 .L44:
726:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
326 .loc 1 726 20 view .LVU110
327 0106 2B46 mov r3, r5
328 0108 01E0 b .L25
329 .LVL37:
330 .L24:
731:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
732:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
733:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
734:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_PRINTF_PRECISION
735:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (i < precision--)
736:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
737:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (buf < end)
738:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *buf = '0';
739:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ buf;
331 .loc 1 739 9 is_stmt 1 view .LVU111
332 010a 0130 adds r0, r0, #1
333 .LVL38:
735:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
334 .loc 1 735 25 is_stmt 0 view .LVU112
335 010c 7246 mov r2, lr
336 .LVL39:
337 .L25:
735:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
338 .loc 1 735 11 is_stmt 1 view .LVU113
735:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
339 .loc 1 735 25 is_stmt 0 view .LVU114
340 010e 02F1FF3E add lr, r2, #-1
341 .LVL40:
735:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
342 .loc 1 735 11 view .LVU115
343 0112 6245 cmp r2, ip
344 0114 06DD ble .L27
737:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *buf = '0';
345 .loc 1 737 9 is_stmt 1 view .LVU116
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 21
737:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *buf = '0';
346 .loc 1 737 12 is_stmt 0 view .LVU117
347 0116 8842 cmp r0, r1
348 0118 F7D2 bcs .L24
738:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ buf;
349 .loc 1 738 13 is_stmt 1 view .LVU118
738:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ buf;
350 .loc 1 738 18 is_stmt 0 view .LVU119
351 011a 3022 movs r2, #48
352 011c 0270 strb r2, [r0]
353 011e F4E7 b .L24
354 .LVL41:
355 .L28:
740:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
741:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
742:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
743:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* put number in the temporary buffer */
744:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (i-- > 0 && (precision_bak != 0))
745:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
746:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (buf < end)
747:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *buf = tmp[i];
748:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ buf;
356 .loc 1 748 9 is_stmt 1 view .LVU120
357 0120 0130 adds r0, r0, #1
358 .LVL42:
744:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
359 .loc 1 744 13 is_stmt 0 view .LVU121
360 0122 9446 mov ip, r2
361 .LVL43:
362 .L27:
744:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
363 .loc 1 744 11 is_stmt 1 view .LVU122
744:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
364 .loc 1 744 13 is_stmt 0 view .LVU123
365 0124 0CF1FF32 add r2, ip, #-1
366 .LVL44:
744:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
367 .loc 1 744 11 view .LVU124
368 0128 BCF1000F cmp ip, #0
369 012c 0ADD ble .L32
744:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
370 .loc 1 744 20 discriminator 1 view .LVU125
371 012e 4CB1 cbz r4, .L32
746:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *buf = tmp[i];
372 .loc 1 746 9 is_stmt 1 view .LVU126
746:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *buf = tmp[i];
373 .loc 1 746 12 is_stmt 0 view .LVU127
374 0130 8842 cmp r0, r1
375 0132 F5D2 bcs .L28
747:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ buf;
376 .loc 1 747 13 is_stmt 1 view .LVU128
747:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ buf;
377 .loc 1 747 23 is_stmt 0 view .LVU129
378 0134 04AD add r5, sp, #16
379 0136 1544 add r5, r5, r2
380 0138 15F8105C ldrb r5, [r5, #-16] @ zero_extendqisi2
747:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ buf;
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 22
381 .loc 1 747 18 view .LVU130
382 013c 0570 strb r5, [r0]
383 013e EFE7 b .L28
384 .LVL45:
385 .L31:
749:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
750:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
751:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (size-- > 0)
752:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
753:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (buf < end)
754:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *buf = ' ';
755:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ buf;
386 .loc 1 755 9 is_stmt 1 view .LVU131
387 0140 0130 adds r0, r0, #1
388 .LVL46:
751:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
389 .loc 1 751 16 is_stmt 0 view .LVU132
390 0142 1346 mov r3, r2
391 .LVL47:
392 .L32:
751:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
393 .loc 1 751 11 is_stmt 1 view .LVU133
751:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
394 .loc 1 751 16 is_stmt 0 view .LVU134
395 0144 5A1E subs r2, r3, #1
396 .LVL48:
751:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
397 .loc 1 751 11 view .LVU135
398 0146 002B cmp r3, #0
399 0148 04DD ble .L45
753:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *buf = ' ';
400 .loc 1 753 9 is_stmt 1 view .LVU136
753:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *buf = ' ';
401 .loc 1 753 12 is_stmt 0 view .LVU137
402 014a 8842 cmp r0, r1
403 014c F8D2 bcs .L31
754:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ buf;
404 .loc 1 754 13 is_stmt 1 view .LVU138
754:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ buf;
405 .loc 1 754 18 is_stmt 0 view .LVU139
406 014e 2023 movs r3, #32
407 0150 0370 strb r3, [r0]
408 0152 F5E7 b .L31
409 .L45:
756:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
757:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
758:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return buf;
410 .loc 1 758 5 is_stmt 1 view .LVU140
759:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
411 .loc 1 759 1 is_stmt 0 view .LVU141
412 0154 04B0 add sp, sp, #16
413 .LCFI2:
414 .cfi_def_cfa_offset 32
415 @ sp needed
416 0156 BDE8F087 pop {r4, r5, r6, r7, r8, r9, r10, pc}
417 .LVL49:
418 .L47:
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 23
419 .loc 1 759 1 view .LVU142
420 015a 00BF .align 2
421 .L46:
422 015c 00000000 .word .LANCHOR1
423 0160 00000000 .word .LANCHOR0
424 0164 CDCCCCCC .word -858993459
425 .cfi_endproc
426 .LFE33:
428 .section .text.rt_get_errno,"ax",%progbits
429 .align 1
430 .global rt_get_errno
431 .syntax unified
432 .thumb
433 .thumb_func
434 .fpu softvfp
436 rt_get_errno:
437 .LFB15:
47:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_thread_t tid;
438 .loc 1 47 1 is_stmt 1 view -0
439 .cfi_startproc
440 @ args = 0, pretend = 0, frame = 0
441 @ frame_needed = 0, uses_anonymous_args = 0
442 0000 08B5 push {r3, lr}
443 .LCFI3:
444 .cfi_def_cfa_offset 8
445 .cfi_offset 3, -8
446 .cfi_offset 14, -4
48:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
447 .loc 1 48 5 view .LVU144
50:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
448 .loc 1 50 5 view .LVU145
50:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
449 .loc 1 50 9 is_stmt 0 view .LVU146
450 0002 FFF7FEFF bl rt_interrupt_get_nest
451 .LVL50:
50:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
452 .loc 1 50 8 view .LVU147
453 0006 10B1 cbz r0, .L49
53:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
454 .loc 1 53 9 is_stmt 1 view .LVU148
53:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
455 .loc 1 53 16 is_stmt 0 view .LVU149
456 0008 054B ldr r3, .L54
457 000a 1868 ldr r0, [r3]
458 .L48:
61:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
459 .loc 1 61 1 view .LVU150
460 000c 08BD pop {r3, pc}
461 .L49:
56:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (tid == RT_NULL)
462 .loc 1 56 5 is_stmt 1 view .LVU151
56:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (tid == RT_NULL)
463 .loc 1 56 11 is_stmt 0 view .LVU152
464 000e FFF7FEFF bl rt_thread_self
465 .LVL51:
57:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return __rt_errno;
466 .loc 1 57 5 is_stmt 1 view .LVU153
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 24
57:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return __rt_errno;
467 .loc 1 57 8 is_stmt 0 view .LVU154
468 0012 08B1 cbz r0, .L53
60:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
469 .loc 1 60 5 is_stmt 1 view .LVU155
60:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
470 .loc 1 60 15 is_stmt 0 view .LVU156
471 0014 806B ldr r0, [r0, #56]
472 .LVL52:
60:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
473 .loc 1 60 15 view .LVU157
474 0016 F9E7 b .L48
475 .LVL53:
476 .L53:
58:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
477 .loc 1 58 9 is_stmt 1 view .LVU158
58:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
478 .loc 1 58 16 is_stmt 0 view .LVU159
479 0018 014B ldr r3, .L54
480 001a 1868 ldr r0, [r3]
481 .LVL54:
58:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
482 .loc 1 58 16 view .LVU160
483 001c F6E7 b .L48
484 .L55:
485 001e 00BF .align 2
486 .L54:
487 0020 00000000 .word .LANCHOR2
488 .cfi_endproc
489 .LFE15:
491 .section .text.rt_set_errno,"ax",%progbits
492 .align 1
493 .global rt_set_errno
494 .syntax unified
495 .thumb
496 .thumb_func
497 .fpu softvfp
499 rt_set_errno:
500 .LVL55:
501 .LFB16:
69:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_thread_t tid;
502 .loc 1 69 1 is_stmt 1 view -0
503 .cfi_startproc
504 @ args = 0, pretend = 0, frame = 0
505 @ frame_needed = 0, uses_anonymous_args = 0
69:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_thread_t tid;
506 .loc 1 69 1 is_stmt 0 view .LVU162
507 0000 10B5 push {r4, lr}
508 .LCFI4:
509 .cfi_def_cfa_offset 8
510 .cfi_offset 4, -8
511 .cfi_offset 14, -4
512 0002 0446 mov r4, r0
70:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
513 .loc 1 70 5 is_stmt 1 view .LVU163
72:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
514 .loc 1 72 5 view .LVU164
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 25
72:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
515 .loc 1 72 9 is_stmt 0 view .LVU165
516 0004 FFF7FEFF bl rt_interrupt_get_nest
517 .LVL56:
72:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
518 .loc 1 72 8 view .LVU166
519 0008 10B1 cbz r0, .L57
75:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
520 .loc 1 75 9 is_stmt 1 view .LVU167
75:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
521 .loc 1 75 20 is_stmt 0 view .LVU168
522 000a 054B ldr r3, .L62
523 000c 1C60 str r4, [r3]
77:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
524 .loc 1 77 9 is_stmt 1 view .LVU169
525 .L56:
89:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
526 .loc 1 89 1 is_stmt 0 view .LVU170
527 000e 10BD pop {r4, pc}
528 .LVL57:
529 .L57:
80:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (tid == RT_NULL)
530 .loc 1 80 5 is_stmt 1 view .LVU171
80:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (tid == RT_NULL)
531 .loc 1 80 11 is_stmt 0 view .LVU172
532 0010 FFF7FEFF bl rt_thread_self
533 .LVL58:
81:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
534 .loc 1 81 5 is_stmt 1 view .LVU173
81:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
535 .loc 1 81 8 is_stmt 0 view .LVU174
536 0014 08B1 cbz r0, .L61
88:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
537 .loc 1 88 5 is_stmt 1 view .LVU175
88:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
538 .loc 1 88 16 is_stmt 0 view .LVU176
539 0016 8463 str r4, [r0, #56]
540 0018 F9E7 b .L56
541 .L61:
83:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
542 .loc 1 83 9 is_stmt 1 view .LVU177
83:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
543 .loc 1 83 20 is_stmt 0 view .LVU178
544 001a 014B ldr r3, .L62
545 001c 1C60 str r4, [r3]
85:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
546 .loc 1 85 9 is_stmt 1 view .LVU179
547 001e F6E7 b .L56
548 .L63:
549 .align 2
550 .L62:
551 0020 00000000 .word .LANCHOR2
552 .cfi_endproc
553 .LFE16:
555 .section .text._rt_errno,"ax",%progbits
556 .align 1
557 .global _rt_errno
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 26
558 .syntax unified
559 .thumb
560 .thumb_func
561 .fpu softvfp
563 _rt_errno:
564 .LFB17:
97:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_thread_t tid;
565 .loc 1 97 1 view -0
566 .cfi_startproc
567 @ args = 0, pretend = 0, frame = 0
568 @ frame_needed = 0, uses_anonymous_args = 0
569 0000 08B5 push {r3, lr}
570 .LCFI5:
571 .cfi_def_cfa_offset 8
572 .cfi_offset 3, -8
573 .cfi_offset 14, -4
98:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
574 .loc 1 98 5 view .LVU181
100:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return (int *)&__rt_errno;
575 .loc 1 100 5 view .LVU182
100:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return (int *)&__rt_errno;
576 .loc 1 100 9 is_stmt 0 view .LVU183
577 0002 FFF7FEFF bl rt_interrupt_get_nest
578 .LVL59:
100:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return (int *)&__rt_errno;
579 .loc 1 100 8 view .LVU184
580 0006 08B1 cbz r0, .L69
101:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
581 .loc 1 101 16 view .LVU185
582 0008 0448 ldr r0, .L70
583 .L64:
108:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
584 .loc 1 108 1 view .LVU186
585 000a 08BD pop {r3, pc}
586 .L69:
103:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (tid != RT_NULL)
587 .loc 1 103 5 is_stmt 1 view .LVU187
103:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (tid != RT_NULL)
588 .loc 1 103 11 is_stmt 0 view .LVU188
589 000c FFF7FEFF bl rt_thread_self
590 .LVL60:
104:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return (int *) & (tid->error);
591 .loc 1 104 5 is_stmt 1 view .LVU189
104:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return (int *) & (tid->error);
592 .loc 1 104 8 is_stmt 0 view .LVU190
593 0010 08B1 cbz r0, .L67
105:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
594 .loc 1 105 9 is_stmt 1 view .LVU191
105:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
595 .loc 1 105 16 is_stmt 0 view .LVU192
596 0012 3830 adds r0, r0, #56
597 .LVL61:
105:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
598 .loc 1 105 16 view .LVU193
599 0014 F9E7 b .L64
600 .LVL62:
601 .L67:
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 27
107:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
602 .loc 1 107 12 view .LVU194
603 0016 0148 ldr r0, .L70
604 .LVL63:
107:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
605 .loc 1 107 12 view .LVU195
606 0018 F7E7 b .L64
607 .L71:
608 001a 00BF .align 2
609 .L70:
610 001c 00000000 .word .LANCHOR2
611 .cfi_endproc
612 .LFE17:
614 .section .text.rt_memset,"ax",%progbits
615 .align 1
616 .global rt_memset
617 .syntax unified
618 .thumb
619 .thumb_func
620 .fpu softvfp
622 rt_memset:
623 .LVL64:
624 .LFB18:
120:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_USING_TINY_SIZE
625 .loc 1 120 1 is_stmt 1 view -0
626 .cfi_startproc
627 @ args = 0, pretend = 0, frame = 0
628 @ frame_needed = 0, uses_anonymous_args = 0
629 @ link register save eliminated.
133:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *m = (char *)s;
630 .loc 1 133 5 view .LVU197
134:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** unsigned long buffer;
631 .loc 1 134 5 view .LVU198
135:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** unsigned long *aligned_addr;
632 .loc 1 135 5 view .LVU199
136:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** unsigned int d = c & 0xff; /* To avoid sign extension, copy C to an
633 .loc 1 136 5 view .LVU200
137:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** unsigned variable. */
634 .loc 1 137 5 view .LVU201
140:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
635 .loc 1 140 5 view .LVU202
140:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
636 .loc 1 140 8 is_stmt 0 view .LVU203
637 0000 032A cmp r2, #3
638 0002 22D9 bls .L80
120:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_USING_TINY_SIZE
639 .loc 1 120 1 discriminator 1 view .LVU204
640 0004 10B4 push {r4}
641 .LCFI6:
642 .cfi_def_cfa_offset 4
643 .cfi_offset 4, -4
644 0006 CCB2 uxtb r4, r1
645 .LVL65:
140:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
646 .loc 1 140 27 discriminator 1 view .LVU205
647 0008 10F0030F tst r0, #3
648 000c 1FD1 bne .L81
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 28
143:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
649 .loc 1 143 9 is_stmt 1 view .LVU206
650 .LVL66:
148:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
651 .loc 1 148 9 view .LVU207
150:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** buffer |= (buffer << 16);
652 .loc 1 150 13 view .LVU208
150:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** buffer |= (buffer << 16);
653 .loc 1 150 20 is_stmt 0 view .LVU209
654 000e 44EA0424 orr r4, r4, r4, lsl #8
655 .LVL67:
151:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
656 .loc 1 151 13 is_stmt 1 view .LVU210
151:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
657 .loc 1 151 20 is_stmt 0 view .LVU211
658 0012 44EA0444 orr r4, r4, r4, lsl #16
659 .LVL68:
143:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
660 .loc 1 143 22 view .LVU212
661 0016 0346 mov r3, r0
662 0018 05E0 b .L74
663 .LVL69:
664 .L75:
162:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *aligned_addr++ = buffer;
665 .loc 1 162 13 is_stmt 1 view .LVU213
162:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *aligned_addr++ = buffer;
666 .loc 1 162 29 is_stmt 0 view .LVU214
667 001a 1C60 str r4, [r3]
163:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *aligned_addr++ = buffer;
668 .loc 1 163 13 is_stmt 1 view .LVU215
669 .LVL70:
163:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *aligned_addr++ = buffer;
670 .loc 1 163 29 is_stmt 0 view .LVU216
671 001c 5C60 str r4, [r3, #4]
164:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *aligned_addr++ = buffer;
672 .loc 1 164 13 is_stmt 1 view .LVU217
673 .LVL71:
164:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *aligned_addr++ = buffer;
674 .loc 1 164 29 is_stmt 0 view .LVU218
675 001e 9C60 str r4, [r3, #8]
165:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** count -= 4 * LBLOCKSIZE;
676 .loc 1 165 13 is_stmt 1 view .LVU219
677 .LVL72:
165:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** count -= 4 * LBLOCKSIZE;
678 .loc 1 165 29 is_stmt 0 view .LVU220
679 0020 DC60 str r4, [r3, #12]
166:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
680 .loc 1 166 13 is_stmt 1 view .LVU221
166:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
681 .loc 1 166 19 is_stmt 0 view .LVU222
682 0022 103A subs r2, r2, #16
683 .LVL73:
165:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** count -= 4 * LBLOCKSIZE;
684 .loc 1 165 26 view .LVU223
685 0024 1033 adds r3, r3, #16
686 .LVL74:
687 .L74:
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 29
160:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
688 .loc 1 160 15 is_stmt 1 view .LVU224
689 0026 0F2A cmp r2, #15
690 0028 F7D8 bhi .L75
160:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
691 .loc 1 160 15 is_stmt 0 view .LVU225
692 002a 02E0 b .L76
693 .L77:
171:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** count -= LBLOCKSIZE;
694 .loc 1 171 13 is_stmt 1 view .LVU226
695 .LVL75:
171:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** count -= LBLOCKSIZE;
696 .loc 1 171 29 is_stmt 0 view .LVU227
697 002c 43F8044B str r4, [r3], #4
698 .LVL76:
172:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
699 .loc 1 172 13 is_stmt 1 view .LVU228
172:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
700 .loc 1 172 19 is_stmt 0 view .LVU229
701 0030 043A subs r2, r2, #4
702 .LVL77:
703 .L76:
169:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
704 .loc 1 169 15 is_stmt 1 view .LVU230
705 0032 032A cmp r2, #3
706 0034 FAD8 bhi .L77
169:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
707 .loc 1 169 15 is_stmt 0 view .LVU231
708 0036 02E0 b .L78
709 .LVL78:
710 .L79:
181:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
711 .loc 1 181 9 is_stmt 1 view .LVU232
181:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
712 .loc 1 181 14 is_stmt 0 view .LVU233
713 0038 03F8011B strb r1, [r3], #1
714 .LVL79:
179:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
715 .loc 1 179 17 view .LVU234
716 003c 6246 mov r2, ip
717 .LVL80:
718 .L78:
179:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
719 .loc 1 179 11 is_stmt 1 view .LVU235
179:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
720 .loc 1 179 17 is_stmt 0 view .LVU236
721 003e 02F1FF3C add ip, r2, #-1
722 .LVL81:
179:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
723 .loc 1 179 11 view .LVU237
724 0042 002A cmp r2, #0
725 0044 F8D1 bne .L79
184:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
726 .loc 1 184 5 is_stmt 1 view .LVU238
190:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
727 .loc 1 190 1 is_stmt 0 view .LVU239
728 0046 10BC pop {r4}
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 30
729 .LCFI7:
730 .cfi_restore 4
731 .cfi_def_cfa_offset 0
732 0048 7047 bx lr
733 .LVL82:
734 .L80:
134:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** unsigned long buffer;
735 .loc 1 134 11 view .LVU240
736 004a 0346 mov r3, r0
737 004c 04E0 b .L83
738 .LVL83:
739 .L81:
740 .LCFI8:
741 .cfi_def_cfa_offset 4
742 .cfi_offset 4, -4
134:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** unsigned long buffer;
743 .loc 1 134 11 view .LVU241
744 004e 0346 mov r3, r0
745 0050 F5E7 b .L78
746 .LVL84:
747 .L84:
748 .LCFI9:
749 .cfi_def_cfa_offset 0
750 .cfi_restore 4
181:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
751 .loc 1 181 9 is_stmt 1 view .LVU242
181:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
752 .loc 1 181 14 is_stmt 0 view .LVU243
753 0052 03F8011B strb r1, [r3], #1
754 .LVL85:
179:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
755 .loc 1 179 17 view .LVU244
756 0056 6246 mov r2, ip
757 .LVL86:
758 .L83:
179:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
759 .loc 1 179 11 is_stmt 1 view .LVU245
179:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
760 .loc 1 179 17 is_stmt 0 view .LVU246
761 0058 02F1FF3C add ip, r2, #-1
762 .LVL87:
179:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
763 .loc 1 179 11 view .LVU247
764 005c 002A cmp r2, #0
765 005e F8D1 bne .L84
179:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
766 .loc 1 179 11 view .LVU248
767 0060 7047 bx lr
768 .cfi_endproc
769 .LFE18:
771 .section .text.rt_memcpy,"ax",%progbits
772 .align 1
773 .global rt_memcpy
774 .syntax unified
775 .thumb
776 .thumb_func
777 .fpu softvfp
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 31
779 rt_memcpy:
780 .LVL88:
781 .LFB19:
203:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_USING_TINY_SIZE
782 .loc 1 203 1 is_stmt 1 view -0
783 .cfi_startproc
784 @ args = 0, pretend = 0, frame = 0
785 @ frame_needed = 0, uses_anonymous_args = 0
786 @ link register save eliminated.
228:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *src_ptr = (char *)src;
787 .loc 1 228 5 view .LVU250
229:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** long *aligned_dst;
788 .loc 1 229 5 view .LVU251
230:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** long *aligned_src;
789 .loc 1 230 5 view .LVU252
231:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int len = count;
790 .loc 1 231 5 view .LVU253
232:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
791 .loc 1 232 5 view .LVU254
236:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
792 .loc 1 236 5 view .LVU255
236:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
793 .loc 1 236 8 is_stmt 0 view .LVU256
794 0000 0F2A cmp r2, #15
795 0002 2AD9 bls .L96
236:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
796 .loc 1 236 29 discriminator 1 view .LVU257
797 0004 41EA0003 orr r3, r1, r0
236:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
798 .loc 1 236 25 discriminator 1 view .LVU258
799 0008 13F0030F tst r3, #3
800 000c 0FD0 beq .L97
228:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *src_ptr = (char *)src;
801 .loc 1 228 11 view .LVU259
802 000e 0346 mov r3, r0
803 0010 2AE0 b .L99
804 .LVL89:
805 .L91:
806 .LCFI10:
807 .cfi_def_cfa_offset 4
808 .cfi_offset 4, -4
244:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *aligned_dst++ = *aligned_src++;
809 .loc 1 244 13 is_stmt 1 view .LVU260
244:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *aligned_dst++ = *aligned_src++;
810 .loc 1 244 28 is_stmt 0 view .LVU261
811 0012 0C68 ldr r4, [r1]
812 0014 1C60 str r4, [r3]
245:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *aligned_dst++ = *aligned_src++;
813 .loc 1 245 13 is_stmt 1 view .LVU262
814 .LVL90:
245:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *aligned_dst++ = *aligned_src++;
815 .loc 1 245 28 is_stmt 0 view .LVU263
816 0016 4C68 ldr r4, [r1, #4]
817 0018 5C60 str r4, [r3, #4]
246:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *aligned_dst++ = *aligned_src++;
818 .loc 1 246 13 is_stmt 1 view .LVU264
819 .LVL91:
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 32
246:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *aligned_dst++ = *aligned_src++;
820 .loc 1 246 28 is_stmt 0 view .LVU265
821 001a 8C68 ldr r4, [r1, #8]
822 001c 9C60 str r4, [r3, #8]
247:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** len -= BIGBLOCKSIZE;
823 .loc 1 247 13 is_stmt 1 view .LVU266
824 .LVL92:
247:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** len -= BIGBLOCKSIZE;
825 .loc 1 247 28 is_stmt 0 view .LVU267
826 001e CC68 ldr r4, [r1, #12]
827 0020 DC60 str r4, [r3, #12]
248:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
828 .loc 1 248 13 is_stmt 1 view .LVU268
248:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
829 .loc 1 248 17 is_stmt 0 view .LVU269
830 0022 103A subs r2, r2, #16
831 .LVL93:
247:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** len -= BIGBLOCKSIZE;
832 .loc 1 247 42 view .LVU270
833 0024 1031 adds r1, r1, #16
834 .LVL94:
247:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** len -= BIGBLOCKSIZE;
835 .loc 1 247 25 view .LVU271
836 0026 1033 adds r3, r3, #16
837 .LVL95:
838 .L90:
242:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
839 .loc 1 242 15 is_stmt 1 view .LVU272
840 0028 0F2A cmp r2, #15
841 002a F2D8 bhi .L91
242:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
842 .loc 1 242 15 is_stmt 0 view .LVU273
843 002c 07E0 b .L92
844 .LVL96:
845 .L97:
846 .LCFI11:
847 .cfi_def_cfa_offset 0
848 .cfi_restore 4
203:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_USING_TINY_SIZE
849 .loc 1 203 1 view .LVU274
850 002e 10B4 push {r4}
851 .LCFI12:
852 .cfi_def_cfa_offset 4
853 .cfi_offset 4, -4
238:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** aligned_src = (long *)src_ptr;
854 .loc 1 238 21 view .LVU275
855 0030 0346 mov r3, r0
856 0032 F9E7 b .L90
857 .LVL97:
858 .L93:
254:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** len -= LITTLEBLOCKSIZE;
859 .loc 1 254 13 is_stmt 1 view .LVU276
254:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** len -= LITTLEBLOCKSIZE;
860 .loc 1 254 30 is_stmt 0 view .LVU277
861 0034 51F8044B ldr r4, [r1], #4
862 .LVL98:
254:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** len -= LITTLEBLOCKSIZE;
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 33
863 .loc 1 254 28 view .LVU278
864 0038 43F8044B str r4, [r3], #4
865 .LVL99:
255:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
866 .loc 1 255 13 is_stmt 1 view .LVU279
255:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
867 .loc 1 255 17 is_stmt 0 view .LVU280
868 003c 043A subs r2, r2, #4
869 .LVL100:
870 .L92:
252:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
871 .loc 1 252 15 is_stmt 1 view .LVU281
872 003e 032A cmp r2, #3
873 0040 F8D8 bhi .L93
252:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
874 .loc 1 252 15 is_stmt 0 view .LVU282
875 0042 04E0 b .L94
876 .LVL101:
877 .L95:
264:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
878 .loc 1 264 9 is_stmt 1 view .LVU283
264:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
879 .loc 1 264 22 is_stmt 0 view .LVU284
880 0044 11F8012B ldrb r2, [r1], #1 @ zero_extendqisi2
881 .LVL102:
264:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
882 .loc 1 264 20 view .LVU285
883 0048 03F8012B strb r2, [r3], #1
884 .LVL103:
263:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *dst_ptr++ = *src_ptr++;
885 .loc 1 263 15 view .LVU286
886 004c 6246 mov r2, ip
887 .LVL104:
888 .L94:
263:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *dst_ptr++ = *src_ptr++;
889 .loc 1 263 11 is_stmt 1 view .LVU287
263:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *dst_ptr++ = *src_ptr++;
890 .loc 1 263 15 is_stmt 0 view .LVU288
891 004e 02F1FF3C add ip, r2, #-1
892 .LVL105:
263:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *dst_ptr++ = *src_ptr++;
893 .loc 1 263 11 view .LVU289
894 0052 002A cmp r2, #0
895 0054 F6D1 bne .L95
266:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #undef UNALIGNED
896 .loc 1 266 5 is_stmt 1 view .LVU290
272:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
897 .loc 1 272 1 is_stmt 0 view .LVU291
898 0056 10BC pop {r4}
899 .LCFI13:
900 .cfi_restore 4
901 .cfi_def_cfa_offset 0
902 0058 7047 bx lr
903 .LVL106:
904 .L96:
228:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *src_ptr = (char *)src;
905 .loc 1 228 11 view .LVU292
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 34
906 005a 0346 mov r3, r0
907 005c 04E0 b .L99
908 .LVL107:
909 .L100:
264:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
910 .loc 1 264 9 is_stmt 1 view .LVU293
264:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
911 .loc 1 264 22 is_stmt 0 view .LVU294
912 005e 11F8012B ldrb r2, [r1], #1 @ zero_extendqisi2
913 .LVL108:
264:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
914 .loc 1 264 20 view .LVU295
915 0062 03F8012B strb r2, [r3], #1
916 .LVL109:
263:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *dst_ptr++ = *src_ptr++;
917 .loc 1 263 15 view .LVU296
918 0066 6246 mov r2, ip
919 .LVL110:
920 .L99:
263:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *dst_ptr++ = *src_ptr++;
921 .loc 1 263 11 is_stmt 1 view .LVU297
263:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *dst_ptr++ = *src_ptr++;
922 .loc 1 263 15 is_stmt 0 view .LVU298
923 0068 02F1FF3C add ip, r2, #-1
924 .LVL111:
263:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *dst_ptr++ = *src_ptr++;
925 .loc 1 263 11 view .LVU299
926 006c 002A cmp r2, #0
927 006e F6D1 bne .L100
263:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *dst_ptr++ = *src_ptr++;
928 .loc 1 263 11 view .LVU300
929 0070 7047 bx lr
930 .cfi_endproc
931 .LFE19:
933 .section .text.rt_memmove,"ax",%progbits
934 .align 1
935 .global rt_memmove
936 .syntax unified
937 .thumb
938 .thumb_func
939 .fpu softvfp
941 rt_memmove:
942 .LVL112:
943 .LFB20:
285:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *tmp = (char *)dest, *s = (char *)src;
944 .loc 1 285 1 is_stmt 1 view -0
945 .cfi_startproc
946 @ args = 0, pretend = 0, frame = 0
947 @ frame_needed = 0, uses_anonymous_args = 0
948 @ link register save eliminated.
286:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
949 .loc 1 286 5 view .LVU302
288:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
950 .loc 1 288 5 view .LVU303
288:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
951 .loc 1 288 8 is_stmt 0 view .LVU304
952 0000 8842 cmp r0, r1
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 35
953 0002 18D9 bls .L110
288:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
954 .loc 1 288 28 discriminator 1 view .LVU305
955 0004 8B18 adds r3, r1, r2
288:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
956 .loc 1 288 17 discriminator 1 view .LVU306
957 0006 8342 cmp r3, r0
958 0008 17D9 bls .L111
290:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** s += n;
959 .loc 1 290 9 is_stmt 1 view .LVU307
290:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** s += n;
960 .loc 1 290 13 is_stmt 0 view .LVU308
961 000a 00EB020C add ip, r0, r2
962 .LVL113:
291:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
963 .loc 1 291 9 is_stmt 1 view .LVU309
293:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *(--tmp) = *(--s);
964 .loc 1 293 9 view .LVU310
293:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *(--tmp) = *(--s);
965 .loc 1 293 15 is_stmt 0 view .LVU311
966 000e 04E0 b .L105
967 .LVL114:
968 .L106:
294:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
969 .loc 1 294 13 is_stmt 1 view .LVU312
294:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
970 .loc 1 294 24 is_stmt 0 view .LVU313
971 0010 13F8012D ldrb r2, [r3, #-1]! @ zero_extendqisi2
972 .LVL115:
294:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
973 .loc 1 294 22 view .LVU314
974 0014 0CF8012D strb r2, [ip, #-1]!
975 .LVL116:
293:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *(--tmp) = *(--s);
976 .loc 1 293 17 view .LVU315
977 0018 0A46 mov r2, r1
978 .LVL117:
979 .L105:
293:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *(--tmp) = *(--s);
980 .loc 1 293 15 is_stmt 1 view .LVU316
293:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *(--tmp) = *(--s);
981 .loc 1 293 17 is_stmt 0 view .LVU317
982 001a 511E subs r1, r2, #1
983 .LVL118:
293:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *(--tmp) = *(--s);
984 .loc 1 293 15 view .LVU318
985 001c 002A cmp r2, #0
986 001e F7D1 bne .L106
293:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *(--tmp) = *(--s);
987 .loc 1 293 15 view .LVU319
988 0020 7047 bx lr
989 .LVL119:
990 .L109:
299:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
991 .loc 1 299 13 is_stmt 1 view .LVU320
299:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
992 .loc 1 299 22 is_stmt 0 view .LVU321
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 36
993 0022 11F8012B ldrb r2, [r1], #1 @ zero_extendqisi2
994 .LVL120:
299:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
995 .loc 1 299 20 view .LVU322
996 0026 03F8012B strb r2, [r3], #1
997 .LVL121:
298:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *tmp++ = *s++;
998 .loc 1 298 17 view .LVU323
999 002a 6246 mov r2, ip
1000 .LVL122:
1001 .L108:
298:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *tmp++ = *s++;
1002 .loc 1 298 15 is_stmt 1 view .LVU324
298:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *tmp++ = *s++;
1003 .loc 1 298 17 is_stmt 0 view .LVU325
1004 002c 02F1FF3C add ip, r2, #-1
1005 .LVL123:
298:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *tmp++ = *s++;
1006 .loc 1 298 15 view .LVU326
1007 0030 002A cmp r2, #0
1008 0032 F6D1 bne .L109
302:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1009 .loc 1 302 5 is_stmt 1 view .LVU327
303:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1010 .loc 1 303 1 is_stmt 0 view .LVU328
1011 0034 7047 bx lr
1012 .LVL124:
1013 .L110:
303:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1014 .loc 1 303 1 view .LVU329
1015 0036 0346 mov r3, r0
1016 0038 F8E7 b .L108
1017 .L111:
303:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1018 .loc 1 303 1 view .LVU330
1019 003a 0346 mov r3, r0
1020 003c F6E7 b .L108
1021 .cfi_endproc
1022 .LFE20:
1024 .section .text.rt_memcmp,"ax",%progbits
1025 .align 1
1026 .global rt_memcmp
1027 .syntax unified
1028 .thumb
1029 .thumb_func
1030 .fpu softvfp
1032 rt_memcmp:
1033 .LVL125:
1034 .LFB21:
315:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** const unsigned char *su1, *su2;
1035 .loc 1 315 1 is_stmt 1 view -0
1036 .cfi_startproc
1037 @ args = 0, pretend = 0, frame = 0
1038 @ frame_needed = 0, uses_anonymous_args = 0
1039 @ link register save eliminated.
315:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** const unsigned char *su1, *su2;
1040 .loc 1 315 1 is_stmt 0 view .LVU332
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 37
1041 0000 0346 mov r3, r0
316:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int res = 0;
1042 .loc 1 316 5 is_stmt 1 view .LVU333
317:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1043 .loc 1 317 5 view .LVU334
1044 .LVL126:
319:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if ((res = *su1 - *su2) != 0)
1045 .loc 1 319 5 view .LVU335
317:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1046 .loc 1 317 9 is_stmt 0 view .LVU336
1047 0002 0020 movs r0, #0
1048 .LVL127:
319:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if ((res = *su1 - *su2) != 0)
1049 .loc 1 319 5 view .LVU337
1050 0004 02E0 b .L113
1051 .LVL128:
1052 .L116:
319:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if ((res = *su1 - *su2) != 0)
1053 .loc 1 319 87 is_stmt 1 discriminator 2 view .LVU338
1054 0006 0133 adds r3, r3, #1
1055 .LVL129:
319:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if ((res = *su1 - *su2) != 0)
1056 .loc 1 319 94 is_stmt 0 discriminator 2 view .LVU339
1057 0008 0131 adds r1, r1, #1
1058 .LVL130:
319:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if ((res = *su1 - *su2) != 0)
1059 .loc 1 319 106 discriminator 2 view .LVU340
1060 000a 013A subs r2, r2, #1
1061 .LVL131:
1062 .L113:
319:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if ((res = *su1 - *su2) != 0)
1063 .loc 1 319 76 is_stmt 1 discriminator 1 view .LVU341
319:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if ((res = *su1 - *su2) != 0)
1064 .loc 1 319 5 is_stmt 0 discriminator 1 view .LVU342
1065 000c 2AB1 cbz r2, .L112
320:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
1066 .loc 1 320 9 is_stmt 1 view .LVU343
320:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
1067 .loc 1 320 20 is_stmt 0 view .LVU344
1068 000e 1878 ldrb r0, [r3] @ zero_extendqisi2
1069 .LVL132:
320:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
1070 .loc 1 320 27 view .LVU345
1071 0010 91F800C0 ldrb ip, [r1] @ zero_extendqisi2
1072 .LVL133:
320:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
1073 .loc 1 320 12 view .LVU346
1074 0014 B0EB0C00 subs r0, r0, ip
1075 .LVL134:
320:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
1076 .loc 1 320 12 view .LVU347
1077 0018 F5D0 beq .L116
1078 .LVL135:
1079 .L112:
324:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1080 .loc 1 324 1 view .LVU348
1081 001a 7047 bx lr
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 38
1082 .cfi_endproc
1083 .LFE21:
1085 .section .text.rt_strcasecmp,"ax",%progbits
1086 .align 1
1087 .global rt_strcasecmp
1088 .syntax unified
1089 .thumb
1090 .thumb_func
1091 .fpu softvfp
1093 rt_strcasecmp:
1094 .LFB23:
362:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int ca, cb;
1095 .loc 1 362 1 is_stmt 1 view -0
1096 .cfi_startproc
1097 @ args = 0, pretend = 0, frame = 0
1098 @ frame_needed = 0, uses_anonymous_args = 0
1099 .LVL136:
362:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int ca, cb;
1100 .loc 1 362 1 is_stmt 0 view .LVU350
1101 0000 00B5 push {lr}
1102 .LCFI14:
1103 .cfi_def_cfa_offset 4
1104 .cfi_offset 14, -4
1105 0002 04E0 b .L121
1106 .LVL137:
1107 .L123:
372:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1108 .loc 1 372 13 is_stmt 1 view .LVU351
372:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1109 .loc 1 372 16 is_stmt 0 view .LVU352
1110 0004 02F1200C add ip, r2, #32
1111 .LVL138:
1112 .L119:
374:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1113 .loc 1 374 11 is_stmt 1 view .LVU353
374:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1114 .loc 1 374 5 is_stmt 0 view .LVU354
1115 0008 6345 cmp r3, ip
1116 000a 11D1 bne .L120
374:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1117 .loc 1 374 21 discriminator 1 view .LVU355
1118 000c 83B1 cbz r3, .L120
1119 .LVL139:
1120 .L121:
363:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1121 .loc 1 363 5 is_stmt 1 view .LVU356
365:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1122 .loc 1 365 5 view .LVU357
367:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** cb = *b++ & 0xff;
1123 .loc 1 367 9 view .LVU358
367:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** cb = *b++ & 0xff;
1124 .loc 1 367 14 is_stmt 0 view .LVU359
1125 000e 0378 ldrb r3, [r0] @ zero_extendqisi2
1126 0010 0130 adds r0, r0, #1
1127 .LVL140:
368:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (ca >= 'A' && ca <= 'Z')
1128 .loc 1 368 9 is_stmt 1 view .LVU360
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 39
368:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (ca >= 'A' && ca <= 'Z')
1129 .loc 1 368 14 is_stmt 0 view .LVU361
1130 0012 0A78 ldrb r2, [r1] @ zero_extendqisi2
1131 0014 0131 adds r1, r1, #1
1132 .LVL141:
368:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (ca >= 'A' && ca <= 'Z')
1133 .loc 1 368 12 view .LVU362
1134 0016 9446 mov ip, r2
1135 .LVL142:
369:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ca += 'a' - 'A';
1136 .loc 1 369 9 is_stmt 1 view .LVU363
369:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ca += 'a' - 'A';
1137 .loc 1 369 23 is_stmt 0 view .LVU364
1138 0018 A3F1410E sub lr, r3, #65
369:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ca += 'a' - 'A';
1139 .loc 1 369 12 view .LVU365
1140 001c BEF1190F cmp lr, #25
1141 0020 00D8 bhi .L118
370:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (cb >= 'A' && cb <= 'Z')
1142 .loc 1 370 13 is_stmt 1 view .LVU366
370:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (cb >= 'A' && cb <= 'Z')
1143 .loc 1 370 16 is_stmt 0 view .LVU367
1144 0022 2033 adds r3, r3, #32
1145 .LVL143:
1146 .L118:
371:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** cb += 'a' - 'A';
1147 .loc 1 371 9 is_stmt 1 view .LVU368
371:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** cb += 'a' - 'A';
1148 .loc 1 371 23 is_stmt 0 view .LVU369
1149 0024 A2F1410E sub lr, r2, #65
371:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** cb += 'a' - 'A';
1150 .loc 1 371 12 view .LVU370
1151 0028 BEF1190F cmp lr, #25
1152 002c ECD8 bhi .L119
371:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** cb += 'a' - 'A';
1153 .loc 1 371 12 view .LVU371
1154 002e E9E7 b .L123
1155 .LVL144:
1156 .L120:
376:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1157 .loc 1 376 5 is_stmt 1 view .LVU372
377:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1158 .loc 1 377 1 is_stmt 0 view .LVU373
1159 0030 A3EB0C00 sub r0, r3, ip
1160 .LVL145:
377:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1161 .loc 1 377 1 view .LVU374
1162 0034 5DF804FB ldr pc, [sp], #4
1163 .cfi_endproc
1164 .LFE23:
1166 .section .text.rt_strncpy,"ax",%progbits
1167 .align 1
1168 .global rt_strncpy
1169 .syntax unified
1170 .thumb
1171 .thumb_func
1172 .fpu softvfp
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 40
1174 rt_strncpy:
1175 .LVL146:
1176 .LFB24:
389:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (n != 0)
1177 .loc 1 389 1 is_stmt 1 view -0
1178 .cfi_startproc
1179 @ args = 0, pretend = 0, frame = 0
1180 @ frame_needed = 0, uses_anonymous_args = 0
390:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1181 .loc 1 390 5 view .LVU376
390:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1182 .loc 1 390 8 is_stmt 0 view .LVU377
1183 0000 9AB1 cbz r2, .L132
389:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (n != 0)
1184 .loc 1 389 1 view .LVU378
1185 0002 10B5 push {r4, lr}
1186 .LCFI15:
1187 .cfi_def_cfa_offset 8
1188 .cfi_offset 4, -8
1189 .cfi_offset 14, -4
1190 0004 9446 mov ip, r2
1191 .LBB8:
392:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** const char *s = src;
1192 .loc 1 392 15 view .LVU379
1193 0006 0346 mov r3, r0
1194 .LVL147:
1195 .L129:
395:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1196 .loc 1 395 9 is_stmt 1 view .LVU380
397:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1197 .loc 1 397 13 view .LVU381
1198 0008 8E46 mov lr, r1
397:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1199 .loc 1 397 25 is_stmt 0 view .LVU382
1200 000a 0C78 ldrb r4, [r1] @ zero_extendqisi2
1201 000c 0131 adds r1, r1, #1
1202 .LVL148:
397:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1203 .loc 1 397 23 view .LVU383
1204 000e 1C70 strb r4, [r3]
1205 0010 0133 adds r3, r3, #1
1206 .LVL149:
397:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1207 .loc 1 397 16 view .LVU384
1208 0012 1CB1 cbz r4, .L126
404:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1209 .loc 1 404 17 is_stmt 1 view .LVU385
1210 .LVL150:
404:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1211 .loc 1 404 9 is_stmt 0 view .LVU386
1212 0014 BCF1010C subs ip, ip, #1
1213 .LVL151:
404:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1214 .loc 1 404 9 view .LVU387
1215 0018 F6D1 bne .L129
1216 .LVL152:
1217 .L125:
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 41
404:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1218 .loc 1 404 9 view .LVU388
1219 .LBE8:
407:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1220 .loc 1 407 5 is_stmt 1 view .LVU389
408:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1221 .loc 1 408 1 is_stmt 0 view .LVU390
1222 001a 10BD pop {r4, pc}
1223 .L126:
1224 .LVL153:
1225 .LBB9:
400:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *d++ = 0;
1226 .loc 1 400 23 is_stmt 1 view .LVU391
400:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *d++ = 0;
1227 .loc 1 400 23 is_stmt 0 view .LVU392
1228 001c BCF1010C subs ip, ip, #1
1229 .LVL154:
400:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *d++ = 0;
1230 .loc 1 400 23 view .LVU393
1231 0020 FBD0 beq .L125
401:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
1232 .loc 1 401 21 is_stmt 1 view .LVU394
1233 .LVL155:
401:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
1234 .loc 1 401 26 is_stmt 0 view .LVU395
1235 0022 0022 movs r2, #0
1236 0024 03F8012B strb r2, [r3], #1
1237 .LVL156:
401:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
1238 .loc 1 401 26 view .LVU396
1239 0028 F8E7 b .L126
1240 .LVL157:
1241 .L132:
1242 .LCFI16:
1243 .cfi_def_cfa_offset 0
1244 .cfi_restore 4
1245 .cfi_restore 14
401:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
1246 .loc 1 401 26 view .LVU397
1247 .LBE9:
407:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1248 .loc 1 407 5 is_stmt 1 view .LVU398
408:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1249 .loc 1 408 1 is_stmt 0 view .LVU399
1250 002a 7047 bx lr
1251 .cfi_endproc
1252 .LFE24:
1254 .section .text.rt_strncmp,"ax",%progbits
1255 .align 1
1256 .global rt_strncmp
1257 .syntax unified
1258 .thumb
1259 .thumb_func
1260 .fpu softvfp
1262 rt_strncmp:
1263 .LVL158:
1264 .LFB25:
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 42
420:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** register signed char __res = 0;
1265 .loc 1 420 1 is_stmt 1 view -0
1266 .cfi_startproc
1267 @ args = 0, pretend = 0, frame = 0
1268 @ frame_needed = 0, uses_anonymous_args = 0
1269 @ link register save eliminated.
420:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** register signed char __res = 0;
1270 .loc 1 420 1 is_stmt 0 view .LVU401
1271 0000 0346 mov r3, r0
421:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1272 .loc 1 421 5 is_stmt 1 view .LVU402
1273 .LVL159:
423:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1274 .loc 1 423 5 view .LVU403
421:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1275 .loc 1 421 26 is_stmt 0 view .LVU404
1276 0002 0020 movs r0, #0
1277 .LVL160:
423:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1278 .loc 1 423 11 is_stmt 1 view .LVU405
1279 0004 6AB1 cbz r2, .L143
420:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** register signed char __res = 0;
1280 .loc 1 420 1 is_stmt 0 view .LVU406
1281 0006 10B4 push {r4}
1282 .LCFI17:
1283 .cfi_def_cfa_offset 4
1284 .cfi_offset 4, -4
1285 .L138:
425:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
1286 .loc 1 425 9 is_stmt 1 view .LVU407
425:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
1287 .loc 1 425 22 is_stmt 0 view .LVU408
1288 0008 1C78 ldrb r4, [r3] @ zero_extendqisi2
1289 .LVL161:
425:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
1290 .loc 1 425 28 view .LVU409
1291 000a 11F8010B ldrb r0, [r1], #1 @ zero_extendqisi2
1292 .LVL162:
425:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
1293 .loc 1 425 26 view .LVU410
1294 000e 201A subs r0, r4, r0
425:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
1295 .loc 1 425 20 view .LVU411
1296 0010 40B2 sxtb r0, r0
1297 .LVL163:
425:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
1298 .loc 1 425 12 view .LVU412
1299 0012 20B9 cbnz r0, .L137
425:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
1300 .loc 1 425 47 discriminator 1 view .LVU413
1301 0014 0133 adds r3, r3, #1
1302 .LVL164:
425:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
1303 .loc 1 425 40 discriminator 1 view .LVU414
1304 0016 14B1 cbz r4, .L137
427:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1305 .loc 1 427 9 is_stmt 1 view .LVU415
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 43
427:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1306 .loc 1 427 15 is_stmt 0 view .LVU416
1307 0018 013A subs r2, r2, #1
1308 .LVL165:
423:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1309 .loc 1 423 11 is_stmt 1 view .LVU417
1310 001a 002A cmp r2, #0
1311 001c F4D1 bne .L138
1312 .L137:
430:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1313 .loc 1 430 5 view .LVU418
431:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1314 .loc 1 431 1 is_stmt 0 view .LVU419
1315 001e 10BC pop {r4}
1316 .LCFI18:
1317 .cfi_restore 4
1318 .cfi_def_cfa_offset 0
1319 0020 7047 bx lr
1320 .L143:
431:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1321 .loc 1 431 1 view .LVU420
1322 0022 7047 bx lr
1323 .cfi_endproc
1324 .LFE25:
1326 .section .text.rt_strcmp,"ax",%progbits
1327 .align 1
1328 .global rt_strcmp
1329 .syntax unified
1330 .thumb
1331 .thumb_func
1332 .fpu softvfp
1334 rt_strcmp:
1335 .LVL166:
1336 .LFB26:
442:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (*cs && *cs == *ct)
1337 .loc 1 442 1 is_stmt 1 view -0
1338 .cfi_startproc
1339 @ args = 0, pretend = 0, frame = 0
1340 @ frame_needed = 0, uses_anonymous_args = 0
1341 @ link register save eliminated.
443:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1342 .loc 1 443 5 view .LVU422
443:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1343 .loc 1 443 11 is_stmt 0 view .LVU423
1344 0000 01E0 b .L145
1345 .L147:
445:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ct++;
1346 .loc 1 445 9 is_stmt 1 view .LVU424
445:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ct++;
1347 .loc 1 445 11 is_stmt 0 view .LVU425
1348 0002 0130 adds r0, r0, #1
1349 .LVL167:
446:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1350 .loc 1 446 9 is_stmt 1 view .LVU426
446:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1351 .loc 1 446 11 is_stmt 0 view .LVU427
1352 0004 0131 adds r1, r1, #1
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 44
1353 .LVL168:
1354 .L145:
443:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1355 .loc 1 443 11 is_stmt 1 view .LVU428
443:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1356 .loc 1 443 12 is_stmt 0 view .LVU429
1357 0006 0378 ldrb r3, [r0] @ zero_extendqisi2
443:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1358 .loc 1 443 11 view .LVU430
1359 0008 13B1 cbz r3, .L146
443:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1360 .loc 1 443 26 discriminator 1 view .LVU431
1361 000a 0A78 ldrb r2, [r1] @ zero_extendqisi2
443:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1362 .loc 1 443 16 discriminator 1 view .LVU432
1363 000c 9342 cmp r3, r2
1364 000e F8D0 beq .L147
1365 .L146:
449:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1366 .loc 1 449 5 is_stmt 1 view .LVU433
449:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1367 .loc 1 449 19 is_stmt 0 view .LVU434
1368 0010 0878 ldrb r0, [r1] @ zero_extendqisi2
1369 .LVL169:
450:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1370 .loc 1 450 1 view .LVU435
1371 0012 181A subs r0, r3, r0
1372 0014 7047 bx lr
1373 .cfi_endproc
1374 .LFE26:
1376 .section .text.rt_strnlen,"ax",%progbits
1377 .align 1
1378 .global rt_strnlen
1379 .syntax unified
1380 .thumb
1381 .thumb_func
1382 .fpu softvfp
1384 rt_strnlen:
1385 .LVL170:
1386 .LFB27:
464:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** const char *sc;
1387 .loc 1 464 1 is_stmt 1 view -0
1388 .cfi_startproc
1389 @ args = 0, pretend = 0, frame = 0
1390 @ frame_needed = 0, uses_anonymous_args = 0
1391 @ link register save eliminated.
465:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1392 .loc 1 465 5 view .LVU437
467:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ;
1393 .loc 1 467 5 view .LVU438
467:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ;
1394 .loc 1 467 13 is_stmt 0 view .LVU439
1395 0000 0346 mov r3, r0
467:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ;
1396 .loc 1 467 5 view .LVU440
1397 0002 00E0 b .L149
1398 .LVL171:
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 45
1399 .L151:
468:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1400 .loc 1 468 9 is_stmt 1 discriminator 4 view .LVU441
467:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ;
1401 .loc 1 467 64 discriminator 4 view .LVU442
1402 0004 0133 adds r3, r3, #1
1403 .LVL172:
1404 .L149:
467:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ;
1405 .loc 1 467 18 discriminator 1 view .LVU443
1406 0006 1A78 ldrb r2, [r3] @ zero_extendqisi2
467:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ;
1407 .loc 1 467 5 is_stmt 0 discriminator 1 view .LVU444
1408 0008 12B1 cbz r2, .L150
467:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ;
1409 .loc 1 467 49 discriminator 3 view .LVU445
1410 000a 1A1A subs r2, r3, r0
467:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ;
1411 .loc 1 467 30 discriminator 3 view .LVU446
1412 000c 8A42 cmp r2, r1
1413 000e F9D3 bcc .L151
1414 .L150:
470:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1415 .loc 1 470 5 is_stmt 1 view .LVU447
471:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1416 .loc 1 471 1 is_stmt 0 view .LVU448
1417 0010 181A subs r0, r3, r0
1418 .LVL173:
471:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1419 .loc 1 471 1 view .LVU449
1420 0012 7047 bx lr
1421 .cfi_endproc
1422 .LFE27:
1424 .section .text.rt_strlen,"ax",%progbits
1425 .align 1
1426 .global rt_strlen
1427 .syntax unified
1428 .thumb
1429 .thumb_func
1430 .fpu softvfp
1432 rt_strlen:
1433 .LVL174:
1434 .LFB28:
482:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** const char *sc;
1435 .loc 1 482 1 is_stmt 1 view -0
1436 .cfi_startproc
1437 @ args = 0, pretend = 0, frame = 0
1438 @ frame_needed = 0, uses_anonymous_args = 0
1439 @ link register save eliminated.
483:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1440 .loc 1 483 5 view .LVU451
485:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ;
1441 .loc 1 485 5 view .LVU452
485:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ;
1442 .loc 1 485 13 is_stmt 0 view .LVU453
1443 0000 0346 mov r3, r0
485:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ;
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 46
1444 .loc 1 485 5 view .LVU454
1445 0002 00E0 b .L153
1446 .LVL175:
1447 .L154:
486:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1448 .loc 1 486 9 is_stmt 1 discriminator 3 view .LVU455
485:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ;
1449 .loc 1 485 31 discriminator 3 view .LVU456
1450 0004 0133 adds r3, r3, #1
1451 .LVL176:
1452 .L153:
485:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ;
1453 .loc 1 485 18 discriminator 1 view .LVU457
1454 0006 1A78 ldrb r2, [r3] @ zero_extendqisi2
485:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ;
1455 .loc 1 485 5 is_stmt 0 discriminator 1 view .LVU458
1456 0008 002A cmp r2, #0
1457 000a FBD1 bne .L154
488:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1458 .loc 1 488 5 is_stmt 1 view .LVU459
489:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1459 .loc 1 489 1 is_stmt 0 view .LVU460
1460 000c 181A subs r0, r3, r0
1461 .LVL177:
489:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1462 .loc 1 489 1 view .LVU461
1463 000e 7047 bx lr
1464 .cfi_endproc
1465 .LFE28:
1467 .section .text.rt_strstr,"ax",%progbits
1468 .align 1
1469 .global rt_strstr
1470 .syntax unified
1471 .thumb
1472 .thumb_func
1473 .fpu softvfp
1475 rt_strstr:
1476 .LVL178:
1477 .LFB22:
335:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int l1, l2;
1478 .loc 1 335 1 is_stmt 1 view -0
1479 .cfi_startproc
1480 @ args = 0, pretend = 0, frame = 0
1481 @ frame_needed = 0, uses_anonymous_args = 0
335:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int l1, l2;
1482 .loc 1 335 1 is_stmt 0 view .LVU463
1483 0000 F8B5 push {r3, r4, r5, r6, r7, lr}
1484 .LCFI19:
1485 .cfi_def_cfa_offset 24
1486 .cfi_offset 3, -24
1487 .cfi_offset 4, -20
1488 .cfi_offset 5, -16
1489 .cfi_offset 6, -12
1490 .cfi_offset 7, -8
1491 .cfi_offset 14, -4
1492 0002 0446 mov r4, r0
1493 0004 0F46 mov r7, r1
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 47
336:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1494 .loc 1 336 5 is_stmt 1 view .LVU464
338:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (!l2)
1495 .loc 1 338 5 view .LVU465
338:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (!l2)
1496 .loc 1 338 10 is_stmt 0 view .LVU466
1497 0006 0846 mov r0, r1
1498 .LVL179:
338:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (!l2)
1499 .loc 1 338 10 view .LVU467
1500 0008 FFF7FEFF bl rt_strlen
1501 .LVL180:
339:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return (char *)s1;
1502 .loc 1 339 5 is_stmt 1 view .LVU468
339:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return (char *)s1;
1503 .loc 1 339 8 is_stmt 0 view .LVU469
1504 000c 08B9 cbnz r0, .L160
1505 .LVL181:
1506 .L156:
351:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1507 .loc 1 351 1 view .LVU470
1508 000e 2046 mov r0, r4
1509 0010 F8BD pop {r3, r4, r5, r6, r7, pc}
1510 .LVL182:
1511 .L160:
351:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1512 .loc 1 351 1 view .LVU471
1513 0012 0646 mov r6, r0
341:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (l1 >= l2)
1514 .loc 1 341 5 is_stmt 1 view .LVU472
341:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (l1 >= l2)
1515 .loc 1 341 10 is_stmt 0 view .LVU473
1516 0014 2046 mov r0, r4
1517 .LVL183:
341:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (l1 >= l2)
1518 .loc 1 341 10 view .LVU474
1519 0016 FFF7FEFF bl rt_strlen
1520 .LVL184:
1521 001a 0546 mov r5, r0
1522 .LVL185:
342:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1523 .loc 1 342 5 is_stmt 1 view .LVU475
1524 .L157:
342:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1525 .loc 1 342 11 view .LVU476
1526 001c B542 cmp r5, r6
1527 001e 09DB blt .L161
344:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (!rt_memcmp(s1, s2, l2))
1528 .loc 1 344 9 view .LVU477
344:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (!rt_memcmp(s1, s2, l2))
1529 .loc 1 344 12 is_stmt 0 view .LVU478
1530 0020 013D subs r5, r5, #1
1531 .LVL186:
345:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return (char *)s1;
1532 .loc 1 345 9 is_stmt 1 view .LVU479
345:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return (char *)s1;
1533 .loc 1 345 14 is_stmt 0 view .LVU480
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 48
1534 0022 3246 mov r2, r6
1535 0024 3946 mov r1, r7
1536 0026 2046 mov r0, r4
1537 0028 FFF7FEFF bl rt_memcmp
1538 .LVL187:
345:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return (char *)s1;
1539 .loc 1 345 12 view .LVU481
1540 002c 0028 cmp r0, #0
1541 002e EED0 beq .L156
347:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1542 .loc 1 347 9 is_stmt 1 view .LVU482
347:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1543 .loc 1 347 12 is_stmt 0 view .LVU483
1544 0030 0134 adds r4, r4, #1
1545 .LVL188:
347:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1546 .loc 1 347 12 view .LVU484
1547 0032 F3E7 b .L157
1548 .L161:
350:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1549 .loc 1 350 12 view .LVU485
1550 0034 0024 movs r4, #0
1551 .LVL189:
350:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1552 .loc 1 350 12 view .LVU486
1553 0036 EAE7 b .L156
1554 .cfi_endproc
1555 .LFE22:
1557 .section .text.rt_strdup,"ax",%progbits
1558 .align 1
1559 .global rt_strdup
1560 .syntax unified
1561 .thumb
1562 .thumb_func
1563 .fpu softvfp
1565 rt_strdup:
1566 .LVL190:
1567 .LFB29:
500:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_size_t len = rt_strlen(s) + 1;
1568 .loc 1 500 1 is_stmt 1 view -0
1569 .cfi_startproc
1570 @ args = 0, pretend = 0, frame = 0
1571 @ frame_needed = 0, uses_anonymous_args = 0
500:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_size_t len = rt_strlen(s) + 1;
1572 .loc 1 500 1 is_stmt 0 view .LVU488
1573 0000 70B5 push {r4, r5, r6, lr}
1574 .LCFI20:
1575 .cfi_def_cfa_offset 16
1576 .cfi_offset 4, -16
1577 .cfi_offset 5, -12
1578 .cfi_offset 6, -8
1579 .cfi_offset 14, -4
1580 0002 0546 mov r5, r0
501:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *tmp = (char *)rt_malloc(len);
1581 .loc 1 501 5 is_stmt 1 view .LVU489
501:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *tmp = (char *)rt_malloc(len);
1582 .loc 1 501 21 is_stmt 0 view .LVU490
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 49
1583 0004 FFF7FEFF bl rt_strlen
1584 .LVL191:
501:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *tmp = (char *)rt_malloc(len);
1585 .loc 1 501 15 view .LVU491
1586 0008 441C adds r4, r0, #1
1587 .LVL192:
502:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1588 .loc 1 502 5 is_stmt 1 view .LVU492
502:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1589 .loc 1 502 25 is_stmt 0 view .LVU493
1590 000a 2046 mov r0, r4
1591 000c FFF7FEFF bl rt_malloc
1592 .LVL193:
504:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return RT_NULL;
1593 .loc 1 504 5 is_stmt 1 view .LVU494
504:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return RT_NULL;
1594 .loc 1 504 8 is_stmt 0 view .LVU495
1595 0010 0646 mov r6, r0
1596 0012 18B1 cbz r0, .L162
507:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1597 .loc 1 507 5 is_stmt 1 view .LVU496
1598 0014 2246 mov r2, r4
1599 0016 2946 mov r1, r5
1600 0018 FFF7FEFF bl rt_memcpy
1601 .LVL194:
509:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1602 .loc 1 509 5 view .LVU497
1603 .L162:
510:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1604 .loc 1 510 1 is_stmt 0 view .LVU498
1605 001c 3046 mov r0, r6
1606 001e 70BD pop {r4, r5, r6, pc}
510:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1607 .loc 1 510 1 view .LVU499
1608 .cfi_endproc
1609 .LFE29:
1611 .section .rodata.rt_vsnprintf.str1.4,"aMS",%progbits,1
1612 .align 2
1613 .LC0:
1614 0000 284E554C .ascii "(NULL)\000"
1614 4C2900
1615 .section .text.rt_vsnprintf,"ax",%progbits
1616 .align 1
1617 .global rt_vsnprintf
1618 .syntax unified
1619 .thumb
1620 .thumb_func
1621 .fpu softvfp
1623 rt_vsnprintf:
1624 .LVL195:
1625 .LFB34:
760:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
761:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_int32_t rt_vsnprintf(char *buf,
762:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_size_t size,
763:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** const char *fmt,
764:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** va_list args)
765:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 50
1626 .loc 1 765 1 is_stmt 1 view -0
1627 .cfi_startproc
1628 @ args = 0, pretend = 0, frame = 8
1629 @ frame_needed = 0, uses_anonymous_args = 0
1630 .loc 1 765 1 is_stmt 0 view .LVU501
1631 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr}
1632 .LCFI21:
1633 .cfi_def_cfa_offset 24
1634 .cfi_offset 4, -24
1635 .cfi_offset 5, -20
1636 .cfi_offset 6, -16
1637 .cfi_offset 7, -12
1638 .cfi_offset 8, -8
1639 .cfi_offset 14, -4
1640 0004 86B0 sub sp, sp, #24
1641 .LCFI22:
1642 .cfi_def_cfa_offset 48
1643 0006 0746 mov r7, r0
1644 0008 8846 mov r8, r1
1645 000a 1446 mov r4, r2
1646 000c 0593 str r3, [sp, #20]
766:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_PRINTF_LONGLONG
767:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** unsigned long long num;
768:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #else
769:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_uint32_t num;
1647 .loc 1 769 5 is_stmt 1 view .LVU502
770:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
771:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int i, len;
1648 .loc 1 771 5 view .LVU503
772:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** char *str, *end, c;
1649 .loc 1 772 5 view .LVU504
773:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** const char *s;
1650 .loc 1 773 5 view .LVU505
774:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
775:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_uint8_t base; /* the base of number */
1651 .loc 1 775 5 view .LVU506
776:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_uint8_t flags; /* flags to print number */
1652 .loc 1 776 5 view .LVU507
777:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_uint8_t qualifier; /* 'h', 'l', or 'L' for integer fields */
1653 .loc 1 777 5 view .LVU508
778:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_int32_t field_width; /* width of output field */
1654 .loc 1 778 5 view .LVU509
779:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
780:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_PRINTF_PRECISION
781:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int precision; /* min. # of digits for integers and max for a string */
1655 .loc 1 781 5 view .LVU510
782:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
783:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
784:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** str = buf;
1656 .loc 1 784 5 view .LVU511
1657 .LVL196:
785:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** end = buf + size;
1658 .loc 1 785 5 view .LVU512
786:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
787:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* Make sure end is always >= buf */
788:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (end < buf)
1659 .loc 1 788 5 view .LVU513
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 51
1660 .loc 1 788 8 is_stmt 0 view .LVU514
1661 000e 4618 adds r6, r0, r1
1662 .LVL197:
1663 .loc 1 788 8 view .LVU515
1664 0010 03D3 bcc .L166
789:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
790:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** end = ((char *) - 1);
1665 .loc 1 790 9 is_stmt 1 view .LVU516
1666 .LVL198:
791:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** size = end - buf;
1667 .loc 1 791 9 view .LVU517
1668 .loc 1 791 20 is_stmt 0 view .LVU518
1669 0012 6FEA0008 mvn r8, r0
1670 .LVL199:
790:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** size = end - buf;
1671 .loc 1 790 14 view .LVU519
1672 0016 4FF0FF36 mov r6, #-1
1673 .LVL200:
1674 .L166:
790:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** size = end - buf;
1675 .loc 1 790 14 discriminator 1 view .LVU520
1676 001a 3846 mov r0, r7
1677 .LVL201:
790:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** size = end - buf;
1678 .loc 1 790 14 discriminator 1 view .LVU521
1679 001c 01E0 b .L230
1680 .LVL202:
1681 .L168:
792:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
793:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
794:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** for (; *fmt ; ++fmt)
795:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
796:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (*fmt != '%')
797:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
798:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (str < end)
799:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *str = *fmt;
800:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
1682 .loc 1 800 13 is_stmt 1 view .LVU522
1683 001e 0130 adds r0, r0, #1
1684 .LVL203:
801:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** continue;
1685 .loc 1 801 13 view .LVU523
1686 .L169:
794:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1687 .loc 1 794 19 view .LVU524
1688 0020 0134 adds r4, r4, #1
1689 .LVL204:
1690 .L230:
794:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1691 .loc 1 794 12 discriminator 1 view .LVU525
1692 0022 2378 ldrb r3, [r4] @ zero_extendqisi2
794:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1693 .loc 1 794 5 is_stmt 0 discriminator 1 view .LVU526
1694 0024 002B cmp r3, #0
1695 0026 00F05681 beq .L248
796:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1696 .loc 1 796 9 is_stmt 1 view .LVU527
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 52
796:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1697 .loc 1 796 12 is_stmt 0 view .LVU528
1698 002a 252B cmp r3, #37
1699 002c 03D0 beq .L234
798:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *str = *fmt;
1700 .loc 1 798 13 is_stmt 1 view .LVU529
798:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *str = *fmt;
1701 .loc 1 798 16 is_stmt 0 view .LVU530
1702 002e B042 cmp r0, r6
1703 0030 F5D2 bcs .L168
799:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
1704 .loc 1 799 17 is_stmt 1 view .LVU531
799:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
1705 .loc 1 799 22 is_stmt 0 view .LVU532
1706 0032 0370 strb r3, [r0]
1707 0034 F3E7 b .L168
1708 .L234:
802:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
803:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
804:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* process flags */
805:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** flags = 0;
1709 .loc 1 805 15 view .LVU533
1710 0036 0021 movs r1, #0
1711 0038 01E0 b .L167
1712 .LVL205:
1713 .L249:
806:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
807:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (1)
808:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
809:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* skips the first '%' also */
810:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ fmt;
811:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (*fmt == '-') flags |= LEFT;
1714 .loc 1 811 30 is_stmt 1 discriminator 1 view .LVU534
1715 .loc 1 811 36 is_stmt 0 discriminator 1 view .LVU535
1716 003a 41F01001 orr r1, r1, #16
1717 .LVL206:
1718 .L167:
807:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1719 .loc 1 807 9 is_stmt 1 view .LVU536
810:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (*fmt == '-') flags |= LEFT;
1720 .loc 1 810 13 view .LVU537
1721 .loc 1 811 13 view .LVU538
1722 .loc 1 811 17 is_stmt 0 view .LVU539
1723 003e 14F8013F ldrb r3, [r4, #1]! @ zero_extendqisi2
1724 .LVL207:
1725 .loc 1 811 16 view .LVU540
1726 0042 2D2B cmp r3, #45
1727 0044 F9D0 beq .L249
812:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (*fmt == '+') flags |= PLUS;
1728 .loc 1 812 18 is_stmt 1 view .LVU541
1729 .loc 1 812 21 is_stmt 0 view .LVU542
1730 0046 2B2B cmp r3, #43
1731 0048 08D0 beq .L250
813:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (*fmt == ' ') flags |= SPACE;
1732 .loc 1 813 18 is_stmt 1 view .LVU543
1733 .loc 1 813 21 is_stmt 0 view .LVU544
1734 004a 202B cmp r3, #32
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 53
1735 004c 09D0 beq .L251
814:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (*fmt == '#') flags |= SPECIAL;
1736 .loc 1 814 18 is_stmt 1 view .LVU545
1737 .loc 1 814 21 is_stmt 0 view .LVU546
1738 004e 232B cmp r3, #35
1739 0050 0AD0 beq .L252
815:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (*fmt == '0') flags |= ZEROPAD;
1740 .loc 1 815 18 is_stmt 1 view .LVU547
1741 .loc 1 815 21 is_stmt 0 view .LVU548
1742 0052 302B cmp r3, #48
1743 0054 0BD1 bne .L175
1744 .loc 1 815 35 is_stmt 1 discriminator 1 view .LVU549
1745 .loc 1 815 41 is_stmt 0 discriminator 1 view .LVU550
1746 0056 41F00101 orr r1, r1, #1
1747 .LVL208:
1748 .loc 1 815 41 discriminator 1 view .LVU551
1749 005a F0E7 b .L167
1750 .L250:
812:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (*fmt == ' ') flags |= SPACE;
1751 .loc 1 812 35 is_stmt 1 discriminator 1 view .LVU552
812:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (*fmt == ' ') flags |= SPACE;
1752 .loc 1 812 41 is_stmt 0 discriminator 1 view .LVU553
1753 005c 41F00401 orr r1, r1, #4
1754 .LVL209:
812:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (*fmt == ' ') flags |= SPACE;
1755 .loc 1 812 41 discriminator 1 view .LVU554
1756 0060 EDE7 b .L167
1757 .L251:
813:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (*fmt == '#') flags |= SPECIAL;
1758 .loc 1 813 35 is_stmt 1 discriminator 1 view .LVU555
813:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (*fmt == '#') flags |= SPECIAL;
1759 .loc 1 813 41 is_stmt 0 discriminator 1 view .LVU556
1760 0062 41F00801 orr r1, r1, #8
1761 .LVL210:
813:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (*fmt == '#') flags |= SPECIAL;
1762 .loc 1 813 41 discriminator 1 view .LVU557
1763 0066 EAE7 b .L167
1764 .L252:
814:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (*fmt == '0') flags |= ZEROPAD;
1765 .loc 1 814 35 is_stmt 1 discriminator 1 view .LVU558
814:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (*fmt == '0') flags |= ZEROPAD;
1766 .loc 1 814 41 is_stmt 0 discriminator 1 view .LVU559
1767 0068 41F02001 orr r1, r1, #32
1768 .LVL211:
814:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (*fmt == '0') flags |= ZEROPAD;
1769 .loc 1 814 41 discriminator 1 view .LVU560
1770 006c E7E7 b .L167
1771 .L175:
816:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else break;
817:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
818:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
819:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* get field width */
820:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** field_width = -1;
1772 .loc 1 820 9 is_stmt 1 view .LVU561
1773 .LVL212:
821:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (_ISDIGIT(*fmt)) field_width = skip_atoi(&fmt);
1774 .loc 1 821 9 view .LVU562
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 54
1775 .loc 1 821 13 is_stmt 0 view .LVU563
1776 006e A3F13002 sub r2, r3, #48
1777 .loc 1 821 12 view .LVU564
1778 0072 092A cmp r2, #9
1779 0074 1BD9 bls .L253
822:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (*fmt == '*')
1780 .loc 1 822 14 is_stmt 1 view .LVU565
1781 .loc 1 822 17 is_stmt 0 view .LVU566
1782 0076 2A2B cmp r3, #42
1783 0078 1BD0 beq .L254
820:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (_ISDIGIT(*fmt)) field_width = skip_atoi(&fmt);
1784 .loc 1 820 21 view .LVU567
1785 007a 4FF0FF35 mov r5, #-1
1786 .LVL213:
1787 .L179:
823:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
824:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ fmt;
825:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* it's the next argument */
826:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** field_width = va_arg(args, int);
827:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (field_width < 0)
828:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
829:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** field_width = -field_width;
830:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** flags |= LEFT;
831:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
832:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
833:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
834:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_PRINTF_PRECISION
835:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* get the precision */
836:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** precision = -1;
1788 .loc 1 836 9 is_stmt 1 view .LVU568
837:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (*fmt == '.')
1789 .loc 1 837 9 view .LVU569
1790 .loc 1 837 13 is_stmt 0 view .LVU570
1791 007e 2378 ldrb r3, [r4] @ zero_extendqisi2
1792 .loc 1 837 12 view .LVU571
1793 0080 2E2B cmp r3, #46
1794 0082 21D0 beq .L255
836:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (*fmt == '.')
1795 .loc 1 836 19 view .LVU572
1796 0084 4FF0FF3C mov ip, #-1
1797 .LVL214:
1798 .L180:
838:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
839:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ fmt;
840:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (_ISDIGIT(*fmt)) precision = skip_atoi(&fmt);
841:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (*fmt == '*')
842:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
843:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ fmt;
844:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* it's the next argument */
845:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** precision = va_arg(args, int);
846:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
847:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (precision < 0) precision = 0;
848:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
849:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
850:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* get the conversion qualifier */
851:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** qualifier = 0;
1799 .loc 1 851 9 is_stmt 1 view .LVU573
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 55
852:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_PRINTF_LONGLONG
853:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (*fmt == 'h' || *fmt == 'l' || *fmt == 'L')
854:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #else
855:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (*fmt == 'h' || *fmt == 'l')
1800 .loc 1 855 9 view .LVU574
1801 .loc 1 855 13 is_stmt 0 view .LVU575
1802 0088 2278 ldrb r2, [r4] @ zero_extendqisi2
1803 .loc 1 855 12 view .LVU576
1804 008a 682A cmp r2, #104
1805 008c 43D0 beq .L185
1806 .loc 1 855 25 discriminator 1 view .LVU577
1807 008e 6C2A cmp r2, #108
1808 0090 41D0 beq .L185
851:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_PRINTF_LONGLONG
1809 .loc 1 851 19 view .LVU578
1810 0092 0022 movs r2, #0
1811 0094 40E0 b .L186
1812 .LVL215:
1813 .L178:
1814 .LBB14:
1815 .LBB15:
576:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1816 .loc 1 576 9 is_stmt 1 view .LVU579
576:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1817 .loc 1 576 15 is_stmt 0 view .LVU580
1818 0096 05EB8505 add r5, r5, r5, lsl #2
1819 .LVL216:
576:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1820 .loc 1 576 22 view .LVU581
1821 009a 14F8013B ldrb r3, [r4], #1 @ zero_extendqisi2
1822 .LVL217:
576:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1823 .loc 1 576 20 view .LVU582
1824 009e 03EB4505 add r5, r3, r5, lsl #1
576:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1825 .loc 1 576 11 view .LVU583
1826 00a2 303D subs r5, r5, #48
1827 .LVL218:
1828 .L176:
575:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** i = i * 10 + *((*s)++) - '0';
1829 .loc 1 575 11 is_stmt 1 view .LVU584
575:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** i = i * 10 + *((*s)++) - '0';
1830 .loc 1 575 12 is_stmt 0 view .LVU585
1831 00a4 2378 ldrb r3, [r4] @ zero_extendqisi2
1832 00a6 303B subs r3, r3, #48
575:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** i = i * 10 + *((*s)++) - '0';
1833 .loc 1 575 11 view .LVU586
1834 00a8 092B cmp r3, #9
1835 00aa F4D9 bls .L178
575:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** i = i * 10 + *((*s)++) - '0';
1836 .loc 1 575 11 view .LVU587
1837 00ac E7E7 b .L179
1838 .LVL219:
1839 .L253:
574:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (_ISDIGIT(**s))
1840 .loc 1 574 18 view .LVU588
1841 00ae 0025 movs r5, #0
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 56
1842 00b0 F8E7 b .L176
1843 .L254:
1844 .LBE15:
1845 .LBE14:
824:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* it's the next argument */
1846 .loc 1 824 13 is_stmt 1 view .LVU589
1847 00b2 0134 adds r4, r4, #1
1848 .LVL220:
826:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (field_width < 0)
1849 .loc 1 826 13 view .LVU590
826:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (field_width < 0)
1850 .loc 1 826 25 is_stmt 0 view .LVU591
1851 00b4 059B ldr r3, [sp, #20]
1852 00b6 1A1D adds r2, r3, #4
1853 00b8 0592 str r2, [sp, #20]
1854 00ba 1D68 ldr r5, [r3]
1855 .LVL221:
827:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1856 .loc 1 827 13 is_stmt 1 view .LVU592
827:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1857 .loc 1 827 16 is_stmt 0 view .LVU593
1858 00bc 002D cmp r5, #0
1859 00be DEDA bge .L179
829:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** flags |= LEFT;
1860 .loc 1 829 17 is_stmt 1 view .LVU594
829:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** flags |= LEFT;
1861 .loc 1 829 29 is_stmt 0 view .LVU595
1862 00c0 6D42 rsbs r5, r5, #0
1863 .LVL222:
830:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1864 .loc 1 830 17 is_stmt 1 view .LVU596
830:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1865 .loc 1 830 23 is_stmt 0 view .LVU597
1866 00c2 41F01001 orr r1, r1, #16
1867 .LVL223:
830:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1868 .loc 1 830 23 view .LVU598
1869 00c6 DAE7 b .L179
1870 .LVL224:
1871 .L255:
839:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (_ISDIGIT(*fmt)) precision = skip_atoi(&fmt);
1872 .loc 1 839 13 is_stmt 1 view .LVU599
840:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (*fmt == '*')
1873 .loc 1 840 13 view .LVU600
840:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (*fmt == '*')
1874 .loc 1 840 17 is_stmt 0 view .LVU601
1875 00c8 14F8013F ldrb r3, [r4, #1]! @ zero_extendqisi2
1876 .LVL225:
840:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (*fmt == '*')
1877 .loc 1 840 17 view .LVU602
1878 00cc A3F13002 sub r2, r3, #48
840:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (*fmt == '*')
1879 .loc 1 840 16 view .LVU603
1880 00d0 092A cmp r2, #9
1881 00d2 16D9 bls .L256
841:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1882 .loc 1 841 18 is_stmt 1 view .LVU604
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 57
841:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1883 .loc 1 841 21 is_stmt 0 view .LVU605
1884 00d4 2A2B cmp r3, #42
1885 00d6 17D0 beq .L257
847:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1886 .loc 1 847 42 view .LVU606
1887 00d8 4FF0000C mov ip, #0
1888 00dc D4E7 b .L180
1889 .LVL226:
1890 .L183:
1891 .LBB16:
1892 .LBB17:
576:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1893 .loc 1 576 9 is_stmt 1 view .LVU607
576:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1894 .loc 1 576 15 is_stmt 0 view .LVU608
1895 00de 0CEB8C0C add ip, ip, ip, lsl #2
1896 .LVL227:
576:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1897 .loc 1 576 22 view .LVU609
1898 00e2 14F8013B ldrb r3, [r4], #1 @ zero_extendqisi2
1899 .LVL228:
576:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1900 .loc 1 576 20 view .LVU610
1901 00e6 03EB4C0C add ip, r3, ip, lsl #1
576:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1902 .loc 1 576 11 view .LVU611
1903 00ea ACF1300C sub ip, ip, #48
1904 .LVL229:
1905 .L181:
575:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** i = i * 10 + *((*s)++) - '0';
1906 .loc 1 575 11 is_stmt 1 view .LVU612
575:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** i = i * 10 + *((*s)++) - '0';
1907 .loc 1 575 12 is_stmt 0 view .LVU613
1908 00ee 2378 ldrb r3, [r4] @ zero_extendqisi2
1909 00f0 303B subs r3, r3, #48
575:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** i = i * 10 + *((*s)++) - '0';
1910 .loc 1 575 11 view .LVU614
1911 00f2 092B cmp r3, #9
1912 00f4 F3D9 bls .L183
1913 .LVL230:
1914 .L184:
575:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** i = i * 10 + *((*s)++) - '0';
1915 .loc 1 575 11 view .LVU615
1916 .LBE17:
1917 .LBE16:
847:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1918 .loc 1 847 13 is_stmt 1 view .LVU616
847:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1919 .loc 1 847 16 is_stmt 0 view .LVU617
1920 00f6 BCF1000F cmp ip, #0
1921 00fa C5DA bge .L180
847:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1922 .loc 1 847 42 view .LVU618
1923 00fc 4FF0000C mov ip, #0
1924 .LVL231:
847:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 58
1925 .loc 1 847 42 view .LVU619
1926 0100 C2E7 b .L180
1927 .LVL232:
1928 .L256:
1929 .LBB19:
1930 .LBB18:
574:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (_ISDIGIT(**s))
1931 .loc 1 574 18 view .LVU620
1932 0102 4FF0000C mov ip, #0
1933 0106 F2E7 b .L181
1934 .L257:
1935 .LBE18:
1936 .LBE19:
843:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* it's the next argument */
1937 .loc 1 843 17 is_stmt 1 view .LVU621
1938 0108 0134 adds r4, r4, #1
1939 .LVL233:
845:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1940 .loc 1 845 17 view .LVU622
845:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1941 .loc 1 845 27 is_stmt 0 view .LVU623
1942 010a 059B ldr r3, [sp, #20]
1943 010c 1A1D adds r2, r3, #4
1944 010e 0592 str r2, [sp, #20]
1945 0110 D3F800C0 ldr ip, [r3]
1946 0114 EFE7 b .L184
1947 .LVL234:
1948 .L185:
856:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
857:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
858:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** qualifier = *fmt;
1949 .loc 1 858 13 is_stmt 1 view .LVU624
859:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ fmt;
1950 .loc 1 859 13 view .LVU625
1951 0116 0134 adds r4, r4, #1
1952 .LVL235:
1953 .L186:
860:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_PRINTF_LONGLONG
861:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (qualifier == 'l' && *fmt == 'l')
862:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
863:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** qualifier = 'L';
864:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ fmt;
865:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
866:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
867:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
868:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
869:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* the default base */
870:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** base = 10;
1954 .loc 1 870 9 view .LVU626
871:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
872:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** switch (*fmt)
1955 .loc 1 872 9 view .LVU627
1956 .loc 1 872 17 is_stmt 0 view .LVU628
1957 0118 2378 ldrb r3, [r4] @ zero_extendqisi2
1958 .loc 1 872 9 view .LVU629
1959 011a 252B cmp r3, #37
1960 011c 00F09180 beq .L187
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 59
1961 .loc 1 872 9 view .LVU630
1962 0120 C0F0B080 bcc .L188
1963 0124 782B cmp r3, #120
1964 0126 00F2AD80 bhi .L188
1965 012a 582B cmp r3, #88
1966 012c C0F0AA80 bcc .L188
1967 0130 583B subs r3, r3, #88
1968 0132 202B cmp r3, #32
1969 0134 00F2A680 bhi .L188
1970 0138 DFE803F0 tbb [pc, r3]
1971 .L190:
1972 013c 9C .byte (.L197-.L190)/2
1973 013d A4 .byte (.L188-.L190)/2
1974 013e A4 .byte (.L188-.L190)/2
1975 013f A4 .byte (.L188-.L190)/2
1976 0140 A4 .byte (.L188-.L190)/2
1977 0141 A4 .byte (.L188-.L190)/2
1978 0142 A4 .byte (.L188-.L190)/2
1979 0143 A4 .byte (.L188-.L190)/2
1980 0144 A4 .byte (.L188-.L190)/2
1981 0145 A4 .byte (.L188-.L190)/2
1982 0146 A4 .byte (.L188-.L190)/2
1983 0147 11 .byte (.L196-.L190)/2
1984 0148 A0 .byte (.L195-.L190)/2
1985 0149 A4 .byte (.L188-.L190)/2
1986 014a A4 .byte (.L188-.L190)/2
1987 014b A4 .byte (.L188-.L190)/2
1988 014c A4 .byte (.L188-.L190)/2
1989 014d A0 .byte (.L195-.L190)/2
1990 014e A4 .byte (.L188-.L190)/2
1991 014f A4 .byte (.L188-.L190)/2
1992 0150 A4 .byte (.L188-.L190)/2
1993 0151 A4 .byte (.L188-.L190)/2
1994 0152 A4 .byte (.L188-.L190)/2
1995 0153 89 .byte (.L194-.L190)/2
1996 0154 6F .byte (.L193-.L190)/2
1997 0155 A4 .byte (.L188-.L190)/2
1998 0156 A4 .byte (.L188-.L190)/2
1999 0157 30 .byte (.L192-.L190)/2
2000 0158 A4 .byte (.L188-.L190)/2
2001 0159 B3 .byte (.L191-.L190)/2
2002 015a A4 .byte (.L188-.L190)/2
2003 015b A4 .byte (.L188-.L190)/2
2004 015c B5 .byte (.L242-.L190)/2
2005 015d 00 .p2align 1
2006 .L196:
873:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
874:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** case 'c':
875:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (!(flags & LEFT))
2007 .loc 1 875 13 is_stmt 1 view .LVU631
2008 .loc 1 875 16 is_stmt 0 view .LVU632
2009 015e 11F0100F tst r1, #16
2010 0162 09D0 beq .L198
2011 .L199:
876:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
877:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (--field_width > 0)
878:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 60
879:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (str < end) *str = ' ';
880:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
881:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
882:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
883:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
884:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* get character */
885:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** c = (rt_uint8_t)va_arg(args, int);
2012 .loc 1 885 13 is_stmt 1 view .LVU633
2013 .loc 1 885 29 is_stmt 0 view .LVU634
2014 0164 059B ldr r3, [sp, #20]
2015 0166 1A1D adds r2, r3, #4
2016 .LVL236:
2017 .loc 1 885 29 view .LVU635
2018 0168 0592 str r2, [sp, #20]
2019 .loc 1 885 15 view .LVU636
2020 016a 1B78 ldrb r3, [r3] @ zero_extendqisi2
2021 .LVL237:
886:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (str < end) *str = c;
2022 .loc 1 886 13 is_stmt 1 view .LVU637
2023 .loc 1 886 16 is_stmt 0 view .LVU638
2024 016c B042 cmp r0, r6
2025 016e 00D2 bcs .L202
2026 .loc 1 886 28 is_stmt 1 discriminator 1 view .LVU639
2027 .loc 1 886 33 is_stmt 0 discriminator 1 view .LVU640
2028 0170 0370 strb r3, [r0]
2029 .L202:
887:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2030 .loc 1 887 13 is_stmt 1 view .LVU641
2031 0172 0130 adds r0, r0, #1
2032 .LVL238:
888:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
889:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* put width */
890:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (--field_width > 0)
2033 .loc 1 890 13 view .LVU642
2034 .loc 1 890 19 is_stmt 0 view .LVU643
2035 0174 09E0 b .L203
2036 .LVL239:
2037 .L200:
880:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2038 .loc 1 880 21 is_stmt 1 view .LVU644
2039 0176 0130 adds r0, r0, #1
2040 .LVL240:
2041 .L198:
877:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2042 .loc 1 877 23 view .LVU645
2043 0178 013D subs r5, r5, #1
2044 .LVL241:
877:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2045 .loc 1 877 23 is_stmt 0 view .LVU646
2046 017a 002D cmp r5, #0
2047 017c F2DD ble .L199
879:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2048 .loc 1 879 21 is_stmt 1 view .LVU647
879:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2049 .loc 1 879 24 is_stmt 0 view .LVU648
2050 017e B042 cmp r0, r6
2051 0180 F9D2 bcs .L200
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 61
879:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2052 .loc 1 879 36 is_stmt 1 discriminator 1 view .LVU649
879:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2053 .loc 1 879 41 is_stmt 0 discriminator 1 view .LVU650
2054 0182 2023 movs r3, #32
2055 0184 0370 strb r3, [r0]
2056 0186 F6E7 b .L200
2057 .LVL242:
2058 .L204:
891:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
892:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (str < end) *str = ' ';
893:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2059 .loc 1 893 17 is_stmt 1 view .LVU651
2060 0188 0130 adds r0, r0, #1
2061 .LVL243:
2062 .L203:
890:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2063 .loc 1 890 19 view .LVU652
2064 018a 013D subs r5, r5, #1
2065 .LVL244:
890:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2066 .loc 1 890 19 is_stmt 0 view .LVU653
2067 018c 002D cmp r5, #0
2068 018e 7FF747AF ble .L169
892:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2069 .loc 1 892 17 is_stmt 1 view .LVU654
892:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2070 .loc 1 892 20 is_stmt 0 view .LVU655
2071 0192 B042 cmp r0, r6
2072 0194 F8D2 bcs .L204
892:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2073 .loc 1 892 32 is_stmt 1 discriminator 1 view .LVU656
892:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2074 .loc 1 892 37 is_stmt 0 discriminator 1 view .LVU657
2075 0196 2023 movs r3, #32
2076 0198 0370 strb r3, [r0]
2077 019a F5E7 b .L204
2078 .LVL245:
2079 .L192:
894:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
895:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** continue;
896:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
897:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** case 's':
898:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** s = va_arg(args, char *);
2080 .loc 1 898 13 is_stmt 1 view .LVU658
2081 .loc 1 898 15 is_stmt 0 view .LVU659
2082 019c 059B ldr r3, [sp, #20]
2083 019e 1A1D adds r2, r3, #4
2084 .LVL246:
2085 .loc 1 898 15 view .LVU660
2086 01a0 0592 str r2, [sp, #20]
2087 01a2 1A68 ldr r2, [r3]
899:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (!s) s = "(NULL)";
2088 .loc 1 899 13 is_stmt 1 view .LVU661
2089 .loc 1 899 16 is_stmt 0 view .LVU662
2090 01a4 0AB1 cbz r2, .L258
2091 .L206:
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 62
2092 .LVL247:
900:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
901:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** for (len = 0; (len != field_width) && (s[len] != '\0'); len++);
2093 .loc 1 901 13 is_stmt 1 view .LVU663
2094 .loc 1 901 22 is_stmt 0 view .LVU664
2095 01a6 0023 movs r3, #0
2096 .loc 1 901 13 view .LVU665
2097 01a8 02E0 b .L207
2098 .LVL248:
2099 .L258:
899:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (!s) s = "(NULL)";
2100 .loc 1 899 23 view .LVU666
2101 01aa 524A ldr r2, .L263
2102 01ac FBE7 b .L206
2103 .LVL249:
2104 .L209:
2105 .loc 1 901 75 is_stmt 1 discriminator 4 view .LVU667
2106 .loc 1 901 69 discriminator 4 view .LVU668
2107 .loc 1 901 72 is_stmt 0 discriminator 4 view .LVU669
2108 01ae 0133 adds r3, r3, #1
2109 .LVL250:
2110 .L207:
2111 .loc 1 901 27 is_stmt 1 discriminator 1 view .LVU670
2112 .loc 1 901 13 is_stmt 0 discriminator 1 view .LVU671
2113 01b0 AB42 cmp r3, r5
2114 01b2 04D0 beq .L208
2115 .loc 1 901 53 discriminator 3 view .LVU672
2116 01b4 12F803E0 ldrb lr, [r2, r3] @ zero_extendqisi2
2117 .loc 1 901 48 discriminator 3 view .LVU673
2118 01b8 BEF1000F cmp lr, #0
2119 01bc F7D1 bne .L209
2120 .L208:
902:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_PRINTF_PRECISION
903:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (precision > 0 && len > precision) len = precision;
2121 .loc 1 903 13 is_stmt 1 view .LVU674
2122 .loc 1 903 16 is_stmt 0 view .LVU675
2123 01be BCF1000F cmp ip, #0
2124 01c2 02DD ble .L210
2125 .loc 1 903 31 discriminator 1 view .LVU676
2126 01c4 6345 cmp r3, ip
2127 01c6 00DD ble .L210
2128 .loc 1 903 55 view .LVU677
2129 01c8 6346 mov r3, ip
2130 .LVL251:
2131 .L210:
904:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
905:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
906:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (!(flags & LEFT))
2132 .loc 1 906 13 is_stmt 1 view .LVU678
2133 .loc 1 906 16 is_stmt 0 view .LVU679
2134 01ca 11F0100F tst r1, #16
2135 01ce 03D0 beq .L211
2136 .LVL252:
2137 .L212:
907:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
908:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (len < field_width--)
909:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 63
910:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (str < end) *str = ' ';
911:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
912:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
913:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
914:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
915:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** for (i = 0; i < len; ++i)
2138 .loc 1 915 13 is_stmt 1 view .LVU680
2139 .loc 1 915 20 is_stmt 0 view .LVU681
2140 01d0 0021 movs r1, #0
2141 .loc 1 915 13 view .LVU682
2142 01d2 0EE0 b .L215
2143 .LVL253:
2144 .L213:
911:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2145 .loc 1 911 21 is_stmt 1 view .LVU683
2146 01d4 0130 adds r0, r0, #1
2147 .LVL254:
908:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2148 .loc 1 908 41 is_stmt 0 view .LVU684
2149 01d6 0D46 mov r5, r1
2150 .LVL255:
2151 .L211:
908:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2152 .loc 1 908 23 is_stmt 1 view .LVU685
908:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2153 .loc 1 908 41 is_stmt 0 view .LVU686
2154 01d8 691E subs r1, r5, #1
2155 .LVL256:
908:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2156 .loc 1 908 23 view .LVU687
2157 01da AB42 cmp r3, r5
2158 01dc 04DA bge .L259
910:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2159 .loc 1 910 21 is_stmt 1 view .LVU688
910:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2160 .loc 1 910 24 is_stmt 0 view .LVU689
2161 01de B042 cmp r0, r6
2162 01e0 F8D2 bcs .L213
910:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2163 .loc 1 910 36 is_stmt 1 discriminator 1 view .LVU690
910:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2164 .loc 1 910 41 is_stmt 0 discriminator 1 view .LVU691
2165 01e2 2025 movs r5, #32
2166 01e4 0570 strb r5, [r0]
2167 01e6 F5E7 b .L213
2168 .L259:
908:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2169 .loc 1 908 41 view .LVU692
2170 01e8 0D46 mov r5, r1
2171 01ea F1E7 b .L212
2172 .LVL257:
2173 .L216:
916:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
917:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (str < end) *str = *s;
918:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2174 .loc 1 918 17 is_stmt 1 discriminator 2 view .LVU693
2175 01ec 0130 adds r0, r0, #1
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 64
2176 .LVL258:
919:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ s;
2177 .loc 1 919 17 discriminator 2 view .LVU694
2178 01ee 0132 adds r2, r2, #1
2179 .LVL259:
915:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2180 .loc 1 915 34 discriminator 2 view .LVU695
2181 01f0 0131 adds r1, r1, #1
2182 .LVL260:
2183 .L215:
915:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2184 .loc 1 915 25 discriminator 1 view .LVU696
915:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2185 .loc 1 915 13 is_stmt 0 discriminator 1 view .LVU697
2186 01f2 9942 cmp r1, r3
2187 01f4 08DA bge .L218
917:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2188 .loc 1 917 17 is_stmt 1 view .LVU698
917:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2189 .loc 1 917 20 is_stmt 0 view .LVU699
2190 01f6 B042 cmp r0, r6
2191 01f8 F8D2 bcs .L216
917:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2192 .loc 1 917 32 is_stmt 1 discriminator 1 view .LVU700
917:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2193 .loc 1 917 39 is_stmt 0 discriminator 1 view .LVU701
2194 01fa 92F800C0 ldrb ip, [r2] @ zero_extendqisi2
917:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2195 .loc 1 917 37 discriminator 1 view .LVU702
2196 01fe 80F800C0 strb ip, [r0]
2197 0202 F3E7 b .L216
2198 .LVL261:
2199 .L219:
920:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
921:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
922:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (len < field_width--)
923:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
924:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (str < end) *str = ' ';
925:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2200 .loc 1 925 17 is_stmt 1 view .LVU703
2201 0204 0130 adds r0, r0, #1
2202 .LVL262:
922:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2203 .loc 1 922 37 is_stmt 0 view .LVU704
2204 0206 1546 mov r5, r2
2205 .LVL263:
2206 .L218:
922:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2207 .loc 1 922 19 is_stmt 1 view .LVU705
922:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2208 .loc 1 922 37 is_stmt 0 view .LVU706
2209 0208 6A1E subs r2, r5, #1
2210 .LVL264:
922:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2211 .loc 1 922 19 view .LVU707
2212 020a AB42 cmp r3, r5
2213 020c BFF608AF bge .L169
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 65
924:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2214 .loc 1 924 17 is_stmt 1 view .LVU708
924:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2215 .loc 1 924 20 is_stmt 0 view .LVU709
2216 0210 B042 cmp r0, r6
2217 0212 F7D2 bcs .L219
924:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2218 .loc 1 924 32 is_stmt 1 discriminator 1 view .LVU710
924:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2219 .loc 1 924 37 is_stmt 0 discriminator 1 view .LVU711
2220 0214 2021 movs r1, #32
2221 0216 0170 strb r1, [r0]
2222 0218 F4E7 b .L219
2223 .LVL265:
2224 .L193:
926:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
927:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** continue;
928:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
929:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** case 'p':
930:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (field_width == -1)
2225 .loc 1 930 13 is_stmt 1 view .LVU712
2226 .loc 1 930 16 is_stmt 0 view .LVU713
2227 021a B5F1FF3F cmp r5, #-1
2228 021e 0CD0 beq .L260
2229 .LVL266:
2230 .L221:
931:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
932:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** field_width = sizeof(void *) << 1;
933:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** flags |= ZEROPAD;
934:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
935:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_PRINTF_PRECISION
936:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** str = print_number(str, end,
2231 .loc 1 936 13 is_stmt 1 view .LVU714
937:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** (long)va_arg(args, void *),
2232 .loc 1 937 38 is_stmt 0 view .LVU715
2233 0220 059B ldr r3, [sp, #20]
2234 0222 1A1D adds r2, r3, #4
2235 .LVL267:
2236 .loc 1 937 38 view .LVU716
2237 0224 0592 str r2, [sp, #20]
2238 0226 1A68 ldr r2, [r3]
936:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** (long)va_arg(args, void *),
2239 .loc 1 936 19 view .LVU717
2240 0228 0291 str r1, [sp, #8]
2241 022a CDF804C0 str ip, [sp, #4]
2242 022e 0095 str r5, [sp]
2243 0230 1023 movs r3, #16
2244 0232 3146 mov r1, r6
2245 .LVL268:
936:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** (long)va_arg(args, void *),
2246 .loc 1 936 19 view .LVU718
2247 0234 FFF7FEFF bl print_number
2248 .LVL269:
938:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** 16, field_width, precision, flags);
939:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #else
940:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** str = print_number(str, end,
941:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** (long)va_arg(args, void *),
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 66
942:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** 16, field_width, flags);
943:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
944:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** continue;
2249 .loc 1 944 13 is_stmt 1 view .LVU719
2250 0238 F2E6 b .L169
2251 .LVL270:
2252 .L260:
932:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** flags |= ZEROPAD;
2253 .loc 1 932 17 view .LVU720
933:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2254 .loc 1 933 17 view .LVU721
933:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2255 .loc 1 933 23 is_stmt 0 view .LVU722
2256 023a 41F00101 orr r1, r1, #1
2257 .LVL271:
932:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** flags |= ZEROPAD;
2258 .loc 1 932 29 view .LVU723
2259 023e 0825 movs r5, #8
2260 0240 EEE7 b .L221
2261 .LVL272:
2262 .L187:
945:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
946:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** case '%':
947:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (str < end) *str = '%';
2263 .loc 1 947 13 is_stmt 1 view .LVU724
2264 .loc 1 947 16 is_stmt 0 view .LVU725
2265 0242 B042 cmp r0, r6
2266 0244 01D2 bcs .L222
2267 .loc 1 947 28 is_stmt 1 discriminator 1 view .LVU726
2268 .loc 1 947 33 is_stmt 0 discriminator 1 view .LVU727
2269 0246 2523 movs r3, #37
2270 0248 0370 strb r3, [r0]
2271 .L222:
948:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2272 .loc 1 948 13 is_stmt 1 view .LVU728
2273 024a 0130 adds r0, r0, #1
2274 .LVL273:
949:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** continue;
2275 .loc 1 949 13 view .LVU729
2276 024c E8E6 b .L169
2277 .L194:
950:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
951:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* integer number formats - set up the flags and "break" */
952:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** case 'o':
953:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** base = 8;
2278 .loc 1 953 13 view .LVU730
2279 .LVL274:
954:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
2280 .loc 1 954 13 view .LVU731
953:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
2281 .loc 1 953 18 is_stmt 0 view .LVU732
2282 024e 0823 movs r3, #8
2283 .LVL275:
2284 .L189:
955:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
956:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** case 'X':
957:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** flags |= LARGE;
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 67
958:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** case 'x':
959:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** base = 16;
960:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
961:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
962:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** case 'd':
963:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** case 'i':
964:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** flags |= SIGN;
965:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** case 'u':
966:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
967:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
968:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** default:
969:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (str < end) *str = '%';
970:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
971:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
972:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (*fmt)
973:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
974:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (str < end) *str = *fmt;
975:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
976:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
977:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else
978:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
979:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** -- fmt;
980:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
981:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** continue;
982:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
983:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
984:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_PRINTF_LONGLONG
985:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (qualifier == 'L') num = va_arg(args, long long);
986:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (qualifier == 'l')
987:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #else
988:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (qualifier == 'l')
2285 .loc 1 988 9 is_stmt 1 view .LVU733
2286 .loc 1 988 12 is_stmt 0 view .LVU734
2287 0250 6C2A cmp r2, #108
2288 0252 2AD0 beq .L261
989:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
990:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
991:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** num = va_arg(args, rt_uint32_t);
992:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (flags & SIGN) num = (rt_int32_t)num;
993:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
994:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else if (qualifier == 'h')
2289 .loc 1 994 14 is_stmt 1 view .LVU735
2290 .loc 1 994 17 is_stmt 0 view .LVU736
2291 0254 682A cmp r2, #104
2292 0256 2FD0 beq .L262
995:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
996:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** num = (rt_uint16_t)va_arg(args, rt_int32_t);
997:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (flags & SIGN) num = (rt_int16_t)num;
998:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
999:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else
1000:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1001:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** num = va_arg(args, rt_uint32_t);
2293 .loc 1 1001 13 is_stmt 1 view .LVU737
2294 .loc 1 1001 17 is_stmt 0 view .LVU738
2295 0258 059A ldr r2, [sp, #20]
2296 .LVL276:
2297 .loc 1 1001 17 view .LVU739
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 68
2298 025a 02F1040E add lr, r2, #4
2299 025e CDF814E0 str lr, [sp, #20]
2300 0262 1268 ldr r2, [r2]
1002:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (flags & SIGN) num = (rt_int32_t)num;
2301 .loc 1 1002 13 is_stmt 1 view .LVU740
2302 .L228:
2303 .LVL277:
1003:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1004:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_PRINTF_PRECISION
1005:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** str = print_number(str, end, num, base, field_width, precision, flags);
2304 .loc 1 1005 9 view .LVU741
2305 .loc 1 1005 15 is_stmt 0 view .LVU742
2306 0264 0291 str r1, [sp, #8]
2307 0266 CDF804C0 str ip, [sp, #4]
2308 026a 0095 str r5, [sp]
2309 026c 3146 mov r1, r6
2310 .LVL278:
2311 .loc 1 1005 15 view .LVU743
2312 026e FFF7FEFF bl print_number
2313 .LVL279:
2314 .loc 1 1005 15 view .LVU744
2315 0272 D5E6 b .L169
2316 .LVL280:
2317 .L197:
957:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** case 'x':
2318 .loc 1 957 13 is_stmt 1 view .LVU745
957:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** case 'x':
2319 .loc 1 957 19 is_stmt 0 view .LVU746
2320 0274 41F04001 orr r1, r1, #64
2321 .LVL281:
959:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
2322 .loc 1 959 18 view .LVU747
2323 0278 1023 movs r3, #16
2324 027a E9E7 b .L189
2325 .L195:
964:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** case 'u':
2326 .loc 1 964 13 is_stmt 1 view .LVU748
964:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** case 'u':
2327 .loc 1 964 19 is_stmt 0 view .LVU749
2328 027c 41F00201 orr r1, r1, #2
2329 .LVL282:
870:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
2330 .loc 1 870 14 view .LVU750
2331 0280 0A23 movs r3, #10
2332 0282 E5E7 b .L189
2333 .L188:
969:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2334 .loc 1 969 13 is_stmt 1 view .LVU751
969:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2335 .loc 1 969 16 is_stmt 0 view .LVU752
2336 0284 B042 cmp r0, r6
2337 0286 01D2 bcs .L223
969:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2338 .loc 1 969 28 is_stmt 1 discriminator 1 view .LVU753
969:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2339 .loc 1 969 33 is_stmt 0 discriminator 1 view .LVU754
2340 0288 2523 movs r3, #37
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 69
2341 028a 0370 strb r3, [r0]
2342 .L223:
970:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
2343 .loc 1 970 13 is_stmt 1 view .LVU755
2344 028c 421C adds r2, r0, #1
2345 .LVL283:
972:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2346 .loc 1 972 13 view .LVU756
972:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2347 .loc 1 972 17 is_stmt 0 view .LVU757
2348 028e 2378 ldrb r3, [r4] @ zero_extendqisi2
972:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2349 .loc 1 972 16 view .LVU758
2350 0290 23B1 cbz r3, .L224
974:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2351 .loc 1 974 17 is_stmt 1 view .LVU759
974:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2352 .loc 1 974 20 is_stmt 0 view .LVU760
2353 0292 9642 cmp r6, r2
2354 0294 00D9 bls .L225
974:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2355 .loc 1 974 32 is_stmt 1 discriminator 1 view .LVU761
974:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ++ str;
2356 .loc 1 974 37 is_stmt 0 discriminator 1 view .LVU762
2357 0296 4370 strb r3, [r0, #1]
2358 .L225:
975:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2359 .loc 1 975 17 is_stmt 1 view .LVU763
2360 0298 0230 adds r0, r0, #2
2361 .LVL284:
975:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2362 .loc 1 975 17 is_stmt 0 view .LVU764
2363 029a C1E6 b .L169
2364 .LVL285:
2365 .L224:
979:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2366 .loc 1 979 17 is_stmt 1 view .LVU765
2367 029c 013C subs r4, r4, #1
2368 .LVL286:
970:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
2369 .loc 1 970 13 is_stmt 0 view .LVU766
2370 029e 1046 mov r0, r2
2371 .LVL287:
981:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2372 .loc 1 981 13 is_stmt 1 view .LVU767
2373 02a0 BEE6 b .L169
2374 .LVL288:
2375 .L191:
872:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2376 .loc 1 872 9 is_stmt 0 view .LVU768
2377 02a2 0A23 movs r3, #10
2378 02a4 D4E7 b .L189
2379 .L242:
959:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** break;
2380 .loc 1 959 18 view .LVU769
2381 02a6 1023 movs r3, #16
2382 02a8 D2E7 b .L189
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 70
2383 .LVL289:
2384 .L261:
991:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (flags & SIGN) num = (rt_int32_t)num;
2385 .loc 1 991 13 is_stmt 1 view .LVU770
991:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (flags & SIGN) num = (rt_int32_t)num;
2386 .loc 1 991 17 is_stmt 0 view .LVU771
2387 02aa 059A ldr r2, [sp, #20]
2388 .LVL290:
991:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (flags & SIGN) num = (rt_int32_t)num;
2389 .loc 1 991 17 view .LVU772
2390 02ac 02F1040E add lr, r2, #4
2391 02b0 CDF814E0 str lr, [sp, #20]
2392 02b4 1268 ldr r2, [r2]
992:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2393 .loc 1 992 13 is_stmt 1 view .LVU773
2394 02b6 D5E7 b .L228
2395 .LVL291:
2396 .L262:
996:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (flags & SIGN) num = (rt_int16_t)num;
2397 .loc 1 996 13 view .LVU774
996:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (flags & SIGN) num = (rt_int16_t)num;
2398 .loc 1 996 32 is_stmt 0 view .LVU775
2399 02b8 059A ldr r2, [sp, #20]
2400 .LVL292:
996:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (flags & SIGN) num = (rt_int16_t)num;
2401 .loc 1 996 32 view .LVU776
2402 02ba 02F1040E add lr, r2, #4
2403 02be CDF814E0 str lr, [sp, #20]
2404 02c2 D2F800E0 ldr lr, [r2]
996:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (flags & SIGN) num = (rt_int16_t)num;
2405 .loc 1 996 17 view .LVU777
2406 02c6 1FFA8EF2 uxth r2, lr
2407 .LVL293:
997:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2408 .loc 1 997 13 is_stmt 1 view .LVU778
997:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2409 .loc 1 997 16 is_stmt 0 view .LVU779
2410 02ca 11F0020F tst r1, #2
2411 02ce C9D0 beq .L228
997:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2412 .loc 1 997 31 is_stmt 1 discriminator 1 view .LVU780
997:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2413 .loc 1 997 37 is_stmt 0 discriminator 1 view .LVU781
2414 02d0 0FFA8EF2 sxth r2, lr
2415 .LVL294:
997:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2416 .loc 1 997 37 discriminator 1 view .LVU782
2417 02d4 C6E7 b .L228
2418 .LVL295:
2419 .L248:
1006:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #else
1007:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** str = print_number(str, end, num, base, field_width, flags);
1008:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
1009:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1010:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1011:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (size > 0)
2420 .loc 1 1011 5 is_stmt 1 view .LVU783
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 71
2421 .loc 1 1011 8 is_stmt 0 view .LVU784
2422 02d6 B8F1000F cmp r8, #0
2423 02da 02D0 beq .L232
1012:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1013:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (str < end) *str = '\0';
2424 .loc 1 1013 9 is_stmt 1 view .LVU785
2425 .loc 1 1013 12 is_stmt 0 view .LVU786
2426 02dc B042 cmp r0, r6
2427 02de 04D2 bcs .L233
2428 .loc 1 1013 24 is_stmt 1 discriminator 1 view .LVU787
2429 .loc 1 1013 29 is_stmt 0 discriminator 1 view .LVU788
2430 02e0 0370 strb r3, [r0]
2431 .L232:
1014:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else
1015:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1016:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** end[-1] = '\0';
1017:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1018:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1019:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1020:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* the trailing null byte doesn't count towards the total
1021:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * ++str;
1022:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
1023:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return str - buf;
2432 .loc 1 1023 5 is_stmt 1 view .LVU789
1024:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2433 .loc 1 1024 1 is_stmt 0 view .LVU790
2434 02e2 C01B subs r0, r0, r7
2435 .LVL296:
2436 .loc 1 1024 1 view .LVU791
2437 02e4 06B0 add sp, sp, #24
2438 .LCFI23:
2439 .cfi_remember_state
2440 .cfi_def_cfa_offset 24
2441 @ sp needed
2442 02e6 BDE8F081 pop {r4, r5, r6, r7, r8, pc}
2443 .LVL297:
2444 .L233:
2445 .LCFI24:
2446 .cfi_restore_state
1016:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2447 .loc 1 1016 13 is_stmt 1 view .LVU792
1016:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2448 .loc 1 1016 21 is_stmt 0 view .LVU793
2449 02ea 0023 movs r3, #0
2450 02ec 06F8013C strb r3, [r6, #-1]
2451 02f0 F7E7 b .L232
2452 .L264:
2453 02f2 00BF .align 2
2454 .L263:
2455 02f4 00000000 .word .LC0
2456 .cfi_endproc
2457 .LFE34:
2459 .section .text.rt_snprintf,"ax",%progbits
2460 .align 1
2461 .global rt_snprintf
2462 .syntax unified
2463 .thumb
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 72
2464 .thumb_func
2465 .fpu softvfp
2467 rt_snprintf:
2468 .LVL298:
2469 .LFB35:
1025:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1026:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
1027:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function will fill a formatted string to buffer
1028:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
1029:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param buf the buffer to save formatted string
1030:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param size the size of buffer
1031:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param fmt the format
1032:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
1033:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_int32_t rt_snprintf(char *buf, rt_size_t size, const char *fmt, ...)
1034:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2470 .loc 1 1034 1 is_stmt 1 view -0
2471 .cfi_startproc
2472 @ args = 4, pretend = 8, frame = 8
2473 @ frame_needed = 0, uses_anonymous_args = 1
2474 .loc 1 1034 1 is_stmt 0 view .LVU795
2475 0000 0CB4 push {r2, r3}
2476 .LCFI25:
2477 .cfi_def_cfa_offset 8
2478 .cfi_offset 2, -8
2479 .cfi_offset 3, -4
2480 0002 00B5 push {lr}
2481 .LCFI26:
2482 .cfi_def_cfa_offset 12
2483 .cfi_offset 14, -12
2484 0004 83B0 sub sp, sp, #12
2485 .LCFI27:
2486 .cfi_def_cfa_offset 24
2487 0006 04AB add r3, sp, #16
2488 0008 53F8042B ldr r2, [r3], #4
1035:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_int32_t n;
2489 .loc 1 1035 5 is_stmt 1 view .LVU796
1036:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** va_list args;
2490 .loc 1 1036 5 view .LVU797
1037:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1038:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** va_start(args, fmt);
2491 .loc 1 1038 5 view .LVU798
2492 000c 0193 str r3, [sp, #4]
1039:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** n = rt_vsnprintf(buf, size, fmt, args);
2493 .loc 1 1039 5 view .LVU799
2494 .loc 1 1039 9 is_stmt 0 view .LVU800
2495 000e FFF7FEFF bl rt_vsnprintf
2496 .LVL299:
1040:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** va_end(args);
2497 .loc 1 1040 5 is_stmt 1 view .LVU801
1041:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1042:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return n;
2498 .loc 1 1042 5 view .LVU802
1043:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2499 .loc 1 1043 1 is_stmt 0 view .LVU803
2500 0012 03B0 add sp, sp, #12
2501 .LCFI28:
2502 .cfi_def_cfa_offset 12
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 73
2503 @ sp needed
2504 0014 5DF804EB ldr lr, [sp], #4
2505 .LCFI29:
2506 .cfi_restore 14
2507 .cfi_def_cfa_offset 8
2508 0018 02B0 add sp, sp, #8
2509 .LCFI30:
2510 .cfi_restore 3
2511 .cfi_restore 2
2512 .cfi_def_cfa_offset 0
2513 001a 7047 bx lr
2514 .cfi_endproc
2515 .LFE35:
2517 .section .text.rt_vsprintf,"ax",%progbits
2518 .align 1
2519 .global rt_vsprintf
2520 .syntax unified
2521 .thumb
2522 .thumb_func
2523 .fpu softvfp
2525 rt_vsprintf:
2526 .LVL300:
2527 .LFB36:
1044:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1045:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
1046:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function will fill a formatted string to buffer
1047:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
1048:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param buf the buffer to save formatted string
1049:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param arg_ptr the arg_ptr
1050:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param format the format
1051:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
1052:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_int32_t rt_vsprintf(char *buf, const char *format, va_list arg_ptr)
1053:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2528 .loc 1 1053 1 is_stmt 1 view -0
2529 .cfi_startproc
2530 @ args = 0, pretend = 0, frame = 0
2531 @ frame_needed = 0, uses_anonymous_args = 0
2532 .loc 1 1053 1 is_stmt 0 view .LVU805
2533 0000 08B5 push {r3, lr}
2534 .LCFI31:
2535 .cfi_def_cfa_offset 8
2536 .cfi_offset 3, -8
2537 .cfi_offset 14, -4
2538 0002 1346 mov r3, r2
1054:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return rt_vsnprintf(buf, (rt_size_t) - 1, format, arg_ptr);
2539 .loc 1 1054 5 is_stmt 1 view .LVU806
2540 .loc 1 1054 12 is_stmt 0 view .LVU807
2541 0004 0A46 mov r2, r1
2542 .LVL301:
2543 .loc 1 1054 12 view .LVU808
2544 0006 4FF0FF31 mov r1, #-1
2545 .LVL302:
2546 .loc 1 1054 12 view .LVU809
2547 000a FFF7FEFF bl rt_vsnprintf
2548 .LVL303:
1055:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2549 .loc 1 1055 1 view .LVU810
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 74
2550 000e 08BD pop {r3, pc}
2551 .cfi_endproc
2552 .LFE36:
2554 .section .text.rt_sprintf,"ax",%progbits
2555 .align 1
2556 .global rt_sprintf
2557 .syntax unified
2558 .thumb
2559 .thumb_func
2560 .fpu softvfp
2562 rt_sprintf:
2563 .LVL304:
2564 .LFB37:
1056:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1057:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
1058:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function will fill a formatted string to buffer
1059:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
1060:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param buf the buffer to save formatted string
1061:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param format the format
1062:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
1063:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_int32_t rt_sprintf(char *buf, const char *format, ...)
1064:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2565 .loc 1 1064 1 is_stmt 1 view -0
2566 .cfi_startproc
2567 @ args = 4, pretend = 12, frame = 8
2568 @ frame_needed = 0, uses_anonymous_args = 1
2569 .loc 1 1064 1 is_stmt 0 view .LVU812
2570 0000 0EB4 push {r1, r2, r3}
2571 .LCFI32:
2572 .cfi_def_cfa_offset 12
2573 .cfi_offset 1, -12
2574 .cfi_offset 2, -8
2575 .cfi_offset 3, -4
2576 0002 00B5 push {lr}
2577 .LCFI33:
2578 .cfi_def_cfa_offset 16
2579 .cfi_offset 14, -16
2580 0004 82B0 sub sp, sp, #8
2581 .LCFI34:
2582 .cfi_def_cfa_offset 24
2583 0006 03AA add r2, sp, #12
2584 0008 52F8041B ldr r1, [r2], #4
1065:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_int32_t n;
2585 .loc 1 1065 5 is_stmt 1 view .LVU813
1066:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** va_list arg_ptr;
2586 .loc 1 1066 5 view .LVU814
1067:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1068:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** va_start(arg_ptr, format);
2587 .loc 1 1068 5 view .LVU815
2588 000c 0192 str r2, [sp, #4]
1069:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** n = rt_vsprintf(buf, format, arg_ptr);
2589 .loc 1 1069 5 view .LVU816
2590 .loc 1 1069 9 is_stmt 0 view .LVU817
2591 000e FFF7FEFF bl rt_vsprintf
2592 .LVL305:
1070:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** va_end(arg_ptr);
2593 .loc 1 1070 5 is_stmt 1 view .LVU818
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 75
1071:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1072:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return n;
2594 .loc 1 1072 5 view .LVU819
1073:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2595 .loc 1 1073 1 is_stmt 0 view .LVU820
2596 0012 02B0 add sp, sp, #8
2597 .LCFI35:
2598 .cfi_def_cfa_offset 16
2599 @ sp needed
2600 0014 5DF804EB ldr lr, [sp], #4
2601 .LCFI36:
2602 .cfi_restore 14
2603 .cfi_def_cfa_offset 12
2604 0018 03B0 add sp, sp, #12
2605 .LCFI37:
2606 .cfi_restore 3
2607 .cfi_restore 2
2608 .cfi_restore 1
2609 .cfi_def_cfa_offset 0
2610 001a 7047 bx lr
2611 .cfi_endproc
2612 .LFE37:
2614 .section .text.rt_console_get_device,"ax",%progbits
2615 .align 1
2616 .global rt_console_get_device
2617 .syntax unified
2618 .thumb
2619 .thumb_func
2620 .fpu softvfp
2622 rt_console_get_device:
2623 .LFB38:
1074:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1075:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_USING_CONSOLE
1076:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1077:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_USING_DEVICE
1078:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
1079:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function returns the device using in console.
1080:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
1081:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @return the device using in console or RT_NULL
1082:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
1083:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_device_t rt_console_get_device(void)
1084:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2624 .loc 1 1084 1 is_stmt 1 view -0
2625 .cfi_startproc
2626 @ args = 0, pretend = 0, frame = 0
2627 @ frame_needed = 0, uses_anonymous_args = 0
2628 @ link register save eliminated.
1085:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return _console_device;
2629 .loc 1 1085 5 view .LVU822
1086:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2630 .loc 1 1086 1 is_stmt 0 view .LVU823
2631 0000 014B ldr r3, .L272
2632 0002 1868 ldr r0, [r3]
2633 0004 7047 bx lr
2634 .L273:
2635 0006 00BF .align 2
2636 .L272:
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 76
2637 0008 00000000 .word .LANCHOR3
2638 .cfi_endproc
2639 .LFE38:
2641 .section .text.rt_console_set_device,"ax",%progbits
2642 .align 1
2643 .global rt_console_set_device
2644 .syntax unified
2645 .thumb
2646 .thumb_func
2647 .fpu softvfp
2649 rt_console_set_device:
2650 .LVL306:
2651 .LFB39:
1087:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1088:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
1089:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function will set a device as console device.
1090:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * After set a device to console, all output of rt_kprintf will be
1091:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * redirected to this new device.
1092:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
1093:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param name the name of new console device
1094:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
1095:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @return the old console device handler on successful, or RT_NULL on failure.
1096:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
1097:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_device_t rt_console_set_device(const char *name)
1098:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2652 .loc 1 1098 1 is_stmt 1 view -0
2653 .cfi_startproc
2654 @ args = 0, pretend = 0, frame = 0
2655 @ frame_needed = 0, uses_anonymous_args = 0
2656 .loc 1 1098 1 is_stmt 0 view .LVU825
2657 0000 38B5 push {r3, r4, r5, lr}
2658 .LCFI38:
2659 .cfi_def_cfa_offset 16
2660 .cfi_offset 3, -16
2661 .cfi_offset 4, -12
2662 .cfi_offset 5, -8
2663 .cfi_offset 14, -4
1099:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_device_t new_device, old_device;
2664 .loc 1 1099 5 is_stmt 1 view .LVU826
1100:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1101:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* save old device */
1102:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** old_device = _console_device;
2665 .loc 1 1102 5 view .LVU827
2666 .loc 1 1102 16 is_stmt 0 view .LVU828
2667 0002 0B4B ldr r3, .L279
2668 0004 1D68 ldr r5, [r3]
2669 .LVL307:
1103:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1104:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* find new console device */
1105:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** new_device = rt_device_find(name);
2670 .loc 1 1105 5 is_stmt 1 view .LVU829
2671 .loc 1 1105 18 is_stmt 0 view .LVU830
2672 0006 FFF7FEFF bl rt_device_find
2673 .LVL308:
1106:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1107:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* check whether it's a same device */
1108:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (new_device == old_device) return RT_NULL;
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 77
2674 .loc 1 1108 5 is_stmt 1 view .LVU831
2675 .loc 1 1108 8 is_stmt 0 view .LVU832
2676 000a 8542 cmp r5, r0
2677 000c 0ED0 beq .L277
2678 000e 0446 mov r4, r0
1109:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1110:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (new_device != RT_NULL)
2679 .loc 1 1110 5 is_stmt 1 view .LVU833
2680 .loc 1 1110 8 is_stmt 0 view .LVU834
2681 0010 50B1 cbz r0, .L274
1111:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1112:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (_console_device != RT_NULL)
2682 .loc 1 1112 9 is_stmt 1 view .LVU835
2683 .loc 1 1112 29 is_stmt 0 view .LVU836
2684 0012 074B ldr r3, .L279
2685 0014 1868 ldr r0, [r3]
2686 .LVL309:
2687 .loc 1 1112 12 view .LVU837
2688 0016 08B1 cbz r0, .L276
1113:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1114:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* close old console device */
1115:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_device_close(_console_device);
2689 .loc 1 1115 13 is_stmt 1 view .LVU838
2690 0018 FFF7FEFF bl rt_device_close
2691 .LVL310:
2692 .L276:
1116:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1117:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1118:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* set new console device */
1119:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_device_open(new_device, RT_DEVICE_OFLAG_RDWR | RT_DEVICE_FLAG_STREAM);
2693 .loc 1 1119 9 view .LVU839
2694 001c 4321 movs r1, #67
2695 001e 2046 mov r0, r4
2696 0020 FFF7FEFF bl rt_device_open
2697 .LVL311:
1120:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** _console_device = new_device;
2698 .loc 1 1120 9 view .LVU840
2699 .loc 1 1120 25 is_stmt 0 view .LVU841
2700 0024 024B ldr r3, .L279
2701 0026 1C60 str r4, [r3]
2702 .LVL312:
2703 .L274:
1121:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1122:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1123:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return old_device;
1124:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2704 .loc 1 1124 1 view .LVU842
2705 0028 2846 mov r0, r5
2706 002a 38BD pop {r3, r4, r5, pc}
2707 .LVL313:
2708 .L277:
1108:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
2709 .loc 1 1108 42 view .LVU843
2710 002c 0025 movs r5, #0
2711 .LVL314:
1108:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
2712 .loc 1 1108 42 view .LVU844
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 78
2713 002e FBE7 b .L274
2714 .L280:
2715 .align 2
2716 .L279:
2717 0030 00000000 .word .LANCHOR3
2718 .cfi_endproc
2719 .LFE39:
2721 .section .text.rt_hw_console_output,"ax",%progbits
2722 .align 1
2723 .weak rt_hw_console_output
2724 .syntax unified
2725 .thumb
2726 .thumb_func
2727 .fpu softvfp
2729 rt_hw_console_output:
2730 .LVL315:
2731 .LFB40:
1125:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
1126:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1127:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** RT_WEAK void rt_hw_console_output(const char *str)
1128:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2732 .loc 1 1128 1 is_stmt 1 view -0
2733 .cfi_startproc
2734 @ args = 0, pretend = 0, frame = 0
2735 @ frame_needed = 0, uses_anonymous_args = 0
2736 @ link register save eliminated.
1129:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* empty console output */
1130:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2737 .loc 1 1130 1 view .LVU846
2738 0000 7047 bx lr
2739 .cfi_endproc
2740 .LFE40:
2742 .section .text.rt_kputs,"ax",%progbits
2743 .align 1
2744 .global rt_kputs
2745 .syntax unified
2746 .thumb
2747 .thumb_func
2748 .fpu softvfp
2750 rt_kputs:
2751 .LVL316:
2752 .LFB41:
1131:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1132:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
1133:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function will put string to the console.
1134:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
1135:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param str the string output to the console.
1136:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
1137:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** void rt_kputs(const char *str)
1138:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2753 .loc 1 1138 1 view -0
2754 .cfi_startproc
2755 @ args = 0, pretend = 0, frame = 0
2756 @ frame_needed = 0, uses_anonymous_args = 0
1139:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (!str) return;
2757 .loc 1 1139 5 view .LVU848
2758 .loc 1 1139 8 is_stmt 0 view .LVU849
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 79
2759 0000 B8B1 cbz r0, .L286
1138:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (!str) return;
2760 .loc 1 1138 1 view .LVU850
2761 0002 70B5 push {r4, r5, r6, lr}
2762 .LCFI39:
2763 .cfi_def_cfa_offset 16
2764 .cfi_offset 4, -16
2765 .cfi_offset 5, -12
2766 .cfi_offset 6, -8
2767 .cfi_offset 14, -4
2768 0004 0546 mov r5, r0
1140:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1141:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_USING_DEVICE
1142:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (_console_device == RT_NULL)
2769 .loc 1 1142 5 is_stmt 1 view .LVU851
2770 .loc 1 1142 25 is_stmt 0 view .LVU852
2771 0006 0B4B ldr r3, .L290
2772 0008 1C68 ldr r4, [r3]
2773 .loc 1 1142 8 view .LVU853
2774 000a 7CB1 cbz r4, .L289
2775 .LBB20:
1143:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1144:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_hw_console_output(str);
1145:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1146:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else
1147:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1148:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_uint16_t old_flag = _console_device->open_flag;
2776 .loc 1 1148 9 is_stmt 1 view .LVU854
2777 .loc 1 1148 21 is_stmt 0 view .LVU855
2778 000c 268C ldrh r6, [r4, #32]
2779 .LVL317:
1149:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1150:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** _console_device->open_flag |= RT_DEVICE_FLAG_STREAM;
2780 .loc 1 1150 9 is_stmt 1 view .LVU856
2781 .loc 1 1150 36 is_stmt 0 view .LVU857
2782 000e 46F04003 orr r3, r6, #64
2783 0012 2384 strh r3, [r4, #32] @ movhi
1151:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_device_write(_console_device, 0, str, rt_strlen(str));
2784 .loc 1 1151 9 is_stmt 1 view .LVU858
2785 0014 FFF7FEFF bl rt_strlen
2786 .LVL318:
2787 .loc 1 1151 9 is_stmt 0 view .LVU859
2788 0018 0346 mov r3, r0
2789 001a 2A46 mov r2, r5
2790 001c 0021 movs r1, #0
2791 001e 2046 mov r0, r4
2792 0020 FFF7FEFF bl rt_device_write
2793 .LVL319:
1152:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** _console_device->open_flag = old_flag;
2794 .loc 1 1152 9 is_stmt 1 view .LVU860
2795 .loc 1 1152 24 is_stmt 0 view .LVU861
2796 0024 034B ldr r3, .L290
2797 0026 1B68 ldr r3, [r3]
2798 .loc 1 1152 36 view .LVU862
2799 0028 1E84 strh r6, [r3, #32] @ movhi
2800 .LVL320:
2801 .L282:
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 80
2802 .loc 1 1152 36 view .LVU863
2803 .LBE20:
1153:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1154:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #else
1155:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_hw_console_output(str);
1156:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
1157:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2804 .loc 1 1157 1 view .LVU864
2805 002a 70BD pop {r4, r5, r6, pc}
2806 .LVL321:
2807 .L289:
1144:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2808 .loc 1 1144 9 is_stmt 1 view .LVU865
2809 002c FFF7FEFF bl rt_hw_console_output
2810 .LVL322:
1144:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2811 .loc 1 1144 9 is_stmt 0 view .LVU866
2812 0030 FBE7 b .L282
2813 .LVL323:
2814 .L286:
2815 .LCFI40:
2816 .cfi_def_cfa_offset 0
2817 .cfi_restore 4
2818 .cfi_restore 5
2819 .cfi_restore 6
2820 .cfi_restore 14
1144:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2821 .loc 1 1144 9 view .LVU867
2822 0032 7047 bx lr
2823 .L291:
2824 .align 2
2825 .L290:
2826 0034 00000000 .word .LANCHOR3
2827 .cfi_endproc
2828 .LFE41:
2830 .section .text.rt_kprintf,"ax",%progbits
2831 .align 1
2832 .global rt_kprintf
2833 .syntax unified
2834 .thumb
2835 .thumb_func
2836 .fpu softvfp
2838 rt_kprintf:
2839 .LVL324:
2840 .LFB42:
1158:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1159:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
1160:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function will print a formatted string on system console
1161:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
1162:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param fmt the format
1163:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
1164:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** void rt_kprintf(const char *fmt, ...)
1165:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
2841 .loc 1 1165 1 is_stmt 1 view -0
2842 .cfi_startproc
2843 @ args = 4, pretend = 16, frame = 8
2844 @ frame_needed = 0, uses_anonymous_args = 1
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 81
2845 .loc 1 1165 1 is_stmt 0 view .LVU869
2846 0000 0FB4 push {r0, r1, r2, r3}
2847 .LCFI41:
2848 .cfi_def_cfa_offset 16
2849 .cfi_offset 0, -16
2850 .cfi_offset 1, -12
2851 .cfi_offset 2, -8
2852 .cfi_offset 3, -4
2853 0002 10B5 push {r4, lr}
2854 .LCFI42:
2855 .cfi_def_cfa_offset 24
2856 .cfi_offset 4, -24
2857 .cfi_offset 14, -20
2858 0004 82B0 sub sp, sp, #8
2859 .LCFI43:
2860 .cfi_def_cfa_offset 32
2861 0006 04AB add r3, sp, #16
2862 0008 53F8042B ldr r2, [r3], #4
1166:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** va_list args;
2863 .loc 1 1166 5 is_stmt 1 view .LVU870
1167:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_size_t length;
2864 .loc 1 1167 5 view .LVU871
1168:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** static char rt_log_buf[RT_CONSOLEBUF_SIZE];
2865 .loc 1 1168 5 view .LVU872
1169:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1170:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** va_start(args, fmt);
2866 .loc 1 1170 5 view .LVU873
2867 000c 0193 str r3, [sp, #4]
1171:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* the return value of vsnprintf is the number of bytes that would be
1172:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * written to buffer had if the size of the buffer been sufficiently
1173:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * large excluding the terminating null byte. If the output string
1174:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * would be larger than the rt_log_buf, we have to adjust the output
1175:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * length. */
1176:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** length = rt_vsnprintf(rt_log_buf, sizeof(rt_log_buf) - 1, fmt, args);
2868 .loc 1 1176 5 view .LVU874
2869 .loc 1 1176 14 is_stmt 0 view .LVU875
2870 000e FF21 movs r1, #255
2871 0010 0E48 ldr r0, .L299
2872 0012 FFF7FEFF bl rt_vsnprintf
2873 .LVL325:
2874 0016 0346 mov r3, r0
2875 .LVL326:
1177:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (length > RT_CONSOLEBUF_SIZE - 1)
2876 .loc 1 1177 5 is_stmt 1 view .LVU876
2877 .loc 1 1177 8 is_stmt 0 view .LVU877
2878 0018 FF28 cmp r0, #255
2879 001a 00D9 bls .L293
1178:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** length = RT_CONSOLEBUF_SIZE - 1;
2880 .loc 1 1178 16 view .LVU878
2881 001c FF23 movs r3, #255
2882 .L293:
2883 .LVL327:
1179:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_USING_DEVICE
1180:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (_console_device == RT_NULL)
2884 .loc 1 1180 5 is_stmt 1 view .LVU879
2885 .loc 1 1180 25 is_stmt 0 view .LVU880
2886 001e 0C4A ldr r2, .L299+4
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 82
2887 0020 1068 ldr r0, [r2]
2888 .loc 1 1180 8 view .LVU881
2889 0022 78B1 cbz r0, .L298
2890 .LBB21:
1181:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1182:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_hw_console_output(rt_log_buf);
1183:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1184:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else
1185:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1186:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_uint16_t old_flag = _console_device->open_flag;
2891 .loc 1 1186 9 is_stmt 1 view .LVU882
2892 .loc 1 1186 21 is_stmt 0 view .LVU883
2893 0024 048C ldrh r4, [r0, #32]
2894 .LVL328:
1187:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1188:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** _console_device->open_flag |= RT_DEVICE_FLAG_STREAM;
2895 .loc 1 1188 9 is_stmt 1 view .LVU884
2896 .loc 1 1188 36 is_stmt 0 view .LVU885
2897 0026 44F04002 orr r2, r4, #64
2898 002a 0284 strh r2, [r0, #32] @ movhi
1189:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_device_write(_console_device, 0, rt_log_buf, length);
2899 .loc 1 1189 9 is_stmt 1 view .LVU886
2900 002c 074A ldr r2, .L299
2901 002e 0021 movs r1, #0
2902 0030 FFF7FEFF bl rt_device_write
2903 .LVL329:
1190:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** _console_device->open_flag = old_flag;
2904 .loc 1 1190 9 view .LVU887
2905 .loc 1 1190 24 is_stmt 0 view .LVU888
2906 0034 064B ldr r3, .L299+4
2907 0036 1B68 ldr r3, [r3]
2908 .loc 1 1190 36 view .LVU889
2909 0038 1C84 strh r4, [r3, #32] @ movhi
2910 .LBE21:
1191:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1192:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #else
1193:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_hw_console_output(rt_log_buf);
1194:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
1195:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** va_end(args);
2911 .loc 1 1195 5 is_stmt 1 view .LVU890
2912 .LVL330:
2913 .L292:
1196:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2914 .loc 1 1196 1 is_stmt 0 view .LVU891
2915 003a 02B0 add sp, sp, #8
2916 .LCFI44:
2917 .cfi_remember_state
2918 .cfi_def_cfa_offset 24
2919 @ sp needed
2920 003c BDE81040 pop {r4, lr}
2921 .LCFI45:
2922 .cfi_restore 14
2923 .cfi_restore 4
2924 .cfi_def_cfa_offset 16
2925 0040 04B0 add sp, sp, #16
2926 .LCFI46:
2927 .cfi_restore 3
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 83
2928 .cfi_restore 2
2929 .cfi_restore 1
2930 .cfi_restore 0
2931 .cfi_def_cfa_offset 0
2932 0042 7047 bx lr
2933 .LVL331:
2934 .L298:
2935 .LCFI47:
2936 .cfi_restore_state
1182:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2937 .loc 1 1182 9 is_stmt 1 view .LVU892
2938 0044 0148 ldr r0, .L299
2939 0046 FFF7FEFF bl rt_hw_console_output
2940 .LVL332:
1182:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
2941 .loc 1 1182 9 is_stmt 0 view .LVU893
2942 004a F6E7 b .L292
2943 .L300:
2944 .align 2
2945 .L299:
2946 004c 00000000 .word .LANCHOR4
2947 0050 00000000 .word .LANCHOR3
2948 .cfi_endproc
2949 .LFE42:
2951 .section .rodata.rt_show_version.str1.4,"aMS",%progbits,1
2952 .align 2
2953 .LC1:
2954 0000 0A205C20 .ascii "\012 \\ | /\012\000"
2954 7C202F0A
2954 00
2955 0009 000000 .align 2
2956 .LC2:
2957 000c 2D205254 .ascii "- RT - Thread Operating System\012\000"
2957 202D2020
2957 20202054
2957 68726561
2957 64204F70
2958 .align 2
2959 .LC3:
2960 0030 202F207C .ascii " / | \\ %d.%d.%d build %s\012\000"
2960 205C2020
2960 20202025
2960 642E2564
2960 2E256420
2961 004e 0000 .align 2
2962 .LC4:
2963 0050 4F637420 .ascii "Oct 17 2022\000"
2963 31372032
2963 30323200
2964 .align 2
2965 .LC5:
2966 005c 20323030 .ascii " 2006 - 2020 Copyright by rt-thread team\012\000"
2966 36202D20
2966 32303230
2966 20436F70
2966 79726967
2967 .section .text.rt_show_version,"ax",%progbits
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 84
2968 .align 1
2969 .global rt_show_version
2970 .syntax unified
2971 .thumb
2972 .thumb_func
2973 .fpu softvfp
2975 rt_show_version:
2976 .LFB30:
521:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_kprintf("\n \\ | /\n");
2977 .loc 1 521 1 is_stmt 1 view -0
2978 .cfi_startproc
2979 @ args = 0, pretend = 0, frame = 0
2980 @ frame_needed = 0, uses_anonymous_args = 0
2981 0000 00B5 push {lr}
2982 .LCFI48:
2983 .cfi_def_cfa_offset 4
2984 .cfi_offset 14, -4
2985 0002 83B0 sub sp, sp, #12
2986 .LCFI49:
2987 .cfi_def_cfa_offset 16
522:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_kprintf("- RT - Thread Operating System\n");
2988 .loc 1 522 5 view .LVU895
2989 0004 0948 ldr r0, .L303
2990 0006 FFF7FEFF bl rt_kprintf
2991 .LVL333:
523:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_kprintf(" / | \\ %d.%d.%d build %s\n",
2992 .loc 1 523 5 view .LVU896
2993 000a 0948 ldr r0, .L303+4
2994 000c FFF7FEFF bl rt_kprintf
2995 .LVL334:
524:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** RT_VERSION, RT_SUBVERSION, RT_REVISION, __DATE__);
2996 .loc 1 524 5 view .LVU897
2997 0010 084B ldr r3, .L303+8
2998 0012 0093 str r3, [sp]
2999 0014 0523 movs r3, #5
3000 0016 0122 movs r2, #1
3001 0018 0321 movs r1, #3
3002 001a 0748 ldr r0, .L303+12
3003 001c FFF7FEFF bl rt_kprintf
3004 .LVL335:
526:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
3005 .loc 1 526 5 view .LVU898
3006 0020 0648 ldr r0, .L303+16
3007 0022 FFF7FEFF bl rt_kprintf
3008 .LVL336:
527:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
3009 .loc 1 527 1 is_stmt 0 view .LVU899
3010 0026 03B0 add sp, sp, #12
3011 .LCFI50:
3012 .cfi_def_cfa_offset 4
3013 @ sp needed
3014 0028 5DF804FB ldr pc, [sp], #4
3015 .L304:
3016 .align 2
3017 .L303:
3018 002c 00000000 .word .LC1
3019 0030 0C000000 .word .LC2
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 85
3020 0034 50000000 .word .LC4
3021 0038 30000000 .word .LC3
3022 003c 5C000000 .word .LC5
3023 .cfi_endproc
3024 .LFE30:
3026 .section .text.rt_malloc_align,"ax",%progbits
3027 .align 1
3028 .global rt_malloc_align
3029 .syntax unified
3030 .thumb
3031 .thumb_func
3032 .fpu softvfp
3034 rt_malloc_align:
3035 .LVL337:
3036 .LFB43:
1197:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
1198:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1199:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_USING_HEAP
1200:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
1201:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function allocates a memory block, which address is aligned to the
1202:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * specified alignment size.
1203:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
1204:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param size the allocated memory block size
1205:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param align the alignment size
1206:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
1207:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @return the allocated memory block on successful, otherwise returns RT_NULL
1208:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
1209:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** void *rt_malloc_align(rt_size_t size, rt_size_t align)
1210:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
3037 .loc 1 1210 1 is_stmt 1 view -0
3038 .cfi_startproc
3039 @ args = 0, pretend = 0, frame = 0
3040 @ frame_needed = 0, uses_anonymous_args = 0
3041 .loc 1 1210 1 is_stmt 0 view .LVU901
3042 0000 10B5 push {r4, lr}
3043 .LCFI51:
3044 .cfi_def_cfa_offset 8
3045 .cfi_offset 4, -8
3046 .cfi_offset 14, -4
1211:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** void *ptr;
3047 .loc 1 1211 5 is_stmt 1 view .LVU902
1212:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** void *align_ptr;
3048 .loc 1 1212 5 view .LVU903
1213:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int uintptr_size;
3049 .loc 1 1213 5 view .LVU904
1214:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_size_t align_size;
3050 .loc 1 1214 5 view .LVU905
1215:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1216:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* sizeof pointer */
1217:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** uintptr_size = sizeof(void*);
3051 .loc 1 1217 5 view .LVU906
3052 .LVL338:
1218:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** uintptr_size -= 1;
3053 .loc 1 1218 5 view .LVU907
1219:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1220:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* align the alignment size to uintptr size byte */
1221:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** align = ((align + uintptr_size) & ~uintptr_size);
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 86
3054 .loc 1 1221 5 view .LVU908
3055 .loc 1 1221 21 is_stmt 0 view .LVU909
3056 0002 CC1C adds r4, r1, #3
3057 .loc 1 1221 11 view .LVU910
3058 0004 24F00304 bic r4, r4, #3
3059 .LVL339:
1222:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1223:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* get total aligned size */
1224:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** align_size = ((size + uintptr_size) & ~uintptr_size) + align;
3060 .loc 1 1224 5 is_stmt 1 view .LVU911
3061 .loc 1 1224 25 is_stmt 0 view .LVU912
3062 0008 0330 adds r0, r0, #3
3063 .LVL340:
3064 .loc 1 1224 41 view .LVU913
3065 000a 20F00300 bic r0, r0, #3
3066 .LVL341:
1225:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* allocate memory block from heap */
1226:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ptr = rt_malloc(align_size);
3067 .loc 1 1226 5 is_stmt 1 view .LVU914
3068 .loc 1 1226 11 is_stmt 0 view .LVU915
3069 000e 2044 add r0, r0, r4
3070 .LVL342:
3071 .loc 1 1226 11 view .LVU916
3072 0010 FFF7FEFF bl rt_malloc
3073 .LVL343:
1227:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (ptr != RT_NULL)
3074 .loc 1 1227 5 is_stmt 1 view .LVU917
3075 .loc 1 1227 8 is_stmt 0 view .LVU918
3076 0014 30B1 cbz r0, .L305
1228:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1229:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* the allocated memory block is aligned */
1230:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (((rt_ubase_t)ptr & (align - 1)) == 0)
3077 .loc 1 1230 9 is_stmt 1 view .LVU919
3078 .loc 1 1230 39 is_stmt 0 view .LVU920
3079 0016 631E subs r3, r4, #1
3080 .loc 1 1230 14 view .LVU921
3081 0018 0246 mov r2, r0
3082 .loc 1 1230 12 view .LVU922
3083 001a 1842 tst r0, r3
3084 001c 03D1 bne .L307
1231:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1232:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** align_ptr = (void *)((rt_ubase_t)ptr + align);
3085 .loc 1 1232 13 is_stmt 1 view .LVU923
3086 .loc 1 1232 50 is_stmt 0 view .LVU924
3087 001e 2044 add r0, r0, r4
3088 .LVL344:
3089 .L308:
1233:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1234:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else
1235:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1236:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** align_ptr = (void *)(((rt_ubase_t)ptr + (align - 1)) & ~(align - 1));
1237:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1238:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1239:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* set the pointer before alignment pointer to the real pointer */
1240:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *((rt_ubase_t *)((rt_ubase_t)align_ptr - sizeof(void *))) = (rt_ubase_t)ptr;
3090 .loc 1 1240 9 is_stmt 1 view .LVU925
3091 .loc 1 1240 67 is_stmt 0 view .LVU926
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 87
3092 0020 40F8042C str r2, [r0, #-4]
1241:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1242:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** ptr = align_ptr;
3093 .loc 1 1242 9 is_stmt 1 view .LVU927
3094 .LVL345:
1243:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1244:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1245:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return ptr;
3095 .loc 1 1245 5 view .LVU928
3096 .L305:
1246:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
3097 .loc 1 1246 1 is_stmt 0 view .LVU929
3098 0024 10BD pop {r4, pc}
3099 .LVL346:
3100 .L307:
1236:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
3101 .loc 1 1236 13 is_stmt 1 view .LVU930
1236:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
3102 .loc 1 1236 51 is_stmt 0 view .LVU931
3103 0026 2044 add r0, r0, r4
3104 0028 0138 subs r0, r0, #1
1236:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
3105 .loc 1 1236 68 view .LVU932
3106 002a 6442 rsbs r4, r4, #0
3107 .LVL347:
1236:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
3108 .loc 1 1236 66 view .LVU933
3109 002c 2040 ands r0, r0, r4
3110 .LVL348:
1236:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
3111 .loc 1 1236 66 view .LVU934
3112 002e F7E7 b .L308
3113 .cfi_endproc
3114 .LFE43:
3116 .section .text.rt_free_align,"ax",%progbits
3117 .align 1
3118 .global rt_free_align
3119 .syntax unified
3120 .thumb
3121 .thumb_func
3122 .fpu softvfp
3124 rt_free_align:
3125 .LVL349:
3126 .LFB44:
1247:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1248:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
1249:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function release the memory block, which is allocated by
1250:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * rt_malloc_align function and address is aligned.
1251:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
1252:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param ptr the memory block pointer
1253:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
1254:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** void rt_free_align(void *ptr)
1255:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
3127 .loc 1 1255 1 is_stmt 1 view -0
3128 .cfi_startproc
3129 @ args = 0, pretend = 0, frame = 0
3130 @ frame_needed = 0, uses_anonymous_args = 0
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 88
3131 .loc 1 1255 1 is_stmt 0 view .LVU936
3132 0000 08B5 push {r3, lr}
3133 .LCFI52:
3134 .cfi_def_cfa_offset 8
3135 .cfi_offset 3, -8
3136 .cfi_offset 14, -4
1256:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** void *real_ptr;
3137 .loc 1 1256 5 is_stmt 1 view .LVU937
1257:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1258:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** real_ptr = (void *) * (rt_ubase_t *)((rt_ubase_t)ptr - sizeof(void *));
3138 .loc 1 1258 5 view .LVU938
3139 .LVL350:
1259:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_free(real_ptr);
3140 .loc 1 1259 5 view .LVU939
3141 0002 50F8040C ldr r0, [r0, #-4]
3142 .LVL351:
3143 .loc 1 1259 5 is_stmt 0 view .LVU940
3144 0006 FFF7FEFF bl rt_free
3145 .LVL352:
1260:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
3146 .loc 1 1260 1 view .LVU941
3147 000a 08BD pop {r3, pc}
3148 .cfi_endproc
3149 .LFE44:
3151 .section .text.__rt_ffs,"ax",%progbits
3152 .align 1
3153 .global __rt_ffs
3154 .syntax unified
3155 .thumb
3156 .thumb_func
3157 .fpu softvfp
3159 __rt_ffs:
3160 .LVL353:
3161 .LFB45:
1261:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
1262:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1263:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifndef RT_USING_CPU_FFS
1264:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** const rt_uint8_t __lowest_bit_bitmap[] =
1265:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1266:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* 00 */ 0, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
1267:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* 10 */ 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
1268:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* 20 */ 5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
1269:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* 30 */ 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
1270:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* 40 */ 6, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
1271:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* 50 */ 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
1272:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* 60 */ 5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
1273:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* 70 */ 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
1274:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* 80 */ 7, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
1275:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* 90 */ 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
1276:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* A0 */ 5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
1277:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* B0 */ 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
1278:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* C0 */ 6, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
1279:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* D0 */ 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
1280:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* E0 */ 5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0,
1281:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* F0 */ 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0
1282:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** };
1283:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 89
1284:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
1285:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function finds the first bit set (beginning with the least significant bit)
1286:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * in value and return the index of that bit.
1287:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
1288:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * Bits are numbered starting at 1 (the least significant bit). A return value of
1289:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * zero from any of these functions means that the argument was zero.
1290:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
1291:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @return return the index of the first bit set. If value is 0, then this function
1292:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * shall return 0.
1293:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
1294:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** int __rt_ffs(int value)
1295:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
3162 .loc 1 1295 1 is_stmt 1 view -0
3163 .cfi_startproc
3164 @ args = 0, pretend = 0, frame = 0
3165 @ frame_needed = 0, uses_anonymous_args = 0
3166 @ link register save eliminated.
1296:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (value == 0) return 0;
3167 .loc 1 1296 5 view .LVU943
3168 .loc 1 1296 8 is_stmt 0 view .LVU944
3169 0000 E8B1 cbz r0, .L317
1297:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1298:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (value & 0xff)
3170 .loc 1 1298 5 is_stmt 1 view .LVU945
3171 .loc 1 1298 8 is_stmt 0 view .LVU946
3172 0002 10F0FF02 ands r2, r0, #255
3173 0006 0AD1 bne .L318
1299:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return __lowest_bit_bitmap[value & 0xff] + 1;
1300:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1301:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (value & 0xff00)
3174 .loc 1 1301 5 is_stmt 1 view .LVU947
3175 .loc 1 1301 8 is_stmt 0 view .LVU948
3176 0008 10F47F4F tst r0, #65280
3177 000c 0BD1 bne .L319
1302:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return __lowest_bit_bitmap[(value & 0xff00) >> 8] + 9;
1303:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1304:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (value & 0xff0000)
3178 .loc 1 1304 5 is_stmt 1 view .LVU949
3179 .loc 1 1304 8 is_stmt 0 view .LVU950
3180 000e 10F47F0F tst r0, #16711680
3181 0012 0ED1 bne .L320
1305:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return __lowest_bit_bitmap[(value & 0xff0000) >> 16] + 17;
1306:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1307:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return __lowest_bit_bitmap[(value & 0xff000000) >> 24] + 25;
3182 .loc 1 1307 5 is_stmt 1 view .LVU951
3183 .loc 1 1307 53 is_stmt 0 view .LVU952
3184 0014 030E lsrs r3, r0, #24
3185 .loc 1 1307 31 view .LVU953
3186 0016 0A4A ldr r2, .L321
3187 0018 D05C ldrb r0, [r2, r3] @ zero_extendqisi2
3188 .LVL354:
3189 .loc 1 1307 60 view .LVU954
3190 001a 1930 adds r0, r0, #25
3191 001c 7047 bx lr
3192 .LVL355:
3193 .L318:
1299:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 90
3194 .loc 1 1299 9 is_stmt 1 view .LVU955
1299:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
3195 .loc 1 1299 35 is_stmt 0 view .LVU956
3196 001e 084B ldr r3, .L321
3197 0020 985C ldrb r0, [r3, r2] @ zero_extendqisi2
3198 .LVL356:
1299:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
3199 .loc 1 1299 50 view .LVU957
3200 0022 0130 adds r0, r0, #1
3201 0024 7047 bx lr
3202 .LVL357:
3203 .L319:
1302:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return __lowest_bit_bitmap[(value & 0xff00) >> 8] + 9;
3204 .loc 1 1302 9 is_stmt 1 view .LVU958
1302:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return __lowest_bit_bitmap[(value & 0xff00) >> 8] + 9;
3205 .loc 1 1302 53 is_stmt 0 view .LVU959
3206 0026 C0F30723 ubfx r3, r0, #8, #8
1302:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return __lowest_bit_bitmap[(value & 0xff00) >> 8] + 9;
3207 .loc 1 1302 35 view .LVU960
3208 002a 054A ldr r2, .L321
3209 002c D05C ldrb r0, [r2, r3] @ zero_extendqisi2
3210 .LVL358:
1302:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return __lowest_bit_bitmap[(value & 0xff00) >> 8] + 9;
3211 .loc 1 1302 59 view .LVU961
3212 002e 0930 adds r0, r0, #9
3213 0030 7047 bx lr
3214 .LVL359:
3215 .L320:
1305:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return __lowest_bit_bitmap[(value & 0xff0000) >> 16] + 17;
3216 .loc 1 1305 9 is_stmt 1 view .LVU962
1305:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return __lowest_bit_bitmap[(value & 0xff0000) >> 16] + 17;
3217 .loc 1 1305 55 is_stmt 0 view .LVU963
3218 0032 C0F30743 ubfx r3, r0, #16, #8
1305:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return __lowest_bit_bitmap[(value & 0xff0000) >> 16] + 17;
3219 .loc 1 1305 35 view .LVU964
3220 0036 024A ldr r2, .L321
3221 0038 D05C ldrb r0, [r2, r3] @ zero_extendqisi2
3222 .LVL360:
1305:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** return __lowest_bit_bitmap[(value & 0xff0000) >> 16] + 17;
3223 .loc 1 1305 62 view .LVU965
3224 003a 1130 adds r0, r0, #17
3225 003c 7047 bx lr
3226 .LVL361:
3227 .L317:
1308:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
3228 .loc 1 1308 1 view .LVU966
3229 003e 7047 bx lr
3230 .L322:
3231 .align 2
3232 .L321:
3233 0040 00000000 .word .LANCHOR5
3234 .cfi_endproc
3235 .LFE45:
3237 .section .text.rt_assert_set_hook,"ax",%progbits
3238 .align 1
3239 .global rt_assert_set_hook
3240 .syntax unified
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 91
3241 .thumb
3242 .thumb_func
3243 .fpu softvfp
3245 rt_assert_set_hook:
3246 .LVL362:
3247 .LFB46:
1309:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #endif
1310:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1311:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** #ifdef RT_DEBUG
1312:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /* RT_ASSERT(EX)'s hook */
1313:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1314:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** void (*rt_assert_hook)(const char *ex, const char *func, rt_size_t line);
1315:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1316:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
1317:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * This function will set a hook function to RT_ASSERT(EX). It will run when the expression is fals
1318:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
1319:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param hook the hook function
1320:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
1321:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** void rt_assert_set_hook(void (*hook)(const char *ex, const char *func, rt_size_t line))
1322:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
3248 .loc 1 1322 1 is_stmt 1 view -0
3249 .cfi_startproc
3250 @ args = 0, pretend = 0, frame = 0
3251 @ frame_needed = 0, uses_anonymous_args = 0
3252 @ link register save eliminated.
1323:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_assert_hook = hook;
3253 .loc 1 1323 5 view .LVU968
3254 .loc 1 1323 20 is_stmt 0 view .LVU969
3255 0000 014B ldr r3, .L324
3256 0002 1860 str r0, [r3]
1324:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
3257 .loc 1 1324 1 view .LVU970
3258 0004 7047 bx lr
3259 .L325:
3260 0006 00BF .align 2
3261 .L324:
3262 0008 00000000 .word .LANCHOR6
3263 .cfi_endproc
3264 .LFE46:
3266 .section .rodata.rt_assert_handler.str1.4,"aMS",%progbits,1
3267 .align 2
3268 .LC6:
3269 0000 28257329 .ascii "(%s) assertion failed at function:%s, line number:%"
3269 20617373
3269 65727469
3269 6F6E2066
3269 61696C65
3270 0033 64200A00 .ascii "d \012\000"
3271 .section .text.rt_assert_handler,"ax",%progbits
3272 .align 1
3273 .global rt_assert_handler
3274 .syntax unified
3275 .thumb
3276 .thumb_func
3277 .fpu softvfp
3279 rt_assert_handler:
3280 .LVL363:
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 92
3281 .LFB47:
1325:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1326:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** /**
1327:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * The RT_ASSERT function.
1328:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** *
1329:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param ex the assertion condition string
1330:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param func the function name when assertion.
1331:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** * @param line the file line number when assertion.
1332:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** */
1333:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** void rt_assert_handler(const char *ex_string, const char *func, rt_size_t line)
1334:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
3282 .loc 1 1334 1 is_stmt 1 view -0
3283 .cfi_startproc
3284 @ args = 0, pretend = 0, frame = 8
3285 @ frame_needed = 0, uses_anonymous_args = 0
3286 .loc 1 1334 1 is_stmt 0 view .LVU972
3287 0000 00B5 push {lr}
3288 .LCFI53:
3289 .cfi_def_cfa_offset 4
3290 .cfi_offset 14, -4
3291 0002 83B0 sub sp, sp, #12
3292 .LCFI54:
3293 .cfi_def_cfa_offset 16
1335:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** volatile char dummy = 0;
3294 .loc 1 1335 5 is_stmt 1 view .LVU973
3295 .loc 1 1335 19 is_stmt 0 view .LVU974
3296 0004 0023 movs r3, #0
3297 0006 8DF80730 strb r3, [sp, #7]
1336:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c ****
1337:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** if (rt_assert_hook == RT_NULL)
3298 .loc 1 1337 5 is_stmt 1 view .LVU975
3299 .loc 1 1337 24 is_stmt 0 view .LVU976
3300 000a 094B ldr r3, .L332
3301 000c 1B68 ldr r3, [r3]
3302 .loc 1 1337 8 view .LVU977
3303 000e 1BB1 cbz r3, .L331
1338:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1339:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_kprintf("(%s) assertion failed at function:%s, line number:%d \n", ex_string, func, line
1340:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (dummy == 0);
1341:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1342:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** else
1343:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** {
1344:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** rt_assert_hook(ex_string, func, line);
3304 .loc 1 1344 9 is_stmt 1 view .LVU978
3305 0010 9847 blx r3
3306 .LVL364:
3307 .L326:
1345:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
1346:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
3308 .loc 1 1346 1 is_stmt 0 view .LVU979
3309 0012 03B0 add sp, sp, #12
3310 .LCFI55:
3311 .cfi_remember_state
3312 .cfi_def_cfa_offset 4
3313 @ sp needed
3314 0014 5DF804FB ldr pc, [sp], #4
3315 .LVL365:
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 93
3316 .L331:
3317 .LCFI56:
3318 .cfi_restore_state
1339:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (dummy == 0);
3319 .loc 1 1339 9 is_stmt 1 view .LVU980
3320 0018 1346 mov r3, r2
3321 001a 0A46 mov r2, r1
3322 .LVL366:
1339:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (dummy == 0);
3323 .loc 1 1339 9 is_stmt 0 view .LVU981
3324 001c 0146 mov r1, r0
3325 .LVL367:
1339:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (dummy == 0);
3326 .loc 1 1339 9 view .LVU982
3327 001e 0548 ldr r0, .L332+4
3328 .LVL368:
1339:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** while (dummy == 0);
3329 .loc 1 1339 9 view .LVU983
3330 0020 FFF7FEFF bl rt_kprintf
3331 .LVL369:
1340:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
3332 .loc 1 1340 9 is_stmt 1 view .LVU984
3333 .L328:
1340:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
3334 .loc 1 1340 27 discriminator 1 view .LVU985
1340:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
3335 .loc 1 1340 15 discriminator 1 view .LVU986
1340:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
3336 .loc 1 1340 22 is_stmt 0 discriminator 1 view .LVU987
3337 0024 9DF80730 ldrb r3, [sp, #7] @ zero_extendqisi2
1340:Middlewares/Third_Party/RealThread_RTOS/src/kservice.c **** }
3338 .loc 1 1340 15 discriminator 1 view .LVU988
3339 0028 002B cmp r3, #0
3340 002a FBD0 beq .L328
3341 002c F1E7 b .L326
3342 .L333:
3343 002e 00BF .align 2
3344 .L332:
3345 0030 00000000 .word .LANCHOR6
3346 0034 00000000 .word .LC6
3347 .cfi_endproc
3348 .LFE47:
3350 .global rt_assert_hook
3351 .global __lowest_bit_bitmap
3352 .section .bss.__rt_errno,"aw",%nobits
3353 .align 2
3354 .set .LANCHOR2,. + 0
3357 __rt_errno:
3358 0000 00000000 .space 4
3359 .section .bss._console_device,"aw",%nobits
3360 .align 2
3361 .set .LANCHOR3,. + 0
3364 _console_device:
3365 0000 00000000 .space 4
3366 .section .bss.rt_assert_hook,"aw",%nobits
3367 .align 2
3368 .set .LANCHOR6,. + 0
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 94
3371 rt_assert_hook:
3372 0000 00000000 .space 4
3373 .section .bss.rt_log_buf.0,"aw",%nobits
3374 .align 2
3375 .set .LANCHOR4,. + 0
3378 rt_log_buf.0:
3379 0000 00000000 .space 256
3379 00000000
3379 00000000
3379 00000000
3379 00000000
3380 .section .rodata.__lowest_bit_bitmap,"a"
3381 .align 2
3382 .set .LANCHOR5,. + 0
3385 __lowest_bit_bitmap:
3386 0000 00000100 .ascii "\000\000\001\000\002\000\001\000\003\000\001\000\002"
3386 02000100
3386 03000100
3386 02
3387 000d 00010004 .ascii "\000\001\000\004\000\001\000\002\000\001\000\003\000"
3387 00010002
3387 00010003
3387 00
3388 001a 01000200 .ascii "\001\000\002\000\001\000\005\000\001\000\002\000\001"
3388 01000500
3388 01000200
3388 01
3389 0027 00030001 .ascii "\000\003\000\001\000\002\000\001\000\004\000\001\000"
3389 00020001
3389 00040001
3389 00
3390 0034 02000100 .ascii "\002\000\001\000\003\000\001\000\002\000\001\000\006"
3390 03000100
3390 02000100
3390 06
3391 0041 00010002 .ascii "\000\001\000\002\000\001\000\003\000\001\000\002\000"
3391 00010003
3391 00010002
3391 00
3392 004e 01000400 .ascii "\001\000\004\000\001\000\002\000\001\000\003\000\001"
3392 01000200
3392 01000300
3392 01
3393 005b 00020001 .ascii "\000\002\000\001\000\005\000\001\000\002\000\001\000"
3393 00050001
3393 00020001
3393 00
3394 0068 03000100 .ascii "\003\000\001\000\002\000\001\000\004\000\001\000\002"
3394 02000100
3394 04000100
3394 02
3395 0075 00010003 .ascii "\000\001\000\003\000\001\000\002\000\001\000\007\000"
3395 00010002
3395 00010007
3395 00
3396 0082 01000200 .ascii "\001\000\002\000\001\000\003\000\001\000\002\000\001"
3396 01000300
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 95
3396 01000200
3396 01
3397 008f 00040001 .ascii "\000\004\000\001\000\002\000\001\000\003\000\001\000"
3397 00020001
3397 00030001
3397 00
3398 009c 02000100 .ascii "\002\000\001\000\005\000\001\000\002\000\001\000\003"
3398 05000100
3398 02000100
3398 03
3399 00a9 00010002 .ascii "\000\001\000\002\000\001\000\004\000\001\000\002\000"
3399 00010004
3399 00010002
3399 00
3400 00b6 01000300 .ascii "\001\000\003\000\001\000\002\000\001\000\006\000\001"
3400 01000200
3400 01000600
3400 01
3401 00c3 00020001 .ascii "\000\002\000\001\000\003\000\001\000\002\000\001\000"
3401 00030001
3401 00020001
3401 00
3402 00d0 04000100 .ascii "\004\000\001\000\002\000\001\000\003\000\001\000\002"
3402 02000100
3402 03000100
3402 02
3403 00dd 00010005 .ascii "\000\001\000\005\000\001\000\002\000\001\000\003\000"
3403 00010002
3403 00010003
3403 00
3404 00ea 01000200 .ascii "\001\000\002\000\001\000\004\000\001\000\002\000\001"
3404 01000400
3404 01000200
3404 01
3405 00f7 00030001 .ascii "\000\003\000\001\000\002\000\001\000"
3405 00020001
3405 00
3406 .section .rodata.large_digits.2,"a"
3407 .align 2
3408 .set .LANCHOR1,. + 0
3411 large_digits.2:
3412 0000 30313233 .ascii "0123456789ABCDEF\000"
3412 34353637
3412 38394142
3412 43444546
3412 00
3413 .section .rodata.small_digits.1,"a"
3414 .align 2
3415 .set .LANCHOR0,. + 0
3418 small_digits.1:
3419 0000 30313233 .ascii "0123456789abcdef\000"
3419 34353637
3419 38396162
3419 63646566
3419 00
3420 .text
3421 .Letext0:
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 96
3422 .file 2 "Middlewares/Third_Party/RealThread_RTOS/include/rtdef.h"
3423 .file 3 "Middlewares/Third_Party/RealThread_RTOS/include/rtthread.h"
3424 .file 4 "<built-in>"
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 97
DEFINED SYMBOLS
*ABS*:00000000 kservice.c
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:16 .text.print_number:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:23 .text.print_number:00000000 print_number
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:422 .text.print_number:0000015c $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:429 .text.rt_get_errno:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:436 .text.rt_get_errno:00000000 rt_get_errno
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:487 .text.rt_get_errno:00000020 $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:492 .text.rt_set_errno:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:499 .text.rt_set_errno:00000000 rt_set_errno
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:551 .text.rt_set_errno:00000020 $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:556 .text._rt_errno:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:563 .text._rt_errno:00000000 _rt_errno
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:610 .text._rt_errno:0000001c $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:615 .text.rt_memset:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:622 .text.rt_memset:00000000 rt_memset
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:772 .text.rt_memcpy:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:779 .text.rt_memcpy:00000000 rt_memcpy
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:934 .text.rt_memmove:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:941 .text.rt_memmove:00000000 rt_memmove
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:1025 .text.rt_memcmp:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:1032 .text.rt_memcmp:00000000 rt_memcmp
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:1086 .text.rt_strcasecmp:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:1093 .text.rt_strcasecmp:00000000 rt_strcasecmp
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:1167 .text.rt_strncpy:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:1174 .text.rt_strncpy:00000000 rt_strncpy
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:1255 .text.rt_strncmp:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:1262 .text.rt_strncmp:00000000 rt_strncmp
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:1327 .text.rt_strcmp:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:1334 .text.rt_strcmp:00000000 rt_strcmp
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:1377 .text.rt_strnlen:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:1384 .text.rt_strnlen:00000000 rt_strnlen
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:1425 .text.rt_strlen:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:1432 .text.rt_strlen:00000000 rt_strlen
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:1468 .text.rt_strstr:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:1475 .text.rt_strstr:00000000 rt_strstr
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:1558 .text.rt_strdup:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:1565 .text.rt_strdup:00000000 rt_strdup
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:1612 .rodata.rt_vsnprintf.str1.4:00000000 $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:1616 .text.rt_vsnprintf:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:1623 .text.rt_vsnprintf:00000000 rt_vsnprintf
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:1972 .text.rt_vsnprintf:0000013c $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2455 .text.rt_vsnprintf:000002f4 $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2460 .text.rt_snprintf:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2467 .text.rt_snprintf:00000000 rt_snprintf
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2518 .text.rt_vsprintf:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2525 .text.rt_vsprintf:00000000 rt_vsprintf
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2555 .text.rt_sprintf:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2562 .text.rt_sprintf:00000000 rt_sprintf
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2615 .text.rt_console_get_device:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2622 .text.rt_console_get_device:00000000 rt_console_get_device
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2637 .text.rt_console_get_device:00000008 $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2642 .text.rt_console_set_device:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2649 .text.rt_console_set_device:00000000 rt_console_set_device
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2717 .text.rt_console_set_device:00000030 $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2722 .text.rt_hw_console_output:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2729 .text.rt_hw_console_output:00000000 rt_hw_console_output
ARM GAS C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s page 98
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2743 .text.rt_kputs:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2750 .text.rt_kputs:00000000 rt_kputs
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2826 .text.rt_kputs:00000034 $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2831 .text.rt_kprintf:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2838 .text.rt_kprintf:00000000 rt_kprintf
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2946 .text.rt_kprintf:0000004c $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2952 .rodata.rt_show_version.str1.4:00000000 $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2968 .text.rt_show_version:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2975 .text.rt_show_version:00000000 rt_show_version
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3018 .text.rt_show_version:0000002c $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3027 .text.rt_malloc_align:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3034 .text.rt_malloc_align:00000000 rt_malloc_align
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3117 .text.rt_free_align:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3124 .text.rt_free_align:00000000 rt_free_align
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3152 .text.__rt_ffs:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3159 .text.__rt_ffs:00000000 __rt_ffs
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3233 .text.__rt_ffs:00000040 $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3238 .text.rt_assert_set_hook:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3245 .text.rt_assert_set_hook:00000000 rt_assert_set_hook
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3262 .text.rt_assert_set_hook:00000008 $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3267 .rodata.rt_assert_handler.str1.4:00000000 $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3272 .text.rt_assert_handler:00000000 $t
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3279 .text.rt_assert_handler:00000000 rt_assert_handler
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3345 .text.rt_assert_handler:00000030 $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3371 .bss.rt_assert_hook:00000000 rt_assert_hook
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3385 .rodata.__lowest_bit_bitmap:00000000 __lowest_bit_bitmap
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3353 .bss.__rt_errno:00000000 $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3357 .bss.__rt_errno:00000000 __rt_errno
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3360 .bss._console_device:00000000 $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3364 .bss._console_device:00000000 _console_device
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3367 .bss.rt_assert_hook:00000000 $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3374 .bss.rt_log_buf.0:00000000 $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3378 .bss.rt_log_buf.0:00000000 rt_log_buf.0
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3381 .rodata.__lowest_bit_bitmap:00000000 $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3407 .rodata.large_digits.2:00000000 $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3411 .rodata.large_digits.2:00000000 large_digits.2
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3414 .rodata.small_digits.1:00000000 $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:3418 .rodata.small_digits.1:00000000 small_digits.1
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2005 .text.rt_vsnprintf:0000015d $d
C:\Users\Administrator\AppData\Local\Temp\cceKgs9b.s:2005 .text.rt_vsnprintf:0000015e $t
UNDEFINED SYMBOLS
rt_interrupt_get_nest
rt_thread_self
rt_malloc
rt_device_find
rt_device_close
rt_device_open
rt_device_write
rt_free
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。