]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/config/i386/unix.h
Update copyright years in gcc/
[thirdparty/gcc.git] / gcc / config / i386 / unix.h
CommitLineData
f6cfbd02 1/* Definitions for Unix assembler syntax for the Intel 80386.
23a5b65a 2 Copyright (C) 1988-2014 Free Software Foundation, Inc.
f6cfbd02 3
a805d35f 4This file is part of GCC.
f6cfbd02 5
a805d35f 6GCC is free software; you can redistribute it and/or modify
f6cfbd02 7it under the terms of the GNU General Public License as published by
2f83c7d6 8the Free Software Foundation; either version 3, or (at your option)
f6cfbd02
RS
9any later version.
10
a805d35f 11GCC is distributed in the hope that it will be useful,
f6cfbd02
RS
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
748086b7
JJ
16Under Section 7 of GPL version 3, you are granted additional
17permissions described in the GCC Runtime Library Exception, version
183.1, as published by the Free Software Foundation.
19
20You should have received a copy of the GNU General Public License and
21a copy of the GCC Runtime Library Exception along with this program;
22see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
2f83c7d6 23<http://www.gnu.org/licenses/>. */
f6cfbd02
RS
24
25/* This file defines the aspects of assembler syntax
26 that are the same for all the i386 Unix systems
27 (though they may differ in non-Unix systems). */
28
c2585065
CH
29/* Define macro used to output shift-double opcodes when the shift
30 count is in %cl. Some assemblers require %cl as an argument;
31 some don't. This macro controls what to do: by default, don't
32 print %cl. */
b95a0668 33#define SHIFT_DOUBLE_OMITS_COUNT 1
f6cfbd02
RS
34\f
35/* Define the syntax of pseudo-ops, labels and comments. */
36
c6075b13
NC
37/* String containing the assembler's comment-starter.
38 Note the trailing space is necessary in case the character
39 that immediately follows the comment is '*'. If this happens
40 and the space is not there the assembler will interpret this
41 as the start of a C-like slash-star comment and complain when
42 there is no terminator. */
43
44#define ASM_COMMENT_START "/ "
f6cfbd02
RS
45
46/* Output to assembler file text saying following lines
47 may contain character constants, extra white space, comments, etc. */
48
49#define ASM_APP_ON "/APP\n"
50
51/* Output to assembler file text saying following lines
52 no longer contain unusual constructs. */
53
54#define ASM_APP_OFF "/NO_APP\n"
55
56/* Output before read-only data. */
57
71d48a01 58#define TEXT_SECTION_ASM_OP "\t.text"
f6cfbd02
RS
59
60/* Output before writable (initialized) data. */
61
71d48a01 62#define DATA_SECTION_ASM_OP "\t.data"
f6cfbd02
RS
63
64/* Output before writable (uninitialized) data. */
65
614cd6b0 66#define BSS_SECTION_ASM_OP "\t.bss"
f6cfbd02 67
506a61b1 68/* Globalizing directive for a label. */
f39cd38b 69#define GLOBAL_ASM_OP "\t.globl\t"
bbda1b9c
JVA
70
71/* By default, target has a 80387, uses IEEE compatible arithmetic,
67e5db2c 72 and returns float values in the 387. */
0a1c5e55 73#undef TARGET_SUBTARGET_DEFAULT
ccf8e764
RH
74#define TARGET_SUBTARGET_DEFAULT \
75 (MASK_80387 | MASK_IEEE_FP | MASK_FLOAT_RETURNS)
bbda1b9c 76
ccf8e764
RH
77/* By default, 64-bit mode uses 128-bit long double. */
78#undef TARGET_SUBTARGET64_DEFAULT
79#define TARGET_SUBTARGET64_DEFAULT \
80 MASK_128BIT_LONG_DOUBLE