summaryrefslogtreecommitdiffstats
path: root/mdk-stage1/dietlibc/i386/strcasecmp.S
blob: a836680db0dcba165d5b6118d7c161d0be0cdc64 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
.text
.globl strcasecmp

strcasecmp:
	pushl %esi
	movl 0x8(%esp), %esi
	movl 0xc(%esp), %edx
	xorl %eax, %eax
	xorl %ecx, %ecx
	cld
.Lloop:
	lodsb
	movb (%edx), %cl
	incl %edx
	or %al, %al
	jz .Lfinifirst
	cmp $'A', %al
	jnge .Lcmp
	cmp $'z', %al
	jg .Lcmp
	or $0x20, %al
	or $0x20, %cl
.Lcmp:
	subl %ecx, %eax
	jz .Lloop
.Lret:
	popl %esi
	ret
.Lfinifirst:
	subl %ecx, %eax
	jmp .Lret