1/* Configuration file for an m68k OpenBSD target.
2   Copyright (C) 1999-2015 Free Software Foundation, Inc.
3
4This file is part of GCC.
5
6GCC is free software; you can redistribute it and/or modify
7it under the terms of the GNU General Public License as published by
8the Free Software Foundation; either version 3, or (at your option)
9any later version.
10
11GCC is distributed in the hope that it will be useful,
12but WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14GNU General Public License for more details.
15
16You should have received a copy of the GNU General Public License
17along with GCC; see the file COPYING3.  If not see
18<http://www.gnu.org/licenses/>.  */
19
20/* Target OS builtins.  */
21#define TARGET_OS_CPP_BUILTINS()		\
22  do						\
23    {						\
24	builtin_define ("__unix__");		\
25	builtin_define ("__OpenBSD__");		\
26	builtin_assert ("system=unix");		\
27	builtin_assert ("system=OpenBSD");	\
28   }						\
29  while (0)
30
31/* Define __HAVE_68881__ in preprocessor, unless -msoft-float is specified.
32   This will control the use of inline 68881 insns in certain macros.  */
33#undef CPP_SPEC
34#define CPP_SPEC "%{!msoft-float:-D__HAVE_68881__ -D__HAVE_FPU__} %{posix:-D_POSIX_SOURCE} %{pthread:-D_POSIX_THREADS}"
35
36#undef ASM_SPEC
37#define ASM_SPEC "%(asm_cpu_spec) %{fpic|fpie:-k} %{fPIC|fPIE:-k -K}"
38
39/* Layout of source language data types.  */
40
41/* This must agree with <machine/ansi.h> */
42#undef SIZE_TYPE
43#define SIZE_TYPE "long unsigned int"
44
45#undef PTRDIFF_TYPE
46#define PTRDIFF_TYPE "long int"
47
48#undef WCHAR_TYPE
49#define WCHAR_TYPE "int"
50
51#undef WCHAR_TYPE_SIZE
52#define WCHAR_TYPE_SIZE 32
53
54#undef WINT_TYPE
55#define WINT_TYPE "int"
56
57/* Storage layout.  */
58
59/* Every structure or union's size must be a multiple of 2 bytes.  */
60#define STRUCTURE_SIZE_BOUNDARY 16
61
62/* Specific options for DBX Output.  */
63
64/* This is BSD, so it wants DBX format.  */
65#define DBX_DEBUGGING_INFO 1
66
67/* Do not break .stabs pseudos into continuations.  */
68#define DBX_CONTIN_LENGTH 0
69
70/* This is the char to use for continuation (in case we need to turn
71   continuation back on).  */
72#define DBX_CONTIN_CHAR '?'
73
74/* Stack & calling: aggregate returns.  */
75
76/* ??? This is traditional, but quite possibly wrong.  It appears to
77   disagree with gdb.  */
78#define PCC_STATIC_STRUCT_RETURN 1
79
80/* Don't default to pcc-struct-return, because gcc is the only compiler, and
81   we want to retain compatibility with older gcc versions.  */
82#define DEFAULT_PCC_STRUCT_RETURN 0
83
84/* Assembler format: exception region output.  */
85
86/* All configurations that don't use elf must be explicit about not using
87   dwarf unwind information.  */
88#define DWARF2_UNWIND_INFO 0
89
90#define TARGET_HAVE_NAMED_SECTIONS false
91