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

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

?? tm-mips.h

?? 這是完整的gcc源代碼
?? H
?? 第 1 頁 / 共 5 頁
字號:
#define FP_REG_P(REGNO) ((unsigned) ((REGNO) - FP_REG_FIRST) < FP_REG_NUM)#define FP_CALL_REG_P(REGNO)					\  (FP_REG_P (REGNO)						\   || (REGNO) == (4 + GP_REG_FIRST)				\   || (REGNO) == (6 + GP_REG_FIRST))/* 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 MIPS, all general registers are one word long. I have chosen to   use Floating point register pairs.  */#define HARD_REGNO_NREGS(REGNO, MODE)					\ ((MODE == SFmode) ? 2 :						\  ((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.   On the MIPS, all general registers can hold all  modes, except   FLOATING POINT.  */#define HARD_REGNO_MODE_OK(REGNO, MODE)					\  ((GET_MODE_CLASS (MODE) == MODE_INT || MODE == VOIDmode)		\	? (GP_REG_P (REGNO))						\	: (GET_MODE_CLASS (MODE) == MODE_FLOAT)				\		?  (((REGNO) & 1) == 0 && FP_CALL_REG_P (REGNO))	\		: 0)							\/* 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))/* MIPS pc is apparently not overloaded on a register.  *//* #define PC_REGNUM 15                                 *//* Register to use for pushing function arguments.  */#define STACK_POINTER_REGNUM 29/* Offset from the stack pointer to the first available location.  */#define STACK_POINTER_OFFSET 0/* Base register for access to local variables of the function.  */#define FRAME_POINTER_REGNUM 30/* 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.   This is computed in `reload', in reload1.c.   At present this is required if we are not a leaf procedure.  This   is because the .frame directive requires a register that does not   change throughout the procedure call, and until stack pushes are   folded into the initial stack allocation, we need an unvarying fp.  */#define FRAME_POINTER_REQUIRED (stack_args_pushed > 0)/* Base register for access to arguments of the function.  */#define ARG_POINTER_REGNUM FRAME_POINTER_REGNUM/* Register in which static-chain is passed to a function.  */#define STATIC_CHAIN_REGNUM 2/* Register in which address to store a structure value   is passed to a function.  */#define STRUCT_VALUE_REGNUM 4/* Mips registers used in prologue/epilogue code when the stack frame   is larger than 32K bytes.  These registers must come from the   scratch register set, and not used for passing and returning   arguments and any other information used in the calling sequence   (such as pic).  */#define MIPS_TEMP1_REGNUM 8#define MIPS_TEMP2_REGNUM 9/* Define NO_FUNCTION_CSE if it is as good or better to call a constant   function address than to call an address kept in a register.  */#define NO_FUNCTION_CSE/* Define the classes of registers for register constraints in the   machine description.  Also define ranges of constants.   One of the classes must always be named ALL_REGS and include all hard regs.   If there is more than one class, another class must be named NO_REGS   and contain no registers.   The name GENERAL_REGS must be the name of a class (or an alias for   another name such as ALL_REGS).  This is the class of registers   that is allowed by "g" or "r" in a register constraint.   Also, registers outside this class are allocated only when   instructions express preferences for them.   The classes must be numbered in nondecreasing order; that is,   a larger-numbered class must never be contained completely   in a smaller-numbered class.   For any two classes, it is very desirable that there be another   class that represents their union.  *//* The MIPS has general and floating point registers.  */enum reg_class  { NO_REGS, GR_REGS, FP_REGS, ALL_REGS, LIM_REG_CLASSES } ;#define N_REG_CLASSES (int) LIM_REG_CLASSES#define GENERAL_REGS GR_REGS/* Give names of register classes as strings for dump file.   */#define REG_CLASS_NAMES							\ {"NO_REGS", "GR_REGS", "FP_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 {{0x00000000, 0x00000000},			\                            {0xffffffff, 0x00000000},			\                            {0x00000000, 0xffffffff},			\			    {0xffffffff, 0xffffffff}}/* 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) ((FP_REG_P (REGNO)) ? FP_REGS : GR_REGS)/* Define a table that lets us find quickly all the reg classes   containing a given one.  This is the initializer for an   N_REG_CLASSES x N_REG_CLASSES array of reg class codes.   Row N is a sequence containing all the class codes for   classes that contain all the regs in class N.  Each row   contains no duplicates, and is terminated by LIM_REG_CLASSES.  *//* We give just a dummy for the first element, which is for NO_REGS.  *//* #define REG_CLASS_SUPERCLASSES  {{LIM_REG_CLASSES},			\  {GR_REGS,ALL_REGS,LIM_REG_CLASSES},					\  {FP_REGS,ALL_REGS,LIM_REG_CLASSES},					\  {ALL_REGS,LIM_REG_CLASSES}						\}*//* We give just a dummy for the first element, which is for NO_REGS.  */#define REG_CLASS_SUPERCLASSES  {{LIM_REG_CLASSES},			\  {ALL_REGS,LIM_REG_CLASSES},						\  {ALL_REGS,LIM_REG_CLASSES},						\  {LIM_REG_CLASSES}							\}/* The inverse relationship:   for each class, a list of all reg classes contained in it.  */#define REG_CLASS_SUBCLASSES						\{{LIM_REG_CLASSES},							\  {GR_REGS,LIM_REG_CLASSES},						\  {FP_REGS,LIM_REG_CLASSES},\  {GR_REGS, FP_REGS, ALL_REGS, LIM_REG_CLASSES}\}/* Define a table that lets us find quickly the class   for the subunion of any two classes.   We say "subunion" because the result need not be exactly   the union; it may instead be a subclass of the union   (though the closer to the union, the better).   But if it contains anything beyond union of the two classes,   you will lose!   This is an initializer for an N_REG_CLASSES x N_REG_CLASSES   array of reg class codes.  The subunion of classes C1 and C2   is just element [C1, C2].  */#define REG_CLASS_SUBUNION						\{{NO_REGS,  GR_REGS,   FP_REGS,  ALL_REGS},				\ {GR_REGS,  GR_REGS,   ALL_REGS, ALL_REGS},				\ {FP_REGS,  ALL_REGS,  FP_REGS,  ALL_REGS},				\ {ALL_REGS, ALL_REGS,  ALL_REGS, ALL_REGS}}/* The class value for index registers, and the one for base regs.  */#define INDEX_REG_CLASS GR_REGS#define BASE_REG_CLASS  GR_REGS				/* REGISTER AND CONSTANT CLASSES				 *//* Get reg_class from a letter such as appears in the machinedescription.  */				/* DEFINED REGISTER CLASSES:				**				** 'f'     : Floating point registers				** 'y'     : General register when used to				**           transfer chunks of Floating point				**           with mfc1 mtc1 insn				 */#define REG_CLASS_FROM_LETTER(C)					\   ((C) == 'f' ? FP_REGS:						\     (C) == 'y' ? GR_REGS:NO_REGS)/* The letters I, J, K, L and M in a register constraint string   can be used to stand for particular ranges of immediate operands.   This macro defines what the ranges are.   C is the letter, and VALUE is a constant value.   Return 1 if VALUE is in the range specified by C.  *//*   For MIPS, `I' is used for the range of constants an arithmetic insn                   can actually contain (16 bits signed integers).               `J' is used for the range which is just zero (since that is	           available as $R0).	       `K' is used for the range of constants a logical insn	           can actually contain (16 bit zero-extended integers).*/#define SMALL_INT(X) ((unsigned) (INTVAL (X) + 0x8000) < 0x10000)#define SMALL_INT_UNSIGNED(X) ((unsigned) (INTVAL (X)) < 0x10000)#define CONST_OK_FOR_LETTER_P(VALUE, C)					\  ((C) == 'I' ? (unsigned) ((VALUE) + 0x8000) < 0x10000			\   : (C) == 'J' ? (VALUE) == 0						\   : (C) == 'K' ? (unsigned) (VALUE) < 0x10000				\   : 0)/* Similar, but for floating constants, and defining letters G and H.   Here VALUE is the CONST_DOUBLE rtx itself.  */				/* DEFINED FLOATING CONSTANT CLASSES:				**				** 'G'     : Floating point 0				 */#define CONST_DOUBLE_OK_FOR_LETTER_P(VALUE, C)				\  ((C) == 'G' && CONST_DOUBLE_LOW ((VALUE)) == 0			\   && CONST_DOUBLE_HIGH ((VALUE)) == 0)/* Given an rtx X being reloaded into a reg required to be   in class CLASS, return the class of reg to actually use.   In general this is just CLASS; but on some machines   in some cases it is preferable to use a more restrictive class.  */#define PREFERRED_RELOAD_CLASS(X,CLASS)					\    (((GET_MODE(X) == SFmode) || (GET_MODE(X) == DFmode))? FP_REGS  :	\     ((GET_MODE(X) == VOIDmode) ? GR_REGS :(CLASS)))/* Same but Mode has been extracted already*/#define PREFERRED_RELOAD_CLASS_FM(X,CLASS)				\    ((((X) == SFmode) || ((X) == DFmode))? FP_REGS  :			\     (((X) == VOIDmode) ? GR_REGS :(CLASS)))/* Return the maximum number of consecutive registers   needed to represent mode MODE in a register of class CLASS.  */#define CLASS_MAX_NREGS(CLASS, MODE)					\ ((((MODE) == DFmode) || ((MODE) == SFmode)) ? 2			\  : ((MODE) == VOIDmode)? ((CLASS) == FP_REGS ? 2 :1)			\  : ((GET_MODE_SIZE (MODE) + UNITS_PER_WORD - 1) / UNITS_PER_WORD))/* Stack layout; function entry, exit and calling.  *//* Define this if pushing a word on the stack   makes the stack pointer a smaller address.  */#define STACK_GROWS_DOWNWARD/* Define this if the nominal address of the stack frame   is at the high-address end of the local variables;   that is, each additional local variable allocated   goes at a more negative offset in the frame.  */#define FRAME_GROWS_DOWNWARD/* Offset within stack frame to start allocating local variables at.   If FRAME_GROWS_DOWNWARD, this is the offset to the END of the   first local allocated.  Otherwise, it is the offset to the BEGINNING   of the first local allocated.  */#define STARTING_FRAME_OFFSET -8/* If we generate an insn to push BYTES bytes,   this says how many the stack pointer really advances by.   On the vax, sp@- in a byte insn really pushes a word.  *//* #define PUSH_ROUNDING(BYTES) 0 *//* Offset of first parameter from the argument pointer register value.  */#define FIRST_PARM_OFFSET(FNDECL) 0/* Offset from top-of-stack address to location to store the   function parameter if it can't go in a register.   Addresses for following parameters are computed relative to this one.   It also has the effect of counting register arguments in the total   argument size. */#define FIRST_PARM_CALLER_OFFSET(FNDECL) 0/* When a parameter is passed in a register, stack space is still   allocated for it.  For the MIPS, stack space must be allocated, cf   Asm Lang Prog Guide page 7-8.   BEWARE that some space is also allocated for non existing arguments   in register. In case an argument list is of form GF used registers   are a0 (a2,a3), but we should push over a1...  */#define REG_PARM_STACK_SPACE/* Align stack frames on 64 bits (Double Word ).  */#define STACK_BOUNDARY 64/* Standard GCC stack related variables that we reference.  */extern int optimize;extern int may_call_alloca;extern int current_function_calls_alloca;extern int frame_pointer_needed;extern int flag_omit_frame_pointer;/* MIPS external variables defined in out-mips.c.  */extern char *reg_numchar[];		/* register names as $r2, etc. */extern char *current_function_name;	/* current function being compiled */extern int num_source_filenames;	/* current .file # */extern int inside_function;		/* != 0 if inside of a function */extern int stack_args_pushed;		/* max bytes pushed for calls */extern int stack_args_preallocated;	/* # bytes for args preallocated */extern int sdb_label_count;		/* block start/end next label # */extern int mips_section_threshold;	/* # bytes of data/sdata cutoff */extern int sym_lineno;			/* sgi next label # for each stmt *//* Make sure 16 bytes are always allocated on the stack.  */#ifndef STACK_ARGS_ADJUST#define STACK_ARGS_ADJUST(SIZE)						\{									\  if (SIZE.constant < 16)						\    SIZE.constant = 16;							\}#endif/* Value is 1 if returning from a function call automatically   pops the arguments described by the number-of-args field in the call.   FUNTYPE is the data type of the function (as a tree),   or for a library call it is an identifier node for the subroutine name.  */#define RETURN_POPS_ARGS(FUNTYPE) 0/* Symbolic macros for the registers used to return integer and floating   point values.  */#define GP_RETURN 2#define FP_RETURN 32/* Symbolic macros for the first/last argument registers.  */#define GP_ARG_FIRST 4#define GP_ARG_LAST  7#define FP_ARG_FIRST 44#define FP_ARG_LAST  47#define MAX_ARGS_IN_REGISTERS	4/* Define how to find the value returned by a library function   assuming the value has mode MODE.  */#define LIBCALL_VALUE(MODE)						\  gen_rtx (REG, MODE,							\	   (GET_MODE_CLASS (MODE) == MODE_FLOAT)			\		? FP_RETURN						\		: GP_RETURN)/* Define how to find the value returned by a function.   VALTYPE is the data type of the value (as a tree).   If the precise function being called is known, FUNC is its FUNCTION_DECL;   otherwise, FUNC is 0.  */#define FUNCTION_VALUE(VALTYPE, FUNC) LIBCALL_VALUE (TYPE_MODE (VALTYPE))/* 1 if N is a possible register number for a function value.   On the MIPS, R2 R3 and F0 F2 are the only register thus used.   Currently, R2 and F0 are only implemented  here (C has no complex type)  */#define FUNCTION_VALUE_REGNO_P(N) ((N) == GP_RETURN || (N) == FP_RETURN)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品久久久久久久多人混战| av亚洲产国偷v产偷v自拍| 制服丝袜亚洲色图| 青青草国产精品亚洲专区无| 日韩一区二区高清| 国产一二三精品| 国产精品福利一区| 日本黄色一区二区| 日本三级韩国三级欧美三级| 日韩欧美卡一卡二| 国产高清在线精品| 亚洲啪啪综合av一区二区三区| 在线区一区二视频| 免费欧美在线视频| 日本一区二区三区久久久久久久久不 | 日韩免费观看高清完整版| 久久不见久久见免费视频7| 久久久不卡网国产精品二区| 91亚洲大成网污www| 五月天激情综合| 国产女人aaa级久久久级| 色婷婷亚洲婷婷| 美腿丝袜在线亚洲一区| 国产精品久久久一区麻豆最新章节| 在线观看视频一区二区| 卡一卡二国产精品| 一区二区三区在线高清| 精品国产区一区| 在线精品观看国产| 国产一区二区三区国产| 一个色在线综合| 久久久久久久久久久久电影 | 国产一区二区不卡| 一区二区三区四区在线免费观看| 日韩一级片网址| 91视频免费观看| 国产一区二区三区免费在线观看| 亚洲欧美成人一区二区三区| 欧美xxxxx牲另类人与| 一本色道亚洲精品aⅴ| 国产综合色产在线精品| 亚洲一二三四在线| 国产精品青草久久| 亚洲精品一区二区三区四区高清| 色婷婷av一区二区三区软件 | 日本色综合中文字幕| ●精品国产综合乱码久久久久| 日韩一卡二卡三卡国产欧美| 在线看国产一区| 成人黄色电影在线 | 99久久婷婷国产精品综合| 老色鬼精品视频在线观看播放| 亚洲精品免费电影| 国产校园另类小说区| 精品久久久久久亚洲综合网| 欧美精品黑人性xxxx| 在线看日韩精品电影| 99精品国产一区二区三区不卡 | 国产成人精品一区二区三区四区 | 91精品在线一区二区| 在线观看国产91| 色综合久久久久久久久久久| 成人听书哪个软件好| 国产一区二区免费视频| 美女一区二区视频| 日本一区中文字幕| 五月婷婷色综合| 亚洲成va人在线观看| 亚洲一区二区三区影院| 亚洲欧洲精品一区二区三区| 国产亚洲午夜高清国产拍精品| 欧美成人精品福利| 欧美mv和日韩mv国产网站| 日韩欧美一级精品久久| 日韩女优av电影| 精品国产免费久久| 26uuu欧美| 欧美国产激情一区二区三区蜜月| 精品久久久网站| 国产亚洲精久久久久久| 中文字幕在线观看不卡视频| 亚洲欧洲精品一区二区三区不卡| 亚洲日本在线a| 亚洲精品一二三| 亚洲va国产va欧美va观看| 婷婷激情综合网| 美女高潮久久久| 国产一区亚洲一区| 国产91丝袜在线播放0| av激情综合网| 欧美最猛性xxxxx直播| 欧美日韩国产经典色站一区二区三区| 欧美日韩成人一区二区| 91精品国产手机| 久久综合九色综合97婷婷女人| 久久精品人人做人人综合| 综合色天天鬼久久鬼色| 亚洲一区二区三区四区在线| 强制捆绑调教一区二区| 国产高清在线观看免费不卡| av在线一区二区| 欧美日韩色一区| 久久久久久久久久美女| 亚洲精品成人精品456| 亚洲高清免费观看高清完整版在线观看| 丝袜美腿亚洲色图| 国产在线精品国自产拍免费| 不卡的电影网站| 欧美日韩精品一区视频| 久久久一区二区三区| 亚洲免费在线电影| 麻豆免费看一区二区三区| 成人不卡免费av| 欧美日本在线一区| 日本一区二区动态图| 亚洲制服丝袜一区| 国产一区二区在线观看视频| 一本一本久久a久久精品综合麻豆| 欧美一级视频精品观看| 亚洲欧洲另类国产综合| 蜜桃视频免费观看一区| 色呦呦国产精品| 精品久久久久久久久久久久久久久| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 视频一区二区三区在线| 高清不卡一区二区| 欧美丰满一区二区免费视频| 国产欧美综合在线| 免费欧美在线视频| 在线观看91精品国产入口| 久久看人人爽人人| 日本三级亚洲精品| 色八戒一区二区三区| 2020国产精品| 日韩中文字幕区一区有砖一区| 成人免费看片app下载| 日韩欧美在线不卡| 亚洲一区在线免费观看| 成人综合婷婷国产精品久久蜜臀| 91精品麻豆日日躁夜夜躁| 亚洲乱码中文字幕| 国产99一区视频免费| 日韩视频中午一区| 亚洲自拍偷拍综合| 色综合久久中文字幕| 国产精品家庭影院| 国产99久久久久久免费看农村| 日韩免费看网站| 日本在线不卡视频一二三区| 欧美丝袜自拍制服另类| 亚洲天堂福利av| 成人高清伦理免费影院在线观看| 日韩欧美二区三区| 免费观看在线色综合| 欧美日韩高清不卡| 亚洲午夜三级在线| 91久久久免费一区二区| 亚洲天堂2016| 99久久国产综合色|国产精品| 久久久99精品免费观看| 久久国产欧美日韩精品| 欧美一区永久视频免费观看| 婷婷丁香久久五月婷婷| 欧美日韩国产综合草草| 日日夜夜精品视频天天综合网| 欧美四级电影在线观看| 亚洲午夜一区二区| 欧美精品丝袜中出| 日韩和的一区二区| 制服丝袜激情欧洲亚洲| 奇米一区二区三区av| 欧美va亚洲va国产综合| 九九视频精品免费| 精品国产3级a| 国产成人精品在线看| 亚洲国产精品精华液ab| 粉嫩蜜臀av国产精品网站| 欧美国产视频在线| 91老师国产黑色丝袜在线| 一区二区三区欧美在线观看| 欧美视频精品在线| 天天影视色香欲综合网老头| 日韩一级完整毛片| 国产黄色91视频| 亚洲女人的天堂| 欧美在线|欧美| 奇米影视7777精品一区二区| 精品剧情在线观看| 国产成人一区在线| 一区二区三区视频在线观看 | 欧美大片在线观看| 国产激情一区二区三区桃花岛亚洲| 亚洲国产精品v| 日本黄色一区二区| 免费精品99久久国产综合精品| 国产亚洲欧美色| 欧美日韩在线直播| 精品亚洲成a人| 中文字幕五月欧美| 日韩亚洲欧美综合|