Branch data Line data Source code
1 : : /* Functions for Linux Android as target machine for GNU C compiler.
2 : : Copyright (C) 2013-2024 Free Software Foundation, Inc.
3 : :
4 : : This file is part of GCC.
5 : :
6 : : GCC is free software; you can redistribute it and/or modify
7 : : it under the terms of the GNU General Public License as published by
8 : : the Free Software Foundation; either version 3, or (at your option)
9 : : any later version.
10 : :
11 : : GCC 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
14 : : GNU General Public License for more details.
15 : :
16 : : You should have received a copy of the GNU General Public License
17 : : along with GCC; see the file COPYING3. If not see
18 : : <http://www.gnu.org/licenses/>. */
19 : :
20 : : #include "config.h"
21 : : #include "system.h"
22 : : #include "coretypes.h"
23 : : #include "tm.h"
24 : : #include "tree.h"
25 : : #include "linux-protos.h"
26 : : #include "target.h"
27 : : #include "targhooks.h"
28 : :
29 : : bool
30 : 60509854 : linux_libc_has_function (enum function_class fn_class,
31 : : tree type ATTRIBUTE_UNUSED)
32 : : {
33 : 60509854 : if (OPTION_GLIBC || OPTION_MUSL)
34 : : return true;
35 : 50540 : if (OPTION_BIONIC)
36 : 2128 : if (fn_class == function_c94
37 : 2128 : || fn_class == function_c99_misc
38 : 2128 : || fn_class == function_sincos)
39 : : return true;
40 : :
41 : : return false;
42 : : }
43 : :
44 : : unsigned
45 : 0 : linux_libm_function_max_error (unsigned cfn, machine_mode mode,
46 : : bool boundary_p)
47 : : {
48 : 0 : if (OPTION_GLIBC)
49 : 0 : return glibc_linux_libm_function_max_error (cfn, mode, boundary_p);
50 : 0 : return default_libm_function_max_error (cfn, mode, boundary_p);
51 : : }
52 : :
53 : : unsigned
54 : 58 : linux_fortify_source_default_level ()
55 : : {
56 : 58 : if (OPTION_GLIBC && TARGET_GLIBC_MAJOR == 2 && TARGET_GLIBC_MINOR >= 35)
57 : 58 : return 3;
58 : :
59 : : return 2;
60 : : }
|