summaryrefslogtreecommitdiff
path: root/device/lib/stm8/strndup.lst
diff options
context:
space:
mode:
Diffstat (limited to 'device/lib/stm8/strndup.lst')
-rw-r--r--device/lib/stm8/strndup.lst104
1 files changed, 0 insertions, 104 deletions
diff --git a/device/lib/stm8/strndup.lst b/device/lib/stm8/strndup.lst
deleted file mode 100644
index 18c6d07..0000000
--- a/device/lib/stm8/strndup.lst
+++ /dev/null
@@ -1,104 +0,0 @@
- 1 ;--------------------------------------------------------
- 2 ; File Created by SDCC : free open source ANSI-C Compiler
- 3 ; Version 3.9.3 #11345 (Linux)
- 4 ;--------------------------------------------------------
- 5 .module strndup
- 6 .optsdcc -mstm8
- 7
- 8 ;--------------------------------------------------------
- 9 ; Public variables in this module
- 10 ;--------------------------------------------------------
- 11 .globl _malloc
- 12 .globl ___memcpy
- 13 .globl _strlen
- 14 .globl _strndup
- 15 ;--------------------------------------------------------
- 16 ; ram data
- 17 ;--------------------------------------------------------
- 18 .area DATA
- 19 ;--------------------------------------------------------
- 20 ; ram data
- 21 ;--------------------------------------------------------
- 22 .area INITIALIZED
- 23 ;--------------------------------------------------------
- 24 ; absolute external ram data
- 25 ;--------------------------------------------------------
- 26 .area DABS (ABS)
- 27
- 28 ; default segment ordering for linker
- 29 .area HOME
- 30 .area GSINIT
- 31 .area GSFINAL
- 32 .area CONST
- 33 .area INITIALIZER
- 34 .area CODE
- 35
- 36 ;--------------------------------------------------------
- 37 ; global & static initialisations
- 38 ;--------------------------------------------------------
- 39 .area HOME
- 40 .area GSINIT
- 41 .area GSFINAL
- 42 .area GSINIT
- 43 ;--------------------------------------------------------
- 44 ; Home
- 45 ;--------------------------------------------------------
- 46 .area HOME
- 47 .area HOME
- 48 ;--------------------------------------------------------
- 49 ; code
- 50 ;--------------------------------------------------------
- 51 .area CODE
- 52 ; ../strndup.c: 33: char *strndup (const char *s, size_t n)
- 53 ; -----------------------------------------
- 54 ; function strndup
- 55 ; -----------------------------------------
- 000000 56 _strndup:
- 000000 52 04 [ 2] 57 sub sp, #4
- 58 ; ../strndup.c: 35: size_t l = strlen (s);
- 000002 1E 07 [ 2] 59 ldw x, (0x07, sp)
- 000004 89 [ 2] 60 pushw x
- 000005 CDr00r00 [ 4] 61 call _strlen
- 000008 5B 02 [ 2] 62 addw sp, #2
- 63 ; ../strndup.c: 36: if (l > n)
- 00000A 1F 01 [ 2] 64 ldw (0x01, sp), x
- 00000C 13 09 [ 2] 65 cpw x, (0x09, sp)
- 00000E 23 04 [ 2] 66 jrule 00102$
- 67 ; ../strndup.c: 37: l = n;
- 000010 16 09 [ 2] 68 ldw y, (0x09, sp)
- 000012 17 01 [ 2] 69 ldw (0x01, sp), y
- 000014 70 00102$:
- 71 ; ../strndup.c: 38: char *r = malloc (l + 1);
- 000014 1E 01 [ 2] 72 ldw x, (0x01, sp)
- 000016 5C [ 1] 73 incw x
- 000017 89 [ 2] 74 pushw x
- 000018 CDr00r00 [ 4] 75 call _malloc
- 00001B 5B 02 [ 2] 76 addw sp, #2
- 77 ; ../strndup.c: 39: if (r)
- 00001D 1F 03 [ 2] 78 ldw (0x03, sp), x
- 00001F 27 18 [ 1] 79 jreq 00104$
- 80 ; ../strndup.c: 41: memcpy (r, s, l);
- 000021 16 07 [ 2] 81 ldw y, (0x07, sp)
- 000023 1E 03 [ 2] 82 ldw x, (0x03, sp)
- 000025 7B 02 [ 1] 83 ld a, (0x02, sp)
- 000027 88 [ 1] 84 push a
- 000028 7B 02 [ 1] 85 ld a, (0x02, sp)
- 00002A 88 [ 1] 86 push a
- 00002B 90 89 [ 2] 87 pushw y
- 00002D 89 [ 2] 88 pushw x
- 00002E CDr00r00 [ 4] 89 call ___memcpy
- 000031 5B 06 [ 2] 90 addw sp, #6
- 91 ; ../strndup.c: 42: r[l] = 0;
- 000033 1E 03 [ 2] 92 ldw x, (0x03, sp)
- 000035 72 FB 01 [ 2] 93 addw x, (0x01, sp)
- 000038 7F [ 1] 94 clr (x)
- 000039 95 00104$:
- 96 ; ../strndup.c: 44: return (r);
- 000039 1E 03 [ 2] 97 ldw x, (0x03, sp)
- 98 ; ../strndup.c: 45: }
- 00003B 5B 04 [ 2] 99 addw sp, #4
- 00003D 81 [ 4] 100 ret
- 101 .area CODE
- 102 .area CONST
- 103 .area INITIALIZER
- 104 .area CABS (ABS)