pa-pro.h

来自「GCC编译器源代码」· C头文件 代码 · 共 79 行

H
79
字号
/* Definitions of target machine for GNU compiler, for PRO.   Copyright (C) 1994, 1995, 1996 Free Software Foundation, Inc.This file is part of GNU CC.GNU CC is free software; you can redistribute it and/or modifyit under the terms of the GNU General Public License as published bythe Free Software Foundation; either version 2, or (at your option)any later version.GNU CC is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See theGNU General Public License for more details.You should have received a copy of the GNU General Public Licensealong with GNU CC; see the file COPYING.  If not, write tothe Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  *//* Global constructor and destructor support.  *//* Define the pseudo-ops used to switch to the .ctors and .dtors sections.    Note that we want to give these sections the SHF_WRITE attribute   because these sections will actually contain data (i.e. tables of   addresses of functions in the current root executable or shared library   file) and, in the case of a shared library, the relocatable addresses   will have to be properly resolved/relocated (and then written into) by   the dynamic linker when it actually attaches the given shared library   to the executing process.  */ #define CTORS_SECTION_ASM_OP    "\t.section\t\".ctors\",#alloc,#write"#define DTORS_SECTION_ASM_OP    "\t.section\t\".dtors\",#alloc,#write"#define CTORS_SECTION_FUNCTION						\void									\ctors_section ()							\{									\  if (in_section != in_ctors)						\    {									\      fprintf (asm_out_file, "%s\n", CTORS_SECTION_ASM_OP);		\      in_section = in_ctors;						\    }									\}#define DTORS_SECTION_FUNCTION						\void									\dtors_section ()							\{									\  if (in_section != in_dtors)						\    {									\      fprintf (asm_out_file, "%s\n", DTORS_SECTION_ASM_OP);		\      in_section = in_dtors;						\    }									\}/* A C statement (sans semicolon) to output an element in the table of   global destructors.  */#define ASM_OUTPUT_DESTRUCTOR(FILE,NAME)       				\  do {									\    dtors_section ();                   				\    fputs ("\t.word\t ", FILE);				\    assemble_name (FILE, NAME);              				\    fputs ("\n", FILE);						\  } while (0)/* A C statement (sans semicolon) to output an element in the table of   global constructors.  */#define ASM_OUTPUT_CONSTRUCTOR(FILE,NAME)				\  do {									\    ctors_section ();							\    fputs ("\t.word\t ", FILE);				\    assemble_name (FILE, NAME);						\    fputs ("\n", FILE);						\  } while (0)/* JUMP_IN_DELAY + PORTABLE_RUNTIME + GAS + NO_SPACE_REGS + SOFT_FLOAT */#define TARGET_DEFAULT (4 + 8 + 64 + 128 + 256)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?