亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? arm.h

?? 早期freebsd實現
?? H
?? 第 1 頁 / 共 4 頁
字號:
/* Definitions of target machine for GNU compiler, for Acorn RISC Machine.   Copyright (C) 1991 Free Software Foundation, Inc.   Contributed by Pieter `Tiggr' Schoenmakers (rcpieter@win.tue.nl)              and Martin Simmons (@harleqn.co.uk).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.  *//* Sometimes the directive `riscos' is checked.  This does not imply that this   tm file can be used unchanged to build a GCC for RISC OS.   (Since in fact, it can't.)  */extern void output_prologue ();extern void output_epilogue ();extern char *arm_output_asm_insn ();extern char *arm_output_llc ();extern char *output_add_immediate ();extern char *output_call ();extern char *output_move_double ();extern char *output_mov_double_fpu_from_arm ();extern char *output_mov_double_arm_from_fpu ();extern char *output_mov_immediate ();extern char *output_multi_immediate ();extern char *output_shifted_move ();/* Translation to find startup files.  On RISCiX boxes, gcrt0.o is in   /usr/lib.  */#define STARTFILE_SPEC  \  "%{pg:/usr/lib/gcrt0.o%s}%{!pg:%{p:mcrt0.o%s}%{!p:crt0.o%s}}"#ifdef riscos#define CPP_PREDEFINES  "-Darm -Driscos"#else#define CPP_PREDEFINES  "-Darm -Driscix -Dunix"#endif/* Run-time Target Specification.  */#define TARGET_VERSION  \  fputs (" (ARM/RISCiX)", stderr);/* Run-time compilation parameters selecting different hardware subsets.   On the ARM, misuse it in a different way.  */extern int target_flags;/* Nonzero if the function prologue (and epilogue) should obey   the ARM Procedure Call Standard.  */#define TARGET_APCS	(target_flags & 1)/* Nonzero if the function prologue should output the function name to enable   the post mortem debugger to print a backtrace (very useful on RISCOS,   unused on RISCiX).  Specifying this flag also enables -mapcs.   XXX Must still be implemented in the prologue.  */#define TARGET_POKE_FUNCTION_NAME	(target_flags & 2)/* Nonzero if floating point instructions are emulated by the FPE, in which   case instruction scheduling becomes very uninteresting.  */#define TARGET_FPE	(target_flags & 4)#define TARGET_SWITCHES  \{                         			\  {"apcs",		 1},			\  {"poke-function-name", 2},			\  {"fpe",		 4},			\  {"",   		 TARGET_DEFAULT }	\}#define TARGET_DEFAULT  0#define TARGET_MEM_FUNCTIONS 1/* OVERRIDE_OPTIONS takes care of the following:   - if -mpoke-function-name, then -mapcs.   - if doing debugging, then -mapcs; if RISCOS, then -mpoke-function-name.   - if floating point is done by emulation, forget about instruction     scheduling.  Note that this only saves compilation time; it doesn't     matter for the final code.  */#ifdef riscos#define TARGET_WHEN_DEBUGGING  3#else#define TARGET_WHEN_DEBUGGING  1#endif#define OVERRIDE_OPTIONS  \{								\  if (write_symbols != NO_DEBUG)				\    target_flags |= TARGET_WHEN_DEBUGGING;			\  else if (TARGET_POKE_FUNCTION_NAME)				\    target_flags |= 1;						\  if (TARGET_FPE)						\    flag_schedule_insns = flag_schedule_insns_after_reload = 0;	\}/* Omitting the frame pointer is a very good idea on the ARM, especially if   not TARGET_APCS, in which case all that pushing on function entry isn't   mandatory anymore.  */#define OPTIMIZATION_OPTIONS(OPTIMIZE)  \{					\  if (OPTIMIZE)				\    flag_omit_frame_pointer = 1;	\}/* Target machine storage Layout.  *//* Define this if most significant bit is lowest numbered   in instructions that operate on numbered bit-fields.  */#define BITS_BIG_ENDIAN  0/* Define this if most significant byte of a word is the lowest numbered.  */#define BYTES_BIG_ENDIAN  0/* Define this if most significant word of a multiword number is the lowest   numbered.  */#define WORDS_BIG_ENDIAN  0/* Number of bits in an addressable storage unit */#define BITS_PER_UNIT  8#define BITS_PER_WORD  32#define UNITS_PER_WORD	4#define POINTER_SIZE  32#define PARM_BOUNDARY  	32#define STACK_BOUNDARY  32#define FUNCTION_BOUNDARY  32#define EMPTY_FIELD_BOUNDARY  32#define BIGGEST_ALIGNMENT  32/* Every structures size must be a multiple of 32 bits.  */#define STRUCTURE_SIZE_BOUNDARY 32#define STRICT_ALIGNMENT 1/* Define number of bits in most basic integer type.   (If undefined, default is BITS_PER_WORD).  *//* #define INT_TYPE_SIZE *//* Standard register usage.  *//* Register allocation in ARM Procedure Call Standard (as used on RISCiX):   (S - saved over call).	r0	   *	argument word/integer result	r1-r3		argument word	r4-r8	     S	register variable	r9	     S	(rfp) register variable (real frame pointer)	r10  	   F S	(sl) stack limit (not currently used)	r11 	   F S	(fp) argument pointer	r12		(ip) temp workspace	r13  	   F S	(sp) lower end of current stack frame	r14		(lr) link address/workspace	r15	   F	(pc) program counter	f0		floating point result	f1-f3		floating point scratch	f4-f7	     S	floating point variable   *: See CONDITIONAL_REGISTER_USAGE  *//* The number of hard registers is 16 ARM + 8 FPU.  */#define FIRST_PSEUDO_REGISTER  24/* 1 for registers that have pervasive standard uses   and are not available for the register allocator.  */#define FIXED_REGISTERS  \{                        \  0,0,0,0,0,0,0,0,	 \  0,0,1,1,0,1,0,1,	 \  0,0,0,0,0,0,0,0	 \}/* 1 for registers not available across function calls.   These must include the FIXED_REGISTERS and also any   registers that can be used without being saved.   The latter must include the registers where values are returned   and the register where structure-value addresses are passed.   Aside from that, you can include as many other registers as you like.  */#define CALL_USED_REGISTERS  \{                            \  1,1,1,1,0,0,0,0,	     \  0,0,1,1,1,1,1,1,	     \  1,1,1,1,0,0,0,0	     \}/* If doing stupid life analysis, avoid a bug causing a return value r0 to be   trampled.  This effectively reduces the number of available registers by 1.   XXX It is a hack, I know.   XXX Is this still needed?  */#define CONDITIONAL_REGISTER_USAGE  \{			\  if (obey_regdecls)	\    fixed_regs[0] = 1;	\}/* Return number of consecutive hard regs needed starting at reg REGNO   to hold something of mode MODE.   This is ordinarily the length in words of a value of mode MODE   but can be less for certain modes in special long registers.   On the ARM regs are UNITS_PER_WORD bits wide; FPU regs can hold any FP   mode.  */#define HARD_REGNO_NREGS(REGNO, MODE)  \    ((REGNO) >= 16 ? 1							\     : ((GET_MODE_SIZE (MODE) + UNITS_PER_WORD - 1) / UNITS_PER_WORD))/* Value is 1 if hard register REGNO can hold a value of machine-mode MODE.   This is TRUE for ARM regs since they can hold anything, and TRUE for FPU   regs holding FP.  */#define HARD_REGNO_MODE_OK(REGNO, MODE)  \  ((REGNO) < 16 || GET_MODE_CLASS (MODE) == MODE_FLOAT)/* Value is 1 if it is a good idea to tie two pseudo registers   when one has mode MODE1 and one has mode MODE2.   If HARD_REGNO_MODE_OK could produce different values for MODE1 and MODE2,   for any hard reg, then this must be 0 for correct output.  */#define MODES_TIEABLE_P(MODE1, MODE2)  \  (((MODE1) == SFmode || (MODE1) == DFmode)      \   == ((MODE2) == SFmode || (MODE2) == DFmode))/* Specify the registers used for certain standard purposes.   The values of these macros are register numbers.  *//* Define this if the program counter is overloaded on a register.  */#define PC_REGNUM		15/* Register to use for pushing function arguments.  */#define STACK_POINTER_REGNUM	13/* Base register for access to local variables of the function.  */#define FRAME_POINTER_REGNUM	9/* Value should be nonzero if functions must have frame pointers.   Zero means the frame pointer need not be set up (and parms may be accessed   via the stack pointer) in functions that seem suitable.  */#define FRAME_POINTER_REQUIRED	0/* Base register for access to arguments of the function.  */#define ARG_POINTER_REGNUM	11/* The native (Norcroft) Pascal compiler for the ARM passes the static chain   as an invisible last argument (possible since varargs don't exist in   Pascal), so the following is not true.  */#define STATIC_CHAIN_REGNUM	8/* Register in which address to store a structure value   is passed to a function.  */#define STRUCT_VALUE_REGNUM	0/* The order in which register should be allocated.  It is good to use ip   since no saving is required (though calls clobber it).  It is quite good to   use lr since other calls may clobber it anyway.  */#define REG_ALLOC_ORDER  \{                                   \    0, 1, 2, 3, 12, 14,	4, 5,       \    6, 7, 8, 10, 9, 11, 13, 15,     \    16, 17, 18, 19, 20, 21, 22, 23  \}/* Register and constant classes.  *//* Register classes: all ARM regs or all FPU regs---simple! */enum reg_class{  NO_REGS,  FPU_REGS,  GENERAL_REGS,  ALL_REGS,  LIM_REG_CLASSES};#define N_REG_CLASSES  (int) LIM_REG_CLASSES/* Give names of register classes as strings for dump file.   */#define REG_CLASS_NAMES  \{			\  "NO_REGS",		\  "FPU_REGS",		\  "GENERAL_REGS",	\  "ALL_REGS",		\}/* Define which registers fit in which classes.   This is an initializer for a vector of HARD_REG_SET   of length N_REG_CLASSES.  */#define REG_CLASS_CONTENTS  \{				\  0x000000,  /* NO_REGS  */	\  0xFF0000,  /* FPU_REGS */	\  0x00FFFF,  /* GENERAL_REGS */	\  0xFFFFFF   /* ALL_REGS */	\}/* The same information, inverted:   Return the class number of the smallest class containing   reg number REGNO.  This could be a conditional expression   or could index an array.  */#define REGNO_REG_CLASS(REGNO)  \  ((REGNO) < 16 ? GENERAL_REGS : FPU_REGS)/* The class value for index registers, and the one for base regs.  */#define INDEX_REG_CLASS  GENERAL_REGS#define BASE_REG_CLASS	GENERAL_REGS/* Get reg_class from a letter such as appears in the machine description.   We only need constraint `f' for FPU_REGS (`r' == GENERAL_REGS).  */#define REG_CLASS_FROM_LETTER(C)  \  ((C)=='f' ? FPU_REGS : NO_REGS)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产欧美精品一区二区色综合| 亚洲高清免费在线| 亚洲精品成人少妇| 国产一区二区三区黄视频| 成人黄色777网| 日韩欧美国产电影| 亚洲成在人线在线播放| 成人一二三区视频| 亚洲精品一线二线三线| 一区二区三区蜜桃| 色综合天天综合色综合av | 色综合久久久久久久久| 欧美精品一区男女天堂| 亚洲一区二区三区国产| 成人午夜精品一区二区三区| 日韩视频一区二区在线观看| 亚洲欧美韩国综合色| 不卡的av在线播放| 中文一区二区在线观看| 国产一区二区三区免费| 日韩视频一区二区在线观看| 日本欧美大码aⅴ在线播放| 欧美日韩免费不卡视频一区二区三区| 国产精品久久久久久久午夜片| 国产在线一区观看| 欧美变态凌虐bdsm| 免费成人av资源网| 欧美一区二区成人6969| 日韩精品91亚洲二区在线观看| 欧美亚洲国产一区在线观看网站| 国产精品麻豆视频| 99久久亚洲一区二区三区青草| 欧美国产精品劲爆| 国产黄人亚洲片| 国产精品欧美一区二区三区| 26uuu国产一区二区三区| 中文字幕一区二区三区四区| 国产美女视频一区| 久久久99免费| 国产成人h网站| 欧美高清在线视频| jlzzjlzz亚洲女人18| 亚洲美女视频在线观看| 欧美日韩卡一卡二| 男人的天堂亚洲一区| 精品久久久久一区二区国产| 国内精品国产成人国产三级粉色| 国产午夜精品美女毛片视频| 99久久精品国产精品久久| 亚洲精品国产一区二区三区四区在线| av高清久久久| 亚洲国产精品久久久男人的天堂 | 国产二区国产一区在线观看| 国产精品护士白丝一区av| 91亚洲精品久久久蜜桃网站 | 国产精品二区一区二区aⅴ污介绍| av电影在线观看一区| 亚洲国产人成综合网站| 日韩免费观看2025年上映的电影| 国产精品一区二区在线看| 18欧美乱大交hd1984| 欧美日韩成人综合在线一区二区| 久久66热re国产| 亚洲色图.com| 日韩欧美国产wwwww| 风间由美一区二区三区在线观看| 亚洲在线免费播放| 久久这里只有精品首页| 91网站视频在线观看| 日韩国产精品91| 国产精品不卡视频| 6080亚洲精品一区二区| 成人在线视频一区| 亚洲午夜影视影院在线观看| 国产日产精品一区| 欧美日韩在线不卡| 成人教育av在线| 免费在线成人网| 综合精品久久久| 日韩精品一区二区三区中文不卡| 99精品国产热久久91蜜凸| 久久成人免费网| 一区二区三区中文免费| 久久亚洲二区三区| 欧美图片一区二区三区| 成人性生交大片| 国产一区二区精品久久91| 亚洲一区二区精品3399| 亚洲国产精品成人综合色在线婷婷| 欧美一区二区成人| 欧美日韩综合一区| 色国产精品一区在线观看| 国产精品一区免费视频| 美女脱光内衣内裤视频久久网站| 一区二区三区在线观看欧美| 国产精品免费网站在线观看| 精品国产1区二区| 91精品国产色综合久久不卡蜜臀 | 亚洲色图欧美偷拍| 久久亚洲二区三区| 欧美精品一区二区三区蜜臀| 日韩一区二区三免费高清| 欧美日韩一区二区三区免费看| 91色在线porny| 波多野结衣中文字幕一区 | 麻豆一区二区99久久久久| 亚洲精品视频免费看| 亚洲同性同志一二三专区| 欧美国产精品中文字幕| 国产精品色一区二区三区| 久久亚洲一级片| 久久九九全国免费| 久久久精品一品道一区| 国产视频一区二区在线| 久久久久久毛片| 中文字幕+乱码+中文字幕一区| 久久久九九九九| 日本一区二区电影| 亚洲视频在线观看一区| 亚洲人精品午夜| 伊人开心综合网| 午夜成人免费电影| 精品一区二区av| 丁香婷婷综合色啪| 色拍拍在线精品视频8848| 欧美中文字幕一区二区三区| 欧美日韩高清在线播放| 日韩精品中文字幕一区二区三区 | 国产乱妇无码大片在线观看| 国产精品91一区二区| 成人免费高清在线| 91捆绑美女网站| 欧美特级限制片免费在线观看| 7777精品伊人久久久大香线蕉超级流畅| 日韩欧美视频在线 | 欧美精品在线视频| 日韩欧美视频在线| 日本一区二区三区在线不卡| 亚洲欧美国产77777| 日韩精品1区2区3区| 国产自产2019最新不卡| 成人的网站免费观看| 久久综合久久久久88| 久久精品亚洲麻豆av一区二区| 欧美国产精品一区二区三区| 亚洲自拍都市欧美小说| 青青草精品视频| 不卡的电影网站| 欧美一区永久视频免费观看| 经典一区二区三区| 国产精品99久久久久久似苏梦涵 | 欧美xxxxxxxx| 日韩伦理电影网| 毛片一区二区三区| 波多野结衣精品在线| 欧美日韩午夜在线| 国产欧美视频一区二区| 亚洲一区二区三区在线| 国产乱对白刺激视频不卡| 欧美三级在线视频| 国产欧美日韩视频一区二区 | 国产精品免费观看视频| 亚洲第一综合色| a级精品国产片在线观看| 日韩午夜激情视频| 亚洲三级视频在线观看| 狠狠色狠狠色综合日日91app| 色先锋资源久久综合| 国产日韩欧美a| 免费观看久久久4p| 欧美综合视频在线观看| 91免费精品国自产拍在线不卡| 日本道在线观看一区二区| 国产麻豆欧美日韩一区| 国产真实乱子伦精品视频| 欧美在线观看视频在线| 久久免费看少妇高潮| 午夜精品久久久久久久99樱桃| 国产电影精品久久禁18| 91精品国产福利| 亚洲永久精品国产| 91啪在线观看| 中文字幕成人av| 国产美女久久久久| 精品国产网站在线观看| 亚洲不卡在线观看| 91蝌蚪国产九色| **网站欧美大片在线观看| 国产成人精品在线看| 久久久久国产精品麻豆ai换脸 | 日韩经典一区二区| 色八戒一区二区三区| 亚洲欧洲一区二区在线播放| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | 成人av电影在线观看| 久久综合视频网| 韩国欧美一区二区| 精品国内片67194| 久久成人综合网| 久久久久国产精品麻豆ai换脸 |