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

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

?? rtl.texi

?? 理解和實踐操作系統的一本好書
?? TEXI
?? 第 1 頁 / 共 5 頁
字號:
This is a catchall mode class for modes which don't fit into the aboveclasses.  Currently @code{VOIDmode} and @code{BLKmode} are in@code{MODE_RANDOM}.@end tableHere are some C macros that relate to machine modes:@table @code@findex GET_MODE@item GET_MODE (@var{x})Returns the machine mode of the RTX @var{x}.@findex PUT_MODE@item PUT_MODE (@var{x}, @var{newmode})Alters the machine mode of the RTX @var{x} to be @var{newmode}.@findex NUM_MACHINE_MODES@item NUM_MACHINE_MODESStands for the number of machine modes available on the targetmachine.  This is one greater than the largest numeric value of anymachine mode.@findex GET_MODE_NAME@item GET_MODE_NAME (@var{m})Returns the name of mode @var{m} as a string.@findex GET_MODE_CLASS@item GET_MODE_CLASS (@var{m})Returns the mode class of mode @var{m}.@findex GET_MODE_WIDER_MODE@item GET_MODE_WIDER_MODE (@var{m})Returns the next wider natural mode.  For example, the expression@code{GET_MODE_WIDER_MODE (QImode)} returns @code{HImode}.@findex GET_MODE_SIZE@item GET_MODE_SIZE (@var{m})Returns the size in bytes of a datum of mode @var{m}.@findex GET_MODE_BITSIZE@item GET_MODE_BITSIZE (@var{m})Returns the size in bits of a datum of mode @var{m}.@findex GET_MODE_IBIT@item GET_MODE_IBIT (@var{m})Returns the number of integral bits of a datum of fixed-point mode @var{m}.@findex GET_MODE_FBIT@item GET_MODE_FBIT (@var{m})Returns the number of fractional bits of a datum of fixed-point mode @var{m}.@findex GET_MODE_MASK@item GET_MODE_MASK (@var{m})Returns a bitmask containing 1 for all bits in a word that fit withinmode @var{m}.  This macro can only be used for modes whose bitsize isless than or equal to @code{HOST_BITS_PER_INT}.@findex GET_MODE_ALIGNMENT@item GET_MODE_ALIGNMENT (@var{m})Return the required alignment, in bits, for an object of mode @var{m}.@findex GET_MODE_UNIT_SIZE@item GET_MODE_UNIT_SIZE (@var{m})Returns the size in bytes of the subunits of a datum of mode @var{m}.This is the same as @code{GET_MODE_SIZE} except in the case of complexmodes.  For them, the unit size is the size of the real or imaginarypart.@findex GET_MODE_NUNITS@item GET_MODE_NUNITS (@var{m})Returns the number of units contained in a mode, i.e.,@code{GET_MODE_SIZE} divided by @code{GET_MODE_UNIT_SIZE}.@findex GET_CLASS_NARROWEST_MODE@item GET_CLASS_NARROWEST_MODE (@var{c})Returns the narrowest mode in mode class @var{c}.@end table@findex byte_mode@findex word_modeThe global variables @code{byte_mode} and @code{word_mode} contain modeswhose classes are @code{MODE_INT} and whose bitsizes are either@code{BITS_PER_UNIT} or @code{BITS_PER_WORD}, respectively.  On 32-bitmachines, these are @code{QImode} and @code{SImode}, respectively.@node Constants@section Constant Expression Types@cindex RTL constants@cindex RTL constant expression typesThe simplest RTL expressions are those that represent constant values.@table @code@findex const_int@item (const_int @var{i})This type of expression represents the integer value @var{i}.  @var{i}is customarily accessed with the macro @code{INTVAL} as in@code{INTVAL (@var{exp})}, which is equivalent to @code{XWINT (@var{exp}, 0)}.Constants generated for modes with fewer bits than @code{HOST_WIDE_INT}must be sign extended to full width (e.g., with @code{gen_int_mode}).@findex const0_rtx@findex const1_rtx@findex const2_rtx@findex constm1_rtxThere is only one expression object for the integer value zero; it isthe value of the variable @code{const0_rtx}.  Likewise, the onlyexpression for integer value one is found in @code{const1_rtx}, the onlyexpression for integer value two is found in @code{const2_rtx}, and theonly expression for integer value negative one is found in@code{constm1_rtx}.  Any attempt to create an expression of code@code{const_int} and value zero, one, two or negative one will return@code{const0_rtx}, @code{const1_rtx}, @code{const2_rtx} or@code{constm1_rtx} as appropriate.@findex const_true_rtxSimilarly, there is only one object for the integer whose value is@code{STORE_FLAG_VALUE}.  It is found in @code{const_true_rtx}.  If@code{STORE_FLAG_VALUE} is one, @code{const_true_rtx} and@code{const1_rtx} will point to the same object.  If@code{STORE_FLAG_VALUE} is @minus{}1, @code{const_true_rtx} and@code{constm1_rtx} will point to the same object.@findex const_double@item (const_double:@var{m} @var{addr} @var{i0} @var{i1} @dots{})Represents either a floating-point constant of mode @var{m} or aninteger constant too large to fit into @code{HOST_BITS_PER_WIDE_INT}bits but small enough to fit within twice that number of bits (GCCdoes not provide a mechanism to represent even larger constants).  Inthe latter case, @var{m} will be @code{VOIDmode}.@findex const_fixed@item (const_fixed:@var{m} @var{addr})Represents a fixed-point constant of mode @var{m}.The data structure, which contains data with the size of two@code{HOST_BITS_PER_WIDE_INT} and the associated fixed-point mode,is access with the macro @code{CONST_FIXED_VALUE}.  The high part of datais accessed with @code{CONST_FIXED_VALUE_HIGH}; the low part is accessedwith @code{CONST_FIXED_VALUE_LOW}.@findex const_vector@item (const_vector:@var{m} [@var{x0} @var{x1} @dots{}])Represents a vector constant.  The square brackets stand for the vectorcontaining the constant elements.  @var{x0}, @var{x1} and so on arethe @code{const_int} or @code{const_double} elements.The number of units in a @code{const_vector} is obtained with the macro@code{CONST_VECTOR_NUNITS} as in @code{CONST_VECTOR_NUNITS (@var{v})}.Individual elements in a vector constant are accessed with the macro@code{CONST_VECTOR_ELT} as in @code{CONST_VECTOR_ELT (@var{v}, @var{n})}where @var{v} is the vector constant and @var{n} is the elementdesired.@findex CONST_DOUBLE_MEM@findex CONST_DOUBLE_CHAIN@var{addr} is used to contain the @code{mem} expression that correspondsto the location in memory that at which the constant can be found.  Ifit has not been allocated a memory location, but is on the chain of all@code{const_double} expressions in this compilation (maintained using anundisplayed field), @var{addr} contains @code{const0_rtx}.  If it is noton the chain, @var{addr} contains @code{cc0_rtx}.  @var{addr} iscustomarily accessed with the macro @code{CONST_DOUBLE_MEM} and thechain field via @code{CONST_DOUBLE_CHAIN}.@findex CONST_DOUBLE_LOWIf @var{m} is @code{VOIDmode}, the bits of the value are stored in@var{i0} and @var{i1}.  @var{i0} is customarily accessed with the macro@code{CONST_DOUBLE_LOW} and @var{i1} with @code{CONST_DOUBLE_HIGH}.If the constant is floating point (regardless of its precision), thenthe number of integers used to store the value depends on the size of@code{REAL_VALUE_TYPE} (@pxref{Floating Point}).  The integersrepresent a floating point number, but not precisely in the targetmachine's or host machine's floating point format.  To convert them tothe precise bit pattern used by the target machine, use the macro@code{REAL_VALUE_TO_TARGET_DOUBLE} and friends (@pxref{Data Output}).@findex CONST0_RTX@findex CONST1_RTX@findex CONST2_RTXThe macro @code{CONST0_RTX (@var{mode})} refers to an expression withvalue 0 in mode @var{mode}.  If mode @var{mode} is of mode class@code{MODE_INT}, it returns @code{const0_rtx}.  If mode @var{mode} is ofmode class @code{MODE_FLOAT}, it returns a @code{CONST_DOUBLE}expression in mode @var{mode}.  Otherwise, it returns a@code{CONST_VECTOR} expression in mode @var{mode}.  Similarly, the macro@code{CONST1_RTX (@var{mode})} refers to an expression with value 1 inmode @var{mode} and similarly for @code{CONST2_RTX}.  The@code{CONST1_RTX} and @code{CONST2_RTX} macros are undefinedfor vector modes.@findex const_string@item (const_string @var{str})Represents a constant string with value @var{str}.  Currently this isused only for insn attributes (@pxref{Insn Attributes}) since constantstrings in C are placed in memory.@findex symbol_ref@item (symbol_ref:@var{mode} @var{symbol})Represents the value of an assembler label for data.  @var{symbol} isa string that describes the name of the assembler label.  If it startswith a @samp{*}, the label is the rest of @var{symbol} not includingthe @samp{*}.  Otherwise, the label is @var{symbol}, usually prefixedwith @samp{_}.The @code{symbol_ref} contains a mode, which is usually @code{Pmode}.Usually that is the only mode for which a symbol is directly valid.@findex label_ref@item (label_ref:@var{mode} @var{label})Represents the value of an assembler label for code.  It contains oneoperand, an expression, which must be a @code{code_label} or a @code{note}of type @code{NOTE_INSN_DELETED_LABEL} that appears in the instructionsequence to identify the place where the label should go.The reason for using a distinct expression type for code labelreferences is so that jump optimization can distinguish them.The @code{label_ref} contains a mode, which is usually @code{Pmode}.Usually that is the only mode for which a label is directly valid.@item (const:@var{m} @var{exp})Represents a constant that is the result of an assembly-timearithmetic computation.  The operand, @var{exp}, is an expression thatcontains only constants (@code{const_int}, @code{symbol_ref} and@code{label_ref} expressions) combined with @code{plus} and@code{minus}.  However, not all combinations are valid, since theassembler cannot do arbitrary arithmetic on relocatable symbols.@var{m} should be @code{Pmode}.@findex high@item (high:@var{m} @var{exp})Represents the high-order bits of @var{exp}, usually a@code{symbol_ref}.  The number of bits is machine-dependent and isnormally the number of bits specified in an instruction that initializesthe high order bits of a register.  It is used with @code{lo_sum} torepresent the typical two-instruction sequence used in RISC machines toreference a global memory location.@var{m} should be @code{Pmode}.@end table@node Regs and Memory@section Registers and Memory@cindex RTL register expressions@cindex RTL memory expressionsHere are the RTL expression types for describing access to machineregisters and to main memory.@table @code@findex reg@cindex hard registers@cindex pseudo registers@item (reg:@var{m} @var{n})For small values of the integer @var{n} (those that are less than@code{FIRST_PSEUDO_REGISTER}), this stands for a reference to machineregister number @var{n}: a @dfn{hard register}.  For larger values of@var{n}, it stands for a temporary value or @dfn{pseudo register}.The compiler's strategy is to generate code assuming an unlimitednumber of such pseudo registers, and later convert them into hardregisters or into memory references.@var{m} is the machine mode of the reference.  It is necessary becausemachines can generally refer to each register in more than one mode.For example, a register may contain a full word but there may beinstructions to refer to it as a half word or as a single byte, aswell as instructions to refer to it as a floating point number ofvarious precisions.Even for a register that the machine can access in only one mode,the mode must always be specified.The symbol @code{FIRST_PSEUDO_REGISTER} is defined by the machinedescription, since the number of hard registers on the machine is aninvariant characteristic of the machine.  Note, however, that notall of the machine registers must be general registers.  All themachine registers that can be used for storage of data are givenhard register numbers, even those that can be used only in certaininstructions or can hold only certain types of data.A hard register may be accessed in various modes throughout onefunction, but each pseudo register is given a natural modeand is accessed only in that mode.  When it is necessary to describean access to a pseudo register using a nonnatural mode, a @code{subreg}expression is used.A @code{reg} expression with a machine mode that specifies more thanone word of data may actually stand for several consecutive registers.If in addition the register number specifies a hardware register, thenit actually represents several consecutive hardware registers startingwith the specified one.Each pseudo register number used in a function's RTL code isrepresented by a unique @code{reg} expression.@findex FIRST_VIRTUAL_REGISTER@findex LAST_VIRTUAL_REGISTERSome pseudo register numbers, those within the range of@code{FIRST_VIRTUAL_REGISTER} to @code{LAST_VIRTUAL_REGISTER} onlyappear during the RTL generation phase and are eliminated before theoptimization phases.  These represent locations in the stack frame thatcannot be determined until RTL generation for the function has beencompleted.  The following virtual register numbers are defined:@table @code@findex VIRTUAL_INCOMING_ARGS_REGNUM@item VIRTUAL_INCOMING_ARGS_REGNUMThis points to the first word of the incoming arguments passed on thestack.  Normally these arguments are placed there by the caller, but thecallee may have pushed some arguments that were previously passed inregisters.@cindex @code{FIRST_PARM_OFFSET} and virtual registers@cindex @code{ARG_POINTER_REGNUM} and virtual registersWhen RTL generation is complete, this virtual register is replacedby the sum of the register given by @code{ARG_POINTER_REGNUM} and thevalue of @code{FIRST_PARM_OFFSET}.@findex VIRTUAL_STACK_VARS_REGNUM@cindex @code{FRAME_GROWS_DOWNWARD} and virtual registers@item VIRTUAL_STACK_VARS_REGNUMIf @code{FRAME_GROWS_DOWNWARD} is defined to a nonzero value, this pointsto immediately above the first variable on the stack.  Otherwise, it pointsto the first variable on the stack.@cindex @code{STARTING_FRAME_OFFSET} and virtual registers@cindex @code{FRAME_POINTER_REGNUM} and virtual registers@code{VIRTUAL_STACK_VARS_REGNUM} is replaced with the sum of theregister given by @code{FRAME_POINTER_REGNUM} and the value@code{STARTING_FRAME_OFFSET}.@findex VIRTUAL_STACK_DYNAMIC_REGNUM@item VIRTUAL_STACK_DYNAMIC_REGNUMThis points to the location of dynamic

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩精品是欧美日韩精品| 欧美极品美女视频| 日韩欧美一级二级三级| 国产精品你懂的在线| 午夜婷婷国产麻豆精品| 国产成人精品在线看| 日韩一区二区三区在线| 一区二区三区四区亚洲| 成人精品国产一区二区4080| 欧美精品色一区二区三区| 一区在线播放视频| 高清在线观看日韩| 精品国产成人系列| 日本网站在线观看一区二区三区 | 日韩精彩视频在线观看| 成人动漫一区二区三区| 久久先锋影音av鲁色资源| 亚洲成人免费视频| 91福利精品第一导航| 中文字幕在线播放不卡一区| 国产精品1区二区.| 欧美精品一区二区久久婷婷| 青青草视频一区| 91麻豆精品国产91久久久久久久久 | 日本一区二区三区电影| 韩国一区二区三区| 亚洲精品一区二区三区99| 精品一区二区三区视频| 日韩精品一区二区三区蜜臀 | 激情综合亚洲精品| 精品久久99ma| 激情综合五月婷婷| 日韩欧美久久一区| 国产尤物一区二区| 精品国产电影一区二区| 国产精品123| 国产精品拍天天在线| 成人毛片视频在线观看| 国产精品国产三级国产三级人妇| 粉嫩av一区二区三区在线播放| 国产清纯美女被跳蛋高潮一区二区久久w| 麻豆国产精品777777在线| 91精品国产aⅴ一区二区| 奇米一区二区三区av| 日韩天堂在线观看| 极品少妇xxxx精品少妇| 国产欧美一区二区精品忘忧草| 成人在线视频首页| 依依成人精品视频| 7777精品久久久大香线蕉| 老司机精品视频在线| 久久久五月婷婷| 99re热这里只有精品免费视频| 亚洲乱码一区二区三区在线观看| 欧美午夜精品免费| 麻豆国产精品官网| 中文在线一区二区| 欧美精品一区二区三区蜜桃| 久久99精品视频| 国产欧美一区二区精品秋霞影院| 91美女福利视频| 日韩激情中文字幕| 国产精品视频观看| 欧美日韩国产综合草草| 国产一区二区三区美女| 亚洲视频一区二区免费在线观看| 在线播放日韩导航| 粉嫩aⅴ一区二区三区四区五区| 亚洲蜜臀av乱码久久精品| 3d动漫精品啪啪1区2区免费 | 国产精品久久午夜| 欧美日韩夫妻久久| 国产福利一区二区三区视频在线| 亚洲精品久久7777| 精品剧情v国产在线观看在线| 91网址在线看| 久久福利视频一区二区| 一区二区三区欧美| 国产欧美日韩中文久久| 9191成人精品久久| 99re热这里只有精品免费视频| 久久福利视频一区二区| 国产精品美女久久久久aⅴ | 国产精品中文欧美| 国产成人精品三级麻豆| 夜夜亚洲天天久久| 日本一区二区三区高清不卡| 欧美一卡二卡在线观看| 色婷婷精品久久二区二区蜜臂av| 国内精品久久久久影院一蜜桃| 亚洲国产一区二区视频| 国产精品久久久久久久久快鸭| 日韩免费成人网| 欧美精品丝袜久久久中文字幕| 99视频在线精品| 高清不卡一区二区在线| 六月丁香婷婷色狠狠久久| 亚洲成人综合视频| 亚洲女人小视频在线观看| 欧美国产精品劲爆| 精品电影一区二区| 日韩精品中文字幕一区二区三区| 欧美三级三级三级| 欧美亚洲国产一区二区三区| 99视频精品免费视频| 国产成人精品影视| 国产成人免费视频精品含羞草妖精| 免费av成人在线| 日本成人在线看| 日韩av不卡在线观看| 视频在线观看一区二区三区| 亚洲最色的网站| 亚洲一区二区av在线| 亚洲精品综合在线| 亚洲黄色性网站| 成人免费av在线| 国产成人免费在线| 成人aa视频在线观看| av亚洲精华国产精华精华| 99热99精品| 色婷婷精品久久二区二区蜜臂av | 国产精品久久网站| 国产精品素人一区二区| 欧美国产精品专区| 国产精品白丝在线| 一区二区在线看| 亚洲成av人**亚洲成av**| 五月天欧美精品| 免费成人在线网站| 国产精品99久久久久久久vr| 成人夜色视频网站在线观看| 99这里只有精品| 欧美人伦禁忌dvd放荡欲情| 欧美一区二区观看视频| 26uuu亚洲| 一色屋精品亚洲香蕉网站| 亚洲一区在线视频观看| 日本大胆欧美人术艺术动态| 韩国一区二区视频| 一本色道**综合亚洲精品蜜桃冫 | 亚洲综合免费观看高清完整版在线| 夜夜嗨av一区二区三区网页| 免费精品视频最新在线| 国产黄色精品视频| 日本乱人伦一区| 日韩精品最新网址| 国产精品久久久久久久久晋中 | 99久久精品免费看国产| 色综合久久88色综合天天6 | 成人的网站免费观看| 一本大道久久a久久综合婷婷| 欧美精选在线播放| 久久精品欧美一区二区三区不卡| 国产精品美女视频| 爽好久久久欧美精品| 国产麻豆成人精品| 欧洲一区二区av| 久久人人超碰精品| 亚洲一区二区三区四区五区黄 | 亚洲风情在线资源站| 国产一区二区三区精品视频| 欧美性一二三区| 久久久精品免费免费| 日韩中文字幕麻豆| 99riav久久精品riav| 日韩午夜激情av| 亚洲午夜久久久久久久久电影网 | 日本怡春院一区二区| 麻豆精品视频在线观看免费| 国产精品自在在线| 精品视频全国免费看| 亚洲午夜精品一区二区三区他趣| 免费av成人在线| 色菇凉天天综合网| 国产色产综合产在线视频| 日韩国产在线观看一区| 91黄色激情网站| 国产精品午夜免费| 国内一区二区视频| 日韩午夜中文字幕| 亚洲福利视频一区二区| 一本久道中文字幕精品亚洲嫩| 国产丝袜美腿一区二区三区| 久久精品国产精品青草| 欧美日韩精品电影| 亚洲福利一区二区| 欧美在线一区二区| 亚洲一区二区在线免费看| 99久久99久久精品免费观看| 中文字幕av资源一区| 国产福利精品导航| 久久蜜臀中文字幕| 国产精品一区二区无线| 日韩三级精品电影久久久| 日韩高清不卡一区二区| 777奇米成人网| 首页欧美精品中文字幕| 欧美一区中文字幕| 青青草国产精品97视觉盛宴| 欧美久久高跟鞋激|