bsd.h revision 169689
113044Sasami/* Definitions for BSD assembler syntax for Intel 386 2116111Sphk (actually AT&T syntax for insns and operands, 313044Sasami adapted to BSD conventions for symbol names and debugging.) 413044Sasami Copyright (C) 1988, 1996, 2000, 2002 Free Software Foundation, Inc. 513044Sasami 613044SasamiThis file is part of GCC. 713044Sasami 813044SasamiGCC is free software; you can redistribute it and/or modify 913044Sasamiit under the terms of the GNU General Public License as published by 1013044Sasamithe Free Software Foundation; either version 2, or (at your option) 1113044Sasamiany later version. 1213044Sasami 1313044SasamiGCC is distributed in the hope that it will be useful, 1413044Sasamibut WITHOUT ANY WARRANTY; without even the implied warranty of 1513044SasamiMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 1613044SasamiGNU General Public License for more details. 1713044Sasami 1813044SasamiYou should have received a copy of the GNU General Public License 1913044Sasamialong with GCC; see the file COPYING. If not, write to 2013044Sasamithe Free Software Foundation, 51 Franklin Street, Fifth Floor, 2113044SasamiBoston, MA 02110-1301, USA. */ 2213044Sasami 2313044Sasami/* Use the Sequent Symmetry assembler syntax. */ 2413044Sasami 2513044Sasami/* Define the syntax of pseudo-ops, labels and comments. */ 2613044Sasami 2713044Sasami/* Prefix for internally generated assembler labels. If we aren't using 2813044Sasami underscores, we are using prefix `.'s to identify labels that should 2913044Sasami be ignored, as in `i386/gas.h' --karl@cs.umb.edu */ 3013044Sasami 3113044Sasami#define LPREFIX "L" 3213044Sasami 3313044Sasami/* Assembler pseudos to introduce constants of various size. */ 34114589Sobrien 35114589Sobrien#define ASM_SHORT "\t.word\t" 3636628Scharnier#define ASM_LONG "\t.long\t" 3713044Sasami#define ASM_QUAD "\t.quad\t" /* Should not be used for 32bit compilation. */ 3848568Sbillf 3945329Speter/* This was suggested, but it shouldn't be right for DBX output. -- RMS 4013044Sasami #define ASM_OUTPUT_SOURCE_FILENAME(FILE, NAME) */ 4113044Sasami 4213044Sasami 4313044Sasami/* Define the syntax of labels and symbol definitions/declarations. */ 4469793Sobrien 4513044Sasami/* This is how to output an assembler line 4613044Sasami that says to advance the location counter by SIZE bytes. */ 4713044Sasami 4813044Sasami#define ASM_OUTPUT_SKIP(FILE,SIZE) \ 49115730Sphk fprintf (FILE, "\t.space "HOST_WIDE_INT_PRINT_UNSIGNED"\n", (SIZE)) 5013044Sasami 51116111Sphk/* Define the syntax of labels and symbol definitions/declarations. */ 52116111Sphk 53157740Scracauer/* This says how to output an assembler line 54157740Scracauer to define a global common symbol. */ 5513044Sasami 5613044Sasami#define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED) \ 5713044Sasami( fputs (".comm ", (FILE)), \ 5813044Sasami assemble_name ((FILE), (NAME)), \ 5913044Sasami fprintf ((FILE), ",%u\n", (int)(ROUNDED))) 60109417Sphk 6113044Sasami/* This says how to output an assembler line 6213044Sasami to define a local common symbol. */ 63109417Sphk 64116111Sphk#define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED) \ 6513044Sasami( fputs (".lcomm ", (FILE)), \ 6613044Sasami assemble_name ((FILE), (NAME)), \ 67116111Sphk fprintf ((FILE), ",%u\n", (int)(ROUNDED))) 6813762Sasami 69116111Sphk/* This is how to output an assembler line 70157740Scracauer that says to advance the location counter 71157740Scracauer to a multiple of 2**LOG bytes. */ 72157740Scracauer 73157740Scracauer#define ASM_OUTPUT_ALIGN(FILE,LOG) \ 74116111Sphk if ((LOG)!=0) fprintf ((FILE), "\t.align %d\n", (LOG)) 7513044Sasami 7613044Sasami/* This is how to store into the string BUF 7713044Sasami the symbol_ref name of an internal numbered label where 7813044Sasami PREFIX is the class of label and NUM is the number within the class. 7913044Sasami This is suitable for output with `assemble_name'. */ 8013044Sasami 8113044Sasami#define ASM_GENERATE_INTERNAL_LABEL(BUF,PREFIX,NUMBER) \ 8213044Sasami sprintf ((BUF), "*%s%ld", (PREFIX), (long)(NUMBER)) 8313044Sasami 8492539Simp/* The prefix to add to user-visible assembler symbols. */ 8592539Simp 8692539Simp#define USER_LABEL_PREFIX "_" 8792539Simp 88109417Sphk/* Sequent has some changes in the format of DBX symbols. */ 8992539Simp#define DBX_NO_XREFS 1 9013044Sasami 9113044Sasami/* Don't split DBX symbols into continuations. */ 9292539Simp#define DBX_CONTIN_LENGTH 0 9313044Sasami