xref: /llvm-project/libc/src/string/strcmp.cpp (revision 5ff3ff33ff930e4ec49da7910612d8a41eb068cb)
105e1612cScgyurgyik //===-- Implementation of strcmp ------------------------------------------===//
205e1612cScgyurgyik //
305e1612cScgyurgyik // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
405e1612cScgyurgyik // See https://llvm.org/LICENSE.txt for license information.
505e1612cScgyurgyik // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
605e1612cScgyurgyik //
705e1612cScgyurgyik //===----------------------------------------------------------------------===//
805e1612cScgyurgyik 
905e1612cScgyurgyik #include "src/string/strcmp.h"
1005e1612cScgyurgyik 
1105e1612cScgyurgyik #include "src/__support/common.h"
12*5ff3ff33SPetr Hosek #include "src/__support/macros/config.h"
131f578347SGuillaume Chatelet #include "src/string/memory_utils/inline_strcmp.h"
1405e1612cScgyurgyik 
15*5ff3ff33SPetr Hosek namespace LIBC_NAMESPACE_DECL {
1605e1612cScgyurgyik 
17a0b65a7bSMichael Jones LLVM_LIBC_FUNCTION(int, strcmp, (const char *left, const char *right)) {
18f296dce7SAlex Brachet   auto comp = [](char l, char r) -> int { return l - r; };
191f578347SGuillaume Chatelet   return inline_strcmp(left, right, comp);
2005e1612cScgyurgyik }
2105e1612cScgyurgyik 
22*5ff3ff33SPetr Hosek } // namespace LIBC_NAMESPACE_DECL
23