io: Fix destructive nature of tst-fchmod-errors
[glibc.git] / sysdeps / i386 / i686 / multiarch / strcat-ia32.S
blob37a19eb07e8f32b60465e7333d0a731beacf5b7a
1 /* strcat optimized for i686.
2    All versions must be listed in ifunc-impl-list.c.
3    Copyright (C) 2017-2024 Free Software Foundation, Inc.
4    This file is part of the GNU C Library.
6    The GNU C Library is free software; you can redistribute it and/or
7    modify it under the terms of the GNU Lesser General Public
8    License as published by the Free Software Foundation; either
9    version 2.1 of the License, or (at your option) any later version.
11    The GNU C Library is distributed in the hope that it will be useful,
12    but WITHOUT ANY WARRANTY; without even the implied warranty of
13    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14    Lesser General Public License for more details.
16    You should have received a copy of the GNU Lesser General Public
17    License along with the GNU C Library; if not, see
18    <https://www.gnu.org/licenses/>.  */
20 #if IS_IN (libc)
21 # define strcat __strcat_ia32
23 # ifdef SHARED
24 #  undef libc_hidden_builtin_def
25 /* IFUNC doesn't work with the hidden functions in shared library since
26    they will be called without setting up EBX needed for PLT which is
27    used by IFUNC.  */
28 #  define libc_hidden_builtin_def(name) \
29         .globl __GI_strcat; __GI_strcat = strcat
30 # endif
31 #endif
33 #include <sysdeps/i386/strcat.S>