unix.h revision 169689
1130331Sanholt/* Definitions for Unix assembler syntax for the Intel 80386. 2145132Sanholt Copyright (C) 1988, 1994, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. 3145132Sanholt 4145132SanholtThis file is part of GCC. 5130331Sanholt 6130331SanholtGCC is free software; you can redistribute it and/or modify 7130331Sanholtit under the terms of the GNU General Public License as published by 8130331Sanholtthe Free Software Foundation; either version 2, or (at your option) 9182080Srnolandany later version. 10182080Srnoland 11182080SrnolandGCC is distributed in the hope that it will be useful, 12182080Srnolandbut WITHOUT ANY WARRANTY; without even the implied warranty of 13182080SrnolandMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14182080SrnolandGNU General Public License for more details. 15182080Srnoland 16157617SanholtYou should have received a copy of the GNU General Public License 17145132Sanholtalong with GCC; see the file COPYING. If not, write to 18157617Sanholtthe Free Software Foundation, 51 Franklin Street, Fifth Floor, 19157617SanholtBoston, MA 02110-1301, USA. */ 20157617Sanholt 21157617Sanholt/* This file defines the aspects of assembler syntax 22157617Sanholt that are the same for all the i386 Unix systems 23157617Sanholt (though they may differ in non-Unix systems). */ 24145132Sanholt 25157617Sanholt/* Define macro used to output shift-double opcodes when the shift 26157617Sanholt count is in %cl. Some assemblers require %cl as an argument; 27157617Sanholt some don't. This macro controls what to do: by default, don't 28145132Sanholt print %cl. */ 29157617Sanholt#define SHIFT_DOUBLE_OMITS_COUNT 1 30157617Sanholt 31182080Srnoland/* Define the syntax of pseudo-ops, labels and comments. */ 32145132Sanholt 33145132Sanholt/* String containing the assembler's comment-starter. */ 34182080Srnoland 35182080Srnoland#define ASM_COMMENT_START "/" 36182080Srnoland 37157617Sanholt/* Output to assembler file text saying following lines 38157617Sanholt may contain character constants, extra white space, comments, etc. */ 39182080Srnoland 40182080Srnoland#define ASM_APP_ON "/APP\n" 41182080Srnoland 42182080Srnoland/* Output to assembler file text saying following lines 43182080Srnoland no longer contain unusual constructs. */ 44182080Srnoland 45182080Srnoland#define ASM_APP_OFF "/NO_APP\n" 46182080Srnoland 47182080Srnoland/* Output before read-only data. */ 48182080Srnoland 49182080Srnoland#define TEXT_SECTION_ASM_OP "\t.text" 50182080Srnoland 51182080Srnoland/* Output before writable (initialized) data. */ 52182080Srnoland 53182080Srnoland#define DATA_SECTION_ASM_OP "\t.data" 54182080Srnoland 55182080Srnoland/* Output before writable (uninitialized) data. */ 56182080Srnoland 57182080Srnoland#define BSS_SECTION_ASM_OP "\t.bss" 58157617Sanholt 59182080Srnoland/* Globalizing directive for a label. */ 60148211Sanholt#define GLOBAL_ASM_OP ".globl " 61157617Sanholt 62157617Sanholt/* By default, target has a 80387, uses IEEE compatible arithmetic, 63148211Sanholt and returns float values in the 387. */ 64148211Sanholt 65148211Sanholt#define TARGET_SUBTARGET_DEFAULT (MASK_80387 | MASK_IEEE_FP | MASK_FLOAT_RETURNS) 66157617Sanholt