ARM GAS /tmp/ccfpmOVP.s page 1 1 .cpu cortex-m4 2 .arch armv7e-m 3 .fpu fpv4-sp-d16 4 .eabi_attribute 27, 1 5 .eabi_attribute 28, 1 6 .eabi_attribute 20, 1 7 .eabi_attribute 21, 1 8 .eabi_attribute 23, 3 9 .eabi_attribute 24, 1 10 .eabi_attribute 25, 1 11 .eabi_attribute 26, 1 12 .eabi_attribute 30, 1 13 .eabi_attribute 34, 1 14 .eabi_attribute 18, 4 15 .file "syscalls.c" 16 .text 17 .Ltext0: 18 .cfi_sections .debug_frame 19 .file 1 "Core/Src/syscalls.c" 20 .section .text.initialise_monitor_handles,"ax",%progbits 21 .align 1 22 .global initialise_monitor_handles 23 .syntax unified 24 .thumb 25 .thumb_func 27 initialise_monitor_handles: 28 .LFB25: 1:Core/Src/syscalls.c **** /** 2:Core/Src/syscalls.c **** ****************************************************************************** 3:Core/Src/syscalls.c **** * @file syscalls.c 4:Core/Src/syscalls.c **** * @author Auto-generated by STM32CubeMX 5:Core/Src/syscalls.c **** * @brief Minimal System calls file 6:Core/Src/syscalls.c **** * 7:Core/Src/syscalls.c **** * For more information about which c-functions 8:Core/Src/syscalls.c **** * need which of these lowlevel functions 9:Core/Src/syscalls.c **** * please consult the Newlib libc-manual 10:Core/Src/syscalls.c **** ****************************************************************************** 11:Core/Src/syscalls.c **** * @attention 12:Core/Src/syscalls.c **** * 13:Core/Src/syscalls.c **** * Copyright (c) 2020-2024 STMicroelectronics. 14:Core/Src/syscalls.c **** * All rights reserved. 15:Core/Src/syscalls.c **** * 16:Core/Src/syscalls.c **** * This software is licensed under terms that can be found in the LICENSE file 17:Core/Src/syscalls.c **** * in the root directory of this software component. 18:Core/Src/syscalls.c **** * If no LICENSE file comes with this software, it is provided AS-IS. 19:Core/Src/syscalls.c **** * 20:Core/Src/syscalls.c **** ****************************************************************************** 21:Core/Src/syscalls.c **** */ 22:Core/Src/syscalls.c **** 23:Core/Src/syscalls.c **** /* Includes */ 24:Core/Src/syscalls.c **** #include 25:Core/Src/syscalls.c **** #include 26:Core/Src/syscalls.c **** #include 27:Core/Src/syscalls.c **** #include 28:Core/Src/syscalls.c **** #include 29:Core/Src/syscalls.c **** #include 30:Core/Src/syscalls.c **** #include ARM GAS /tmp/ccfpmOVP.s page 2 31:Core/Src/syscalls.c **** #include 32:Core/Src/syscalls.c **** 33:Core/Src/syscalls.c **** 34:Core/Src/syscalls.c **** /* Variables */ 35:Core/Src/syscalls.c **** extern int __io_putchar(int ch) __attribute__((weak)); 36:Core/Src/syscalls.c **** extern int __io_getchar(void) __attribute__((weak)); 37:Core/Src/syscalls.c **** 38:Core/Src/syscalls.c **** 39:Core/Src/syscalls.c **** char *__env[1] = { 0 }; 40:Core/Src/syscalls.c **** char **environ = __env; 41:Core/Src/syscalls.c **** 42:Core/Src/syscalls.c **** 43:Core/Src/syscalls.c **** /* Functions */ 44:Core/Src/syscalls.c **** void initialise_monitor_handles() 45:Core/Src/syscalls.c **** { 29 .loc 1 45 1 view -0 30 .cfi_startproc 31 @ args = 0, pretend = 0, frame = 0 32 @ frame_needed = 0, uses_anonymous_args = 0 33 @ link register save eliminated. 46:Core/Src/syscalls.c **** } 34 .loc 1 46 1 view .LVU1 35 0000 7047 bx lr 36 .cfi_endproc 37 .LFE25: 39 .section .text._getpid,"ax",%progbits 40 .align 1 41 .global _getpid 42 .syntax unified 43 .thumb 44 .thumb_func 46 _getpid: 47 .LFB26: 47:Core/Src/syscalls.c **** 48:Core/Src/syscalls.c **** int _getpid(void) 49:Core/Src/syscalls.c **** { 48 .loc 1 49 1 view -0 49 .cfi_startproc 50 @ args = 0, pretend = 0, frame = 0 51 @ frame_needed = 0, uses_anonymous_args = 0 52 @ link register save eliminated. 50:Core/Src/syscalls.c **** return 1; 53 .loc 1 50 3 view .LVU3 51:Core/Src/syscalls.c **** } 54 .loc 1 51 1 is_stmt 0 view .LVU4 55 0000 0120 movs r0, #1 56 0002 7047 bx lr 57 .cfi_endproc 58 .LFE26: 60 .section .text._kill,"ax",%progbits 61 .align 1 62 .global _kill 63 .syntax unified 64 .thumb 65 .thumb_func 67 _kill: 68 .LVL0: ARM GAS /tmp/ccfpmOVP.s page 3 69 .LFB27: 52:Core/Src/syscalls.c **** 53:Core/Src/syscalls.c **** int _kill(int pid, int sig) 54:Core/Src/syscalls.c **** { 70 .loc 1 54 1 is_stmt 1 view -0 71 .cfi_startproc 72 @ args = 0, pretend = 0, frame = 0 73 @ frame_needed = 0, uses_anonymous_args = 0 74 .loc 1 54 1 is_stmt 0 view .LVU6 75 0000 08B5 push {r3, lr} 76 .cfi_def_cfa_offset 8 77 .cfi_offset 3, -8 78 .cfi_offset 14, -4 55:Core/Src/syscalls.c **** (void)pid; 79 .loc 1 55 3 is_stmt 1 view .LVU7 56:Core/Src/syscalls.c **** (void)sig; 80 .loc 1 56 3 view .LVU8 57:Core/Src/syscalls.c **** errno = EINVAL; 81 .loc 1 57 3 view .LVU9 82 0002 FFF7FEFF bl __errno 83 .LVL1: 84 .loc 1 57 9 is_stmt 0 discriminator 1 view .LVU10 85 0006 1623 movs r3, #22 86 0008 0360 str r3, [r0] 58:Core/Src/syscalls.c **** return -1; 87 .loc 1 58 3 is_stmt 1 view .LVU11 59:Core/Src/syscalls.c **** } 88 .loc 1 59 1 is_stmt 0 view .LVU12 89 000a 4FF0FF30 mov r0, #-1 90 000e 08BD pop {r3, pc} 91 .cfi_endproc 92 .LFE27: 94 .section .text._exit,"ax",%progbits 95 .align 1 96 .global _exit 97 .syntax unified 98 .thumb 99 .thumb_func 101 _exit: 102 .LVL2: 103 .LFB28: 60:Core/Src/syscalls.c **** 61:Core/Src/syscalls.c **** void _exit (int status) 62:Core/Src/syscalls.c **** { 104 .loc 1 62 1 is_stmt 1 view -0 105 .cfi_startproc 106 @ Volatile: function does not return. 107 @ args = 0, pretend = 0, frame = 0 108 @ frame_needed = 0, uses_anonymous_args = 0 109 .loc 1 62 1 is_stmt 0 view .LVU14 110 0000 08B5 push {r3, lr} 111 .cfi_def_cfa_offset 8 112 .cfi_offset 3, -8 113 .cfi_offset 14, -4 63:Core/Src/syscalls.c **** _kill(status, -1); 114 .loc 1 63 3 is_stmt 1 view .LVU15 115 0002 4FF0FF31 mov r1, #-1 ARM GAS /tmp/ccfpmOVP.s page 4 116 0006 FFF7FEFF bl _kill 117 .LVL3: 118 .L6: 64:Core/Src/syscalls.c **** while (1) {} /* Make sure we hang here */ 119 .loc 1 64 3 view .LVU16 120 .loc 1 64 14 view .LVU17 121 .loc 1 64 9 view .LVU18 122 000a FEE7 b .L6 123 .cfi_endproc 124 .LFE28: 126 .section .text._read,"ax",%progbits 127 .align 1 128 .weak _read 129 .syntax unified 130 .thumb 131 .thumb_func 133 _read: 134 .LVL4: 135 .LFB29: 65:Core/Src/syscalls.c **** } 66:Core/Src/syscalls.c **** 67:Core/Src/syscalls.c **** __attribute__((weak)) int _read(int file, char *ptr, int len) 68:Core/Src/syscalls.c **** { 136 .loc 1 68 1 view -0 137 .cfi_startproc 138 @ args = 0, pretend = 0, frame = 0 139 @ frame_needed = 0, uses_anonymous_args = 0 140 .loc 1 68 1 is_stmt 0 view .LVU20 141 0000 70B5 push {r4, r5, r6, lr} 142 .cfi_def_cfa_offset 16 143 .cfi_offset 4, -16 144 .cfi_offset 5, -12 145 .cfi_offset 6, -8 146 .cfi_offset 14, -4 147 0002 0C46 mov r4, r1 148 0004 1646 mov r6, r2 69:Core/Src/syscalls.c **** (void)file; 149 .loc 1 69 3 is_stmt 1 view .LVU21 70:Core/Src/syscalls.c **** int DataIdx; 150 .loc 1 70 3 view .LVU22 71:Core/Src/syscalls.c **** 72:Core/Src/syscalls.c **** for (DataIdx = 0; DataIdx < len; DataIdx++) 151 .loc 1 72 3 view .LVU23 152 .LVL5: 153 .loc 1 72 16 is_stmt 0 view .LVU24 154 0006 0025 movs r5, #0 155 .loc 1 72 3 view .LVU25 156 0008 06E0 b .L9 157 .LVL6: 158 .L10: 73:Core/Src/syscalls.c **** { 74:Core/Src/syscalls.c **** *ptr++ = __io_getchar(); 159 .loc 1 74 5 is_stmt 1 view .LVU26 160 .loc 1 74 14 is_stmt 0 view .LVU27 161 000a FFF7FEFF bl __io_getchar 162 .LVL7: 163 .loc 1 74 9 discriminator 1 view .LVU28 ARM GAS /tmp/ccfpmOVP.s page 5 164 000e 2146 mov r1, r4 165 .LVL8: 166 .loc 1 74 12 discriminator 1 view .LVU29 167 0010 01F8010B strb r0, [r1], #1 168 .LVL9: 72:Core/Src/syscalls.c **** { 169 .loc 1 72 43 is_stmt 1 discriminator 3 view .LVU30 170 0014 0135 adds r5, r5, #1 171 .LVL10: 172 .loc 1 74 9 is_stmt 0 discriminator 1 view .LVU31 173 0016 0C46 mov r4, r1 174 .LVL11: 175 .L9: 72:Core/Src/syscalls.c **** { 176 .loc 1 72 29 is_stmt 1 discriminator 1 view .LVU32 177 0018 B542 cmp r5, r6 178 001a F6DB blt .L10 75:Core/Src/syscalls.c **** } 76:Core/Src/syscalls.c **** 77:Core/Src/syscalls.c **** return len; 179 .loc 1 77 3 view .LVU33 78:Core/Src/syscalls.c **** } 180 .loc 1 78 1 is_stmt 0 view .LVU34 181 001c 3046 mov r0, r6 182 001e 70BD pop {r4, r5, r6, pc} 183 .loc 1 78 1 view .LVU35 184 .cfi_endproc 185 .LFE29: 187 .section .text._write,"ax",%progbits 188 .align 1 189 .weak _write 190 .syntax unified 191 .thumb 192 .thumb_func 194 _write: 195 .LVL12: 196 .LFB30: 79:Core/Src/syscalls.c **** 80:Core/Src/syscalls.c **** __attribute__((weak)) int _write(int file, char *ptr, int len) 81:Core/Src/syscalls.c **** { 197 .loc 1 81 1 is_stmt 1 view -0 198 .cfi_startproc 199 @ args = 0, pretend = 0, frame = 0 200 @ frame_needed = 0, uses_anonymous_args = 0 201 .loc 1 81 1 is_stmt 0 view .LVU37 202 0000 70B5 push {r4, r5, r6, lr} 203 .cfi_def_cfa_offset 16 204 .cfi_offset 4, -16 205 .cfi_offset 5, -12 206 .cfi_offset 6, -8 207 .cfi_offset 14, -4 208 0002 0C46 mov r4, r1 209 0004 1646 mov r6, r2 82:Core/Src/syscalls.c **** (void)file; 210 .loc 1 82 3 is_stmt 1 view .LVU38 83:Core/Src/syscalls.c **** int DataIdx; 211 .loc 1 83 3 view .LVU39 ARM GAS /tmp/ccfpmOVP.s page 6 84:Core/Src/syscalls.c **** 85:Core/Src/syscalls.c **** for (DataIdx = 0; DataIdx < len; DataIdx++) 212 .loc 1 85 3 view .LVU40 213 .LVL13: 214 .loc 1 85 16 is_stmt 0 view .LVU41 215 0006 0025 movs r5, #0 216 .loc 1 85 3 view .LVU42 217 0008 04E0 b .L13 218 .LVL14: 219 .L14: 86:Core/Src/syscalls.c **** { 87:Core/Src/syscalls.c **** __io_putchar(*ptr++); 220 .loc 1 87 5 is_stmt 1 view .LVU43 221 .loc 1 87 5 is_stmt 0 view .LVU44 222 000a 14F8010B ldrb r0, [r4], #1 @ zero_extendqisi2 223 .LVL15: 224 .loc 1 87 5 view .LVU45 225 000e FFF7FEFF bl __io_putchar 226 .LVL16: 85:Core/Src/syscalls.c **** { 227 .loc 1 85 43 is_stmt 1 discriminator 3 view .LVU46 228 0012 0135 adds r5, r5, #1 229 .LVL17: 230 .L13: 85:Core/Src/syscalls.c **** { 231 .loc 1 85 29 discriminator 1 view .LVU47 232 0014 B542 cmp r5, r6 233 0016 F8DB blt .L14 88:Core/Src/syscalls.c **** } 89:Core/Src/syscalls.c **** return len; 234 .loc 1 89 3 view .LVU48 90:Core/Src/syscalls.c **** } 235 .loc 1 90 1 is_stmt 0 view .LVU49 236 0018 3046 mov r0, r6 237 001a 70BD pop {r4, r5, r6, pc} 238 .loc 1 90 1 view .LVU50 239 .cfi_endproc 240 .LFE30: 242 .section .text._close,"ax",%progbits 243 .align 1 244 .global _close 245 .syntax unified 246 .thumb 247 .thumb_func 249 _close: 250 .LVL18: 251 .LFB31: 91:Core/Src/syscalls.c **** 92:Core/Src/syscalls.c **** int _close(int file) 93:Core/Src/syscalls.c **** { 252 .loc 1 93 1 is_stmt 1 view -0 253 .cfi_startproc 254 @ args = 0, pretend = 0, frame = 0 255 @ frame_needed = 0, uses_anonymous_args = 0 256 @ link register save eliminated. 94:Core/Src/syscalls.c **** (void)file; 257 .loc 1 94 3 view .LVU52 ARM GAS /tmp/ccfpmOVP.s page 7 95:Core/Src/syscalls.c **** return -1; 258 .loc 1 95 3 view .LVU53 96:Core/Src/syscalls.c **** } 259 .loc 1 96 1 is_stmt 0 view .LVU54 260 0000 4FF0FF30 mov r0, #-1 261 .LVL19: 262 .loc 1 96 1 view .LVU55 263 0004 7047 bx lr 264 .cfi_endproc 265 .LFE31: 267 .section .text._fstat,"ax",%progbits 268 .align 1 269 .global _fstat 270 .syntax unified 271 .thumb 272 .thumb_func 274 _fstat: 275 .LVL20: 276 .LFB32: 97:Core/Src/syscalls.c **** 98:Core/Src/syscalls.c **** 99:Core/Src/syscalls.c **** int _fstat(int file, struct stat *st) 100:Core/Src/syscalls.c **** { 277 .loc 1 100 1 is_stmt 1 view -0 278 .cfi_startproc 279 @ args = 0, pretend = 0, frame = 0 280 @ frame_needed = 0, uses_anonymous_args = 0 281 @ link register save eliminated. 101:Core/Src/syscalls.c **** (void)file; 282 .loc 1 101 3 view .LVU57 102:Core/Src/syscalls.c **** st->st_mode = S_IFCHR; 283 .loc 1 102 3 view .LVU58 284 .loc 1 102 15 is_stmt 0 view .LVU59 285 0000 4FF40053 mov r3, #8192 286 0004 4B60 str r3, [r1, #4] 103:Core/Src/syscalls.c **** return 0; 287 .loc 1 103 3 is_stmt 1 view .LVU60 104:Core/Src/syscalls.c **** } 288 .loc 1 104 1 is_stmt 0 view .LVU61 289 0006 0020 movs r0, #0 290 .LVL21: 291 .loc 1 104 1 view .LVU62 292 0008 7047 bx lr 293 .cfi_endproc 294 .LFE32: 296 .section .text._isatty,"ax",%progbits 297 .align 1 298 .global _isatty 299 .syntax unified 300 .thumb 301 .thumb_func 303 _isatty: 304 .LVL22: 305 .LFB33: 105:Core/Src/syscalls.c **** 106:Core/Src/syscalls.c **** int _isatty(int file) 107:Core/Src/syscalls.c **** { ARM GAS /tmp/ccfpmOVP.s page 8 306 .loc 1 107 1 is_stmt 1 view -0 307 .cfi_startproc 308 @ args = 0, pretend = 0, frame = 0 309 @ frame_needed = 0, uses_anonymous_args = 0 310 @ link register save eliminated. 108:Core/Src/syscalls.c **** (void)file; 311 .loc 1 108 3 view .LVU64 109:Core/Src/syscalls.c **** return 1; 312 .loc 1 109 3 view .LVU65 110:Core/Src/syscalls.c **** } 313 .loc 1 110 1 is_stmt 0 view .LVU66 314 0000 0120 movs r0, #1 315 .LVL23: 316 .loc 1 110 1 view .LVU67 317 0002 7047 bx lr 318 .cfi_endproc 319 .LFE33: 321 .section .text._lseek,"ax",%progbits 322 .align 1 323 .global _lseek 324 .syntax unified 325 .thumb 326 .thumb_func 328 _lseek: 329 .LVL24: 330 .LFB34: 111:Core/Src/syscalls.c **** 112:Core/Src/syscalls.c **** int _lseek(int file, int ptr, int dir) 113:Core/Src/syscalls.c **** { 331 .loc 1 113 1 is_stmt 1 view -0 332 .cfi_startproc 333 @ args = 0, pretend = 0, frame = 0 334 @ frame_needed = 0, uses_anonymous_args = 0 335 @ link register save eliminated. 114:Core/Src/syscalls.c **** (void)file; 336 .loc 1 114 3 view .LVU69 115:Core/Src/syscalls.c **** (void)ptr; 337 .loc 1 115 3 view .LVU70 116:Core/Src/syscalls.c **** (void)dir; 338 .loc 1 116 3 view .LVU71 117:Core/Src/syscalls.c **** return 0; 339 .loc 1 117 3 view .LVU72 118:Core/Src/syscalls.c **** } 340 .loc 1 118 1 is_stmt 0 view .LVU73 341 0000 0020 movs r0, #0 342 .LVL25: 343 .loc 1 118 1 view .LVU74 344 0002 7047 bx lr 345 .cfi_endproc 346 .LFE34: 348 .section .text._open,"ax",%progbits 349 .align 1 350 .global _open 351 .syntax unified 352 .thumb 353 .thumb_func 355 _open: ARM GAS /tmp/ccfpmOVP.s page 9 356 .LVL26: 357 .LFB35: 119:Core/Src/syscalls.c **** 120:Core/Src/syscalls.c **** int _open(char *path, int flags, ...) 121:Core/Src/syscalls.c **** { 358 .loc 1 121 1 is_stmt 1 view -0 359 .cfi_startproc 360 @ args = 4, pretend = 12, frame = 0 361 @ frame_needed = 0, uses_anonymous_args = 1 362 @ link register save eliminated. 363 .loc 1 121 1 is_stmt 0 view .LVU76 364 0000 0EB4 push {r1, r2, r3} 365 .cfi_def_cfa_offset 12 366 .cfi_offset 1, -12 367 .cfi_offset 2, -8 368 .cfi_offset 3, -4 122:Core/Src/syscalls.c **** (void)path; 369 .loc 1 122 3 is_stmt 1 view .LVU77 123:Core/Src/syscalls.c **** (void)flags; 370 .loc 1 123 3 view .LVU78 124:Core/Src/syscalls.c **** /* Pretend like we always fail */ 125:Core/Src/syscalls.c **** return -1; 371 .loc 1 125 3 view .LVU79 126:Core/Src/syscalls.c **** } 372 .loc 1 126 1 is_stmt 0 view .LVU80 373 0002 4FF0FF30 mov r0, #-1 374 .LVL27: 375 .loc 1 126 1 view .LVU81 376 0006 03B0 add sp, sp, #12 377 .cfi_restore 3 378 .cfi_restore 2 379 .cfi_restore 1 380 .cfi_def_cfa_offset 0 381 0008 7047 bx lr 382 .cfi_endproc 383 .LFE35: 385 .section .text._wait,"ax",%progbits 386 .align 1 387 .global _wait 388 .syntax unified 389 .thumb 390 .thumb_func 392 _wait: 393 .LVL28: 394 .LFB36: 127:Core/Src/syscalls.c **** 128:Core/Src/syscalls.c **** int _wait(int *status) 129:Core/Src/syscalls.c **** { 395 .loc 1 129 1 is_stmt 1 view -0 396 .cfi_startproc 397 @ args = 0, pretend = 0, frame = 0 398 @ frame_needed = 0, uses_anonymous_args = 0 399 .loc 1 129 1 is_stmt 0 view .LVU83 400 0000 08B5 push {r3, lr} 401 .cfi_def_cfa_offset 8 402 .cfi_offset 3, -8 403 .cfi_offset 14, -4 ARM GAS /tmp/ccfpmOVP.s page 10 130:Core/Src/syscalls.c **** (void)status; 404 .loc 1 130 3 is_stmt 1 view .LVU84 131:Core/Src/syscalls.c **** errno = ECHILD; 405 .loc 1 131 3 view .LVU85 406 0002 FFF7FEFF bl __errno 407 .LVL29: 408 .loc 1 131 9 is_stmt 0 discriminator 1 view .LVU86 409 0006 0A23 movs r3, #10 410 0008 0360 str r3, [r0] 132:Core/Src/syscalls.c **** return -1; 411 .loc 1 132 3 is_stmt 1 view .LVU87 133:Core/Src/syscalls.c **** } 412 .loc 1 133 1 is_stmt 0 view .LVU88 413 000a 4FF0FF30 mov r0, #-1 414 000e 08BD pop {r3, pc} 415 .cfi_endproc 416 .LFE36: 418 .section .text._unlink,"ax",%progbits 419 .align 1 420 .global _unlink 421 .syntax unified 422 .thumb 423 .thumb_func 425 _unlink: 426 .LVL30: 427 .LFB37: 134:Core/Src/syscalls.c **** 135:Core/Src/syscalls.c **** int _unlink(char *name) 136:Core/Src/syscalls.c **** { 428 .loc 1 136 1 is_stmt 1 view -0 429 .cfi_startproc 430 @ args = 0, pretend = 0, frame = 0 431 @ frame_needed = 0, uses_anonymous_args = 0 432 .loc 1 136 1 is_stmt 0 view .LVU90 433 0000 08B5 push {r3, lr} 434 .cfi_def_cfa_offset 8 435 .cfi_offset 3, -8 436 .cfi_offset 14, -4 137:Core/Src/syscalls.c **** (void)name; 437 .loc 1 137 3 is_stmt 1 view .LVU91 138:Core/Src/syscalls.c **** errno = ENOENT; 438 .loc 1 138 3 view .LVU92 439 0002 FFF7FEFF bl __errno 440 .LVL31: 441 .loc 1 138 9 is_stmt 0 discriminator 1 view .LVU93 442 0006 0223 movs r3, #2 443 0008 0360 str r3, [r0] 139:Core/Src/syscalls.c **** return -1; 444 .loc 1 139 3 is_stmt 1 view .LVU94 140:Core/Src/syscalls.c **** } 445 .loc 1 140 1 is_stmt 0 view .LVU95 446 000a 4FF0FF30 mov r0, #-1 447 000e 08BD pop {r3, pc} 448 .cfi_endproc 449 .LFE37: 451 .section .text._times,"ax",%progbits 452 .align 1 ARM GAS /tmp/ccfpmOVP.s page 11 453 .global _times 454 .syntax unified 455 .thumb 456 .thumb_func 458 _times: 459 .LVL32: 460 .LFB38: 141:Core/Src/syscalls.c **** 142:Core/Src/syscalls.c **** int _times(struct tms *buf) 143:Core/Src/syscalls.c **** { 461 .loc 1 143 1 is_stmt 1 view -0 462 .cfi_startproc 463 @ args = 0, pretend = 0, frame = 0 464 @ frame_needed = 0, uses_anonymous_args = 0 465 @ link register save eliminated. 144:Core/Src/syscalls.c **** (void)buf; 466 .loc 1 144 3 view .LVU97 145:Core/Src/syscalls.c **** return -1; 467 .loc 1 145 3 view .LVU98 146:Core/Src/syscalls.c **** } 468 .loc 1 146 1 is_stmt 0 view .LVU99 469 0000 4FF0FF30 mov r0, #-1 470 .LVL33: 471 .loc 1 146 1 view .LVU100 472 0004 7047 bx lr 473 .cfi_endproc 474 .LFE38: 476 .section .text._stat,"ax",%progbits 477 .align 1 478 .global _stat 479 .syntax unified 480 .thumb 481 .thumb_func 483 _stat: 484 .LVL34: 485 .LFB39: 147:Core/Src/syscalls.c **** 148:Core/Src/syscalls.c **** int _stat(char *file, struct stat *st) 149:Core/Src/syscalls.c **** { 486 .loc 1 149 1 is_stmt 1 view -0 487 .cfi_startproc 488 @ args = 0, pretend = 0, frame = 0 489 @ frame_needed = 0, uses_anonymous_args = 0 490 @ link register save eliminated. 150:Core/Src/syscalls.c **** (void)file; 491 .loc 1 150 3 view .LVU102 151:Core/Src/syscalls.c **** st->st_mode = S_IFCHR; 492 .loc 1 151 3 view .LVU103 493 .loc 1 151 15 is_stmt 0 view .LVU104 494 0000 4FF40053 mov r3, #8192 495 0004 4B60 str r3, [r1, #4] 152:Core/Src/syscalls.c **** return 0; 496 .loc 1 152 3 is_stmt 1 view .LVU105 153:Core/Src/syscalls.c **** } 497 .loc 1 153 1 is_stmt 0 view .LVU106 498 0006 0020 movs r0, #0 499 .LVL35: ARM GAS /tmp/ccfpmOVP.s page 12 500 .loc 1 153 1 view .LVU107 501 0008 7047 bx lr 502 .cfi_endproc 503 .LFE39: 505 .section .text._link,"ax",%progbits 506 .align 1 507 .global _link 508 .syntax unified 509 .thumb 510 .thumb_func 512 _link: 513 .LVL36: 514 .LFB40: 154:Core/Src/syscalls.c **** 155:Core/Src/syscalls.c **** int _link(char *old, char *new) 156:Core/Src/syscalls.c **** { 515 .loc 1 156 1 is_stmt 1 view -0 516 .cfi_startproc 517 @ args = 0, pretend = 0, frame = 0 518 @ frame_needed = 0, uses_anonymous_args = 0 519 .loc 1 156 1 is_stmt 0 view .LVU109 520 0000 08B5 push {r3, lr} 521 .cfi_def_cfa_offset 8 522 .cfi_offset 3, -8 523 .cfi_offset 14, -4 157:Core/Src/syscalls.c **** (void)old; 524 .loc 1 157 3 is_stmt 1 view .LVU110 158:Core/Src/syscalls.c **** (void)new; 525 .loc 1 158 3 view .LVU111 159:Core/Src/syscalls.c **** errno = EMLINK; 526 .loc 1 159 3 view .LVU112 527 0002 FFF7FEFF bl __errno 528 .LVL37: 529 .loc 1 159 9 is_stmt 0 discriminator 1 view .LVU113 530 0006 1F23 movs r3, #31 531 0008 0360 str r3, [r0] 160:Core/Src/syscalls.c **** return -1; 532 .loc 1 160 3 is_stmt 1 view .LVU114 161:Core/Src/syscalls.c **** } 533 .loc 1 161 1 is_stmt 0 view .LVU115 534 000a 4FF0FF30 mov r0, #-1 535 000e 08BD pop {r3, pc} 536 .cfi_endproc 537 .LFE40: 539 .section .text._fork,"ax",%progbits 540 .align 1 541 .global _fork 542 .syntax unified 543 .thumb 544 .thumb_func 546 _fork: 547 .LFB41: 162:Core/Src/syscalls.c **** 163:Core/Src/syscalls.c **** int _fork(void) 164:Core/Src/syscalls.c **** { 548 .loc 1 164 1 is_stmt 1 view -0 549 .cfi_startproc ARM GAS /tmp/ccfpmOVP.s page 13 550 @ args = 0, pretend = 0, frame = 0 551 @ frame_needed = 0, uses_anonymous_args = 0 552 0000 08B5 push {r3, lr} 553 .cfi_def_cfa_offset 8 554 .cfi_offset 3, -8 555 .cfi_offset 14, -4 165:Core/Src/syscalls.c **** errno = EAGAIN; 556 .loc 1 165 3 view .LVU117 557 0002 FFF7FEFF bl __errno 558 .LVL38: 559 .loc 1 165 9 is_stmt 0 discriminator 1 view .LVU118 560 0006 0B23 movs r3, #11 561 0008 0360 str r3, [r0] 166:Core/Src/syscalls.c **** return -1; 562 .loc 1 166 3 is_stmt 1 view .LVU119 167:Core/Src/syscalls.c **** } 563 .loc 1 167 1 is_stmt 0 view .LVU120 564 000a 4FF0FF30 mov r0, #-1 565 000e 08BD pop {r3, pc} 566 .cfi_endproc 567 .LFE41: 569 .section .text._execve,"ax",%progbits 570 .align 1 571 .global _execve 572 .syntax unified 573 .thumb 574 .thumb_func 576 _execve: 577 .LVL39: 578 .LFB42: 168:Core/Src/syscalls.c **** 169:Core/Src/syscalls.c **** int _execve(char *name, char **argv, char **env) 170:Core/Src/syscalls.c **** { 579 .loc 1 170 1 is_stmt 1 view -0 580 .cfi_startproc 581 @ args = 0, pretend = 0, frame = 0 582 @ frame_needed = 0, uses_anonymous_args = 0 583 .loc 1 170 1 is_stmt 0 view .LVU122 584 0000 08B5 push {r3, lr} 585 .cfi_def_cfa_offset 8 586 .cfi_offset 3, -8 587 .cfi_offset 14, -4 171:Core/Src/syscalls.c **** (void)name; 588 .loc 1 171 3 is_stmt 1 view .LVU123 172:Core/Src/syscalls.c **** (void)argv; 589 .loc 1 172 3 view .LVU124 173:Core/Src/syscalls.c **** (void)env; 590 .loc 1 173 3 view .LVU125 174:Core/Src/syscalls.c **** errno = ENOMEM; 591 .loc 1 174 3 view .LVU126 592 0002 FFF7FEFF bl __errno 593 .LVL40: 594 .loc 1 174 9 is_stmt 0 discriminator 1 view .LVU127 595 0006 0C23 movs r3, #12 596 0008 0360 str r3, [r0] 175:Core/Src/syscalls.c **** return -1; 597 .loc 1 175 3 is_stmt 1 view .LVU128 ARM GAS /tmp/ccfpmOVP.s page 14 176:Core/Src/syscalls.c **** } 598 .loc 1 176 1 is_stmt 0 view .LVU129 599 000a 4FF0FF30 mov r0, #-1 600 000e 08BD pop {r3, pc} 601 .cfi_endproc 602 .LFE42: 604 .global environ 605 .section .data.environ,"aw" 606 .align 2 609 environ: 610 0000 00000000 .word __env 611 .global __env 612 .section .bss.__env,"aw",%nobits 613 .align 2 616 __env: 617 0000 00000000 .space 4 618 .weak __io_putchar 619 .weak __io_getchar 620 .text 621 .Letext0: 622 .file 2 "/home/chiangni/.config/Code/User/globalStorage/bmd.stm32-for-vscode/@xpack-dev-tools/arm- 623 .file 3 "/home/chiangni/.config/Code/User/globalStorage/bmd.stm32-for-vscode/@xpack-dev-tools/arm- 624 .file 4 "/home/chiangni/.config/Code/User/globalStorage/bmd.stm32-for-vscode/@xpack-dev-tools/arm- 625 .file 5 "/home/chiangni/.config/Code/User/globalStorage/bmd.stm32-for-vscode/@xpack-dev-tools/arm- 626 .file 6 "/home/chiangni/.config/Code/User/globalStorage/bmd.stm32-for-vscode/@xpack-dev-tools/arm- 627 .file 7 "/home/chiangni/.config/Code/User/globalStorage/bmd.stm32-for-vscode/@xpack-dev-tools/arm- 628 .file 8 "/home/chiangni/.config/Code/User/globalStorage/bmd.stm32-for-vscode/@xpack-dev-tools/arm- 629 .file 9 "/home/chiangni/.config/Code/User/globalStorage/bmd.stm32-for-vscode/@xpack-dev-tools/arm- ARM GAS /tmp/ccfpmOVP.s page 15 DEFINED SYMBOLS *ABS*:00000000 syscalls.c /tmp/ccfpmOVP.s:21 .text.initialise_monitor_handles:00000000 $t /tmp/ccfpmOVP.s:27 .text.initialise_monitor_handles:00000000 initialise_monitor_handles /tmp/ccfpmOVP.s:40 .text._getpid:00000000 $t /tmp/ccfpmOVP.s:46 .text._getpid:00000000 _getpid /tmp/ccfpmOVP.s:61 .text._kill:00000000 $t /tmp/ccfpmOVP.s:67 .text._kill:00000000 _kill /tmp/ccfpmOVP.s:95 .text._exit:00000000 $t /tmp/ccfpmOVP.s:101 .text._exit:00000000 _exit /tmp/ccfpmOVP.s:127 .text._read:00000000 $t /tmp/ccfpmOVP.s:133 .text._read:00000000 _read /tmp/ccfpmOVP.s:188 .text._write:00000000 $t /tmp/ccfpmOVP.s:194 .text._write:00000000 _write /tmp/ccfpmOVP.s:243 .text._close:00000000 $t /tmp/ccfpmOVP.s:249 .text._close:00000000 _close /tmp/ccfpmOVP.s:268 .text._fstat:00000000 $t /tmp/ccfpmOVP.s:274 .text._fstat:00000000 _fstat /tmp/ccfpmOVP.s:297 .text._isatty:00000000 $t /tmp/ccfpmOVP.s:303 .text._isatty:00000000 _isatty /tmp/ccfpmOVP.s:322 .text._lseek:00000000 $t /tmp/ccfpmOVP.s:328 .text._lseek:00000000 _lseek /tmp/ccfpmOVP.s:349 .text._open:00000000 $t /tmp/ccfpmOVP.s:355 .text._open:00000000 _open /tmp/ccfpmOVP.s:386 .text._wait:00000000 $t /tmp/ccfpmOVP.s:392 .text._wait:00000000 _wait /tmp/ccfpmOVP.s:419 .text._unlink:00000000 $t /tmp/ccfpmOVP.s:425 .text._unlink:00000000 _unlink /tmp/ccfpmOVP.s:452 .text._times:00000000 $t /tmp/ccfpmOVP.s:458 .text._times:00000000 _times /tmp/ccfpmOVP.s:477 .text._stat:00000000 $t /tmp/ccfpmOVP.s:483 .text._stat:00000000 _stat /tmp/ccfpmOVP.s:506 .text._link:00000000 $t /tmp/ccfpmOVP.s:512 .text._link:00000000 _link /tmp/ccfpmOVP.s:540 .text._fork:00000000 $t /tmp/ccfpmOVP.s:546 .text._fork:00000000 _fork /tmp/ccfpmOVP.s:570 .text._execve:00000000 $t /tmp/ccfpmOVP.s:576 .text._execve:00000000 _execve /tmp/ccfpmOVP.s:609 .data.environ:00000000 environ /tmp/ccfpmOVP.s:606 .data.environ:00000000 $d /tmp/ccfpmOVP.s:616 .bss.__env:00000000 __env /tmp/ccfpmOVP.s:613 .bss.__env:00000000 $d UNDEFINED SYMBOLS __errno __io_getchar __io_putchar