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