xref: /aosp_15_r20/external/arm-trusted-firmware/lib/libc/memcmp.c (revision 54fd6939e177f8ff529b10183254802c76df6d08)
1 /*
2  * Copyright (c) 2013-2019, ARM Limited and Contributors. All rights reserved.
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  */
6 
7 #include <stddef.h>
8 #include <string.h>
9 
memcmp(const void * s1,const void * s2,size_t len)10 int memcmp(const void *s1, const void *s2, size_t len)
11 {
12 	const unsigned char *s = s1;
13 	const unsigned char *d = s2;
14 	unsigned char sc;
15 	unsigned char dc;
16 
17 	while (len--) {
18 		sc = *s++;
19 		dc = *d++;
20 		if (sc - dc)
21 			return (sc - dc);
22 	}
23 
24 	return 0;
25 }
26