blob: c7557f851ef4d8249df7257a7bb200e47f43e792 [file] [log] [blame]
Peter Collingbourne900d07d2019-10-28 13:11:00 -07001/*
2 * Copyright (C) 2019 The Android Open Source Project
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above copyright
11 * notice, this list of conditions and the following disclaimer in
12 * the documentation and/or other materials provided with the
13 * distribution.
14 *
15 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
16 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
17 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
18 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
19 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
20 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
21 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
22 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
23 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
24 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
25 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26 * SUCH DAMAGE.
27 */
28
29#include <private/bionic_asm.h>
30
31#define FUNCTION_DELEGATE(name, impl) \
32ENTRY(name); \
33 b impl; \
34END(name)
35
Peter Collingbourne2361d4e2020-06-03 16:55:37 -070036FUNCTION_DELEGATE(memchr, __memchr_aarch64_mte)
Elliott Hughescb3c99b2023-01-25 23:33:39 +000037FUNCTION_DELEGATE(memcmp, __memcmp_aarch64)
Elliott Hughes721e46b2022-11-17 00:34:13 +000038FUNCTION_DELEGATE(memcpy, __memcpy_aarch64)
39FUNCTION_DELEGATE(memmove, __memmove_aarch64)
Elliott Hughesb678f812023-01-25 18:12:18 +000040FUNCTION_DELEGATE(stpcpy, __stpcpy_aarch64)
Peter Collingbourne337a5b32020-02-21 12:11:02 -080041FUNCTION_DELEGATE(strchr, __strchr_aarch64_mte)
Peter Collingbourne2361d4e2020-06-03 16:55:37 -070042FUNCTION_DELEGATE(strchrnul, __strchrnul_aarch64_mte)
Elliott Hughesb678f812023-01-25 18:12:18 +000043FUNCTION_DELEGATE(strcmp, __strcmp_aarch64)
44FUNCTION_DELEGATE(strcpy, __strcpy_aarch64)
Peter Collingbourne337a5b32020-02-21 12:11:02 -080045FUNCTION_DELEGATE(strlen, __strlen_aarch64_mte)
Peter Collingbourne2361d4e2020-06-03 16:55:37 -070046FUNCTION_DELEGATE(strrchr, __strrchr_aarch64_mte)
Elliott Hughesb678f812023-01-25 18:12:18 +000047FUNCTION_DELEGATE(strncmp, __strncmp_aarch64)
Elliott Hughescb3c99b2023-01-25 23:33:39 +000048FUNCTION_DELEGATE(strnlen, __strnlen_aarch64)
Tamas Petzf5bdee72020-08-31 15:09:40 +020049
50NOTE_GNU_PROPERTY()