1/* Xtensa uClinux configuration.
2   Derived from the configuration for GCC for Intel i386 running Linux.
3   Copyright (C) 2001-2020 Free Software Foundation, Inc.
4
5This file is part of GCC.
6
7GCC is free software; you can redistribute it and/or modify it under
8the terms of the GNU General Public License as published by the Free
9Software Foundation; either version 3, or (at your option) any later
10version.
11
12GCC is distributed in the hope that it will be useful, but WITHOUT ANY
13WARRANTY; without even the implied warranty of MERCHANTABILITY or
14FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
15for more details.
16
17You should have received a copy of the GNU General Public License
18along with GCC; see the file COPYING3.  If not see
19<http://www.gnu.org/licenses/>.  */
20
21#undef TARGET_OS_CPP_BUILTINS
22#define TARGET_OS_CPP_BUILTINS()				\
23  do								\
24    {								\
25      GNU_USER_TARGET_OS_CPP_BUILTINS ();			\
26      builtin_define ("__uClinux__");				\
27    }								\
28  while (0)
29
30#undef SUBTARGET_CPP_SPEC
31#define SUBTARGET_CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}"
32
33#undef SIZE_TYPE
34#define SIZE_TYPE "unsigned int"
35
36#undef PTRDIFF_TYPE
37#define PTRDIFF_TYPE "int"
38
39#undef WCHAR_TYPE
40#define WCHAR_TYPE "long int"
41
42#undef WCHAR_TYPE_SIZE
43#define WCHAR_TYPE_SIZE 32
44
45#undef ASM_SPEC
46#define ASM_SPEC \
47 "%{mtext-section-literals:--text-section-literals} \
48  %{mno-text-section-literals:--no-text-section-literals} \
49  %{mtarget-align:--target-align} \
50  %{mno-target-align:--no-target-align} \
51  %{mlongcalls:--longcalls} \
52  %{mno-longcalls:--no-longcalls} \
53  %{mauto-litpools:--auto-litpools} \
54  %{mno-auto-litpools:--no-auto-litpools}"
55
56#undef LINK_SPEC
57#define LINK_SPEC "%{!no-elf2flt:%{!elf2flt*:-elf2flt}}"
58
59#undef LOCAL_LABEL_PREFIX
60#define LOCAL_LABEL_PREFIX	"."
61
62/* Don't enable "-fpic" for Xtensa uclinux.  */
63#define XTENSA_ALWAYS_PIC 0
64
65#undef TARGET_LIBC_HAS_FUNCTION
66#define TARGET_LIBC_HAS_FUNCTION no_c99_libc_has_function
67
68#undef DBX_REGISTER_NUMBER
69
70