diff options
Diffstat (limited to 'mdk-stage1/dietlibc/i386/strcat.S')
-rw-r--r-- | mdk-stage1/dietlibc/i386/strcat.S | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/mdk-stage1/dietlibc/i386/strcat.S b/mdk-stage1/dietlibc/i386/strcat.S new file mode 100644 index 000000000..e7d74ef13 --- /dev/null +++ b/mdk-stage1/dietlibc/i386/strcat.S @@ -0,0 +1,29 @@ +.text +.align 0 +.global strcat +.type strcat,@function +strcat: + pushl %edi + pushl %esi + + movl 12(%esp), %edi + movl 16(%esp), %esi + + pushl %edi + + xorl %eax, %eax + xorl %ecx, %ecx + decl %ecx + repne scasb + decl %edi + +.Lloop: + lodsb + stosb + testb %al, %al + jnz .Lloop + + popl %eax + popl %esi + popl %edi + ret |