1 | /* These aliases added as workaround to exclude unnecessary symbol |
2 | aliases in libmvec.so while compiler creates the vector names |
3 | based on scalar asm name. Corresponding discussion is at |
4 | <https://gcc.gnu.org/ml/gcc/2015-06/msg00173.html>. |
5 | Copyright (C) 2015-2018 Free Software Foundation, Inc. |
6 | This file is part of the GNU C Library. |
7 | |
8 | The GNU C Library is free software; you can redistribute it and/or |
9 | modify it under the terms of the GNU Lesser General Public |
10 | License as published by the Free Software Foundation; either |
11 | version 2.1 of the License, or (at your option) any later version. |
12 | |
13 | The GNU C Library is distributed in the hope that it will be useful, |
14 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
16 | Lesser General Public License for more details. |
17 | |
18 | You should have received a copy of the GNU Lesser General Public |
19 | License along with the GNU C Library; if not, see |
20 | <http://www.gnu.org/licenses/>. */ |
21 | |
22 | #include <sysdep.h> |
23 | |
24 | #define ALIAS_IMPL(alias, target) \ |
25 | ENTRY (alias); \ |
26 | jmp *target@GOTPCREL(%rip); \ |
27 | END (alias) |
28 | |
29 | .text |
30 | ALIAS_IMPL (_ZGVbN2v___log_finite, _ZGVbN2v_log) |
31 | ALIAS_IMPL (_ZGVcN4v___log_finite, _ZGVcN4v_log) |
32 | ALIAS_IMPL (_ZGVdN4v___log_finite, _ZGVdN4v_log) |
33 | ALIAS_IMPL (_ZGVeN8v___log_finite, _ZGVeN8v_log) |
34 | |
35 | ALIAS_IMPL (_ZGVbN4v___logf_finite, _ZGVbN4v_logf) |
36 | ALIAS_IMPL (_ZGVcN8v___logf_finite, _ZGVcN8v_logf) |
37 | ALIAS_IMPL (_ZGVdN8v___logf_finite, _ZGVdN8v_logf) |
38 | ALIAS_IMPL (_ZGVeN16v___logf_finite, _ZGVeN16v_logf) |
39 | |
40 | ALIAS_IMPL (_ZGVbN2v___exp_finite, _ZGVbN2v_exp) |
41 | ALIAS_IMPL (_ZGVcN4v___exp_finite, _ZGVcN4v_exp) |
42 | ALIAS_IMPL (_ZGVdN4v___exp_finite, _ZGVdN4v_exp) |
43 | ALIAS_IMPL (_ZGVeN8v___exp_finite, _ZGVeN8v_exp) |
44 | |
45 | ALIAS_IMPL (_ZGVbN4v___expf_finite, _ZGVbN4v_expf) |
46 | ALIAS_IMPL (_ZGVcN8v___expf_finite, _ZGVcN8v_expf) |
47 | ALIAS_IMPL (_ZGVdN8v___expf_finite, _ZGVdN8v_expf) |
48 | ALIAS_IMPL (_ZGVeN16v___expf_finite, _ZGVeN16v_expf) |
49 | |
50 | ALIAS_IMPL (_ZGVbN2vv___pow_finite, _ZGVbN2vv_pow) |
51 | ALIAS_IMPL (_ZGVcN4vv___pow_finite, _ZGVcN4vv_pow) |
52 | ALIAS_IMPL (_ZGVdN4vv___pow_finite, _ZGVdN4vv_pow) |
53 | ALIAS_IMPL (_ZGVeN8vv___pow_finite, _ZGVeN8vv_pow) |
54 | |
55 | ALIAS_IMPL (_ZGVbN4vv___powf_finite, _ZGVbN4vv_powf) |
56 | ALIAS_IMPL (_ZGVcN8vv___powf_finite, _ZGVcN8vv_powf) |
57 | ALIAS_IMPL (_ZGVdN8vv___powf_finite, _ZGVdN8vv_powf) |
58 | ALIAS_IMPL (_ZGVeN16vv___powf_finite, _ZGVeN16vv_powf) |
59 | |