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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? ppc-opc.c

?? 自己根據(jù)lkd和情境分析
?? C
?? 第 1 頁 / 共 5 頁
字號:
  unsigned long uval;  int mb, me;  uval = value;  if (uval == 0)    {      if (errmsg != (const char **) NULL)	*errmsg = "illegal bitmask";      return insn;    }  me = 31;  while ((uval & 1) == 0)    {      uval >>= 1;      --me;    }  mb = me;  uval >>= 1;  while ((uval & 1) != 0)    {      uval >>= 1;      --mb;    }  if (uval != 0)    {      if (errmsg != (const char **) NULL)	*errmsg = "illegal bitmask";    }  return insn | (mb << 6) | (me << 1);}static longextract_mbe (insn, invalid)     unsigned long insn;     int *invalid;{  long ret;  int mb, me;  int i;  if (invalid != (int *) NULL)    *invalid = 1;  ret = 0;  mb = (insn >> 6) & 0x1f;  me = (insn >> 1) & 0x1f;  for (i = mb; i < me; i++)    ret |= 1 << (31 - i);  return ret;}/* The MB or ME field in an MD or MDS form instruction.  The high bit   is wrapped to the low end.  *//*ARGSUSED*/static unsigned longinsert_mb6 (insn, value, errmsg)     unsigned long insn;     long value;     const char **errmsg;{  return insn | ((value & 0x1f) << 6) | (value & 0x20);}/*ARGSUSED*/static longextract_mb6 (insn, invalid)     unsigned long insn;     int *invalid;{  return ((insn >> 6) & 0x1f) | (insn & 0x20);}/* The NB field in an X form instruction.  The value 32 is stored as   0.  */static unsigned longinsert_nb (insn, value, errmsg)     unsigned long insn;     long value;     const char **errmsg;{  if (value < 0 || value > 32)    *errmsg = "value out of range";  if (value == 32)    value = 0;  return insn | ((value & 0x1f) << 11);}/*ARGSUSED*/static longextract_nb (insn, invalid)     unsigned long insn;     int *invalid;{  long ret;  ret = (insn >> 11) & 0x1f;  if (ret == 0)    ret = 32;  return ret;}/* The NSI field in a D form instruction.  This is the same as the SI   field, only negated.  The extraction function always marks it as   invalid, since we never want to recognize an instruction which uses   a field of this type.  *//*ARGSUSED*/static unsigned longinsert_nsi (insn, value, errmsg)     unsigned long insn;     long value;     const char **errmsg;{  return insn | ((- value) & 0xffff);}static longextract_nsi (insn, invalid)     unsigned long insn;     int *invalid;{  if (invalid != (int *) NULL)    *invalid = 1;  if ((insn & 0x8000) != 0)    return - ((insn & 0xffff) - 0x10000);  else    return - (insn & 0xffff);}/* The RA field in a D or X form instruction which is an updating   load, which means that the RA field may not be zero and may not   equal the RT field.  */static unsigned longinsert_ral (insn, value, errmsg)     unsigned long insn;     long value;     const char **errmsg;{  if (value == 0      || value == ((insn >> 21) & 0x1f))    *errmsg = "invalid register operand when updating";  return insn | ((value & 0x1f) << 16);}/* The RA field in an lmw instruction, which has special value   restrictions.  */static unsigned longinsert_ram (insn, value, errmsg)     unsigned long insn;     long value;     const char **errmsg;{  if (value >= ((insn >> 21) & 0x1f))    *errmsg = "index register in load range";  return insn | ((value & 0x1f) << 16);}/* The RA field in a D or X form instruction which is an updating   store or an updating floating point load, which means that the RA   field may not be zero.  */static unsigned longinsert_ras (insn, value, errmsg)     unsigned long insn;     long value;     const char **errmsg;{  if (value == 0)    *errmsg = "invalid register operand when updating";  return insn | ((value & 0x1f) << 16);}/* The RB field in an X form instruction when it must be the same as   the RS field in the instruction.  This is used for extended   mnemonics like mr.  This operand is marked FAKE.  The insertion   function just copies the BT field into the BA field, and the   extraction function just checks that the fields are the same.  *//*ARGSUSED*/static unsigned long insert_rbs (insn, value, errmsg)     unsigned long insn;     long value;     const char **errmsg;{  return insn | (((insn >> 21) & 0x1f) << 11);}static longextract_rbs (insn, invalid)     unsigned long insn;     int *invalid;{  if (invalid != (int *) NULL      && ((insn >> 21) & 0x1f) != ((insn >> 11) & 0x1f))    *invalid = 1;  return 0;}/* The SH field in an MD form instruction.  This is split.  *//*ARGSUSED*/static unsigned longinsert_sh6 (insn, value, errmsg)     unsigned long insn;     long value;     const char **errmsg;{  return insn | ((value & 0x1f) << 11) | ((value & 0x20) >> 4);}/*ARGSUSED*/static longextract_sh6 (insn, invalid)     unsigned long insn;     int *invalid;{  return ((insn >> 11) & 0x1f) | ((insn << 4) & 0x20);}/* The SPR field in an XFX form instruction.  This is flipped--the   lower 5 bits are stored in the upper 5 and vice- versa.  */static unsigned longinsert_spr (insn, value, errmsg)     unsigned long insn;     long value;     const char **errmsg;{  return insn | ((value & 0x1f) << 16) | ((value & 0x3e0) << 6);}static longextract_spr (insn, invalid)     unsigned long insn;     int *invalid;{  return ((insn >> 16) & 0x1f) | ((insn >> 6) & 0x3e0);}/* The TBR field in an XFX instruction.  This is just like SPR, but it   is optional.  When TBR is omitted, it must be inserted as 268 (the   magic number of the TB register).  These functions treat 0   (indicating an omitted optional operand) as 268.  This means that   ``mftb 4,0'' is not handled correctly.  This does not matter very   much, since the architecture manual does not define mftb as   accepting any values other than 268 or 269.  */#define TB (268)static unsigned longinsert_tbr (insn, value, errmsg)     unsigned long insn;     long value;     const char **errmsg;{  if (value == 0)    value = TB;  return insn | ((value & 0x1f) << 16) | ((value & 0x3e0) << 6);}static longextract_tbr (insn, invalid)     unsigned long insn;     int *invalid;{  long ret;  ret = ((insn >> 16) & 0x1f) | ((insn >> 6) & 0x3e0);  if (ret == TB)    ret = 0;  return ret;}/* Macros used to form opcodes.  *//* The main opcode.  */#define OP(x) (((x) & 0x3f) << 26)#define OP_MASK OP (0x3f)/* The main opcode combined with a trap code in the TO field of a D   form instruction.  Used for extended mnemonics for the trap   instructions.  */#define OPTO(x,to) (OP (x) | (((to) & 0x1f) << 21))#define OPTO_MASK (OP_MASK | TO_MASK)/* The main opcode combined with a comparison size bit in the L field   of a D form or X form instruction.  Used for extended mnemonics for   the comparison instructions.  */#define OPL(x,l) (OP (x) | (((l) & 1) << 21))#define OPL_MASK OPL (0x3f,1)/* An A form instruction.  */#define A(op, xop, rc) (OP (op) | (((xop) & 0x1f) << 1) | ((rc) & 1))#define A_MASK A (0x3f, 0x1f, 1)/* An A_MASK with the FRB field fixed.  */#define AFRB_MASK (A_MASK | FRB_MASK)/* An A_MASK with the FRC field fixed.  */#define AFRC_MASK (A_MASK | FRC_MASK)/* An A_MASK with the FRA and FRC fields fixed.  */#define AFRAFRC_MASK (A_MASK | FRA_MASK | FRC_MASK)/* A B form instruction.  */#define B(op, aa, lk) (OP (op) | (((aa) & 1) << 1) | ((lk) & 1))#define B_MASK B (0x3f, 1, 1)/* A B form instruction setting the BO field.  */#define BBO(op, bo, aa, lk) (B ((op), (aa), (lk)) | (((bo) & 0x1f) << 21))#define BBO_MASK BBO (0x3f, 0x1f, 1, 1)/* A BBO_MASK with the y bit of the BO field removed.  This permits   matching a conditional branch regardless of the setting of the y   bit.  */#define Y_MASK (1 << 21)#define BBOY_MASK (BBO_MASK &~ Y_MASK)/* A B form instruction setting the BO field and the condition bits of   the BI field.  */#define BBOCB(op, bo, cb, aa, lk) \  (BBO ((op), (bo), (aa), (lk)) | (((cb) & 0x3) << 16))#define BBOCB_MASK BBOCB (0x3f, 0x1f, 0x3, 1, 1)/* A BBOCB_MASK with the y bit of the BO field removed.  */#define BBOYCB_MASK (BBOCB_MASK &~ Y_MASK)/* A BBOYCB_MASK in which the BI field is fixed.  */#define BBOYBI_MASK (BBOYCB_MASK | BI_MASK)/* The main opcode mask with the RA field clear.  */#define DRA_MASK (OP_MASK | RA_MASK)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99久久99久久精品国产片果冻| 成人美女视频在线看| 国产精品日产欧美久久久久| 欧美又粗又大又爽| 国产精品系列在线播放| 午夜成人在线视频| 中文av一区二区| 日韩欧美一二三四区| 在线观看精品一区| 丰满白嫩尤物一区二区| 六月婷婷色综合| 亚洲高清在线视频| 亚洲视频电影在线| 国产视频一区二区在线| 日韩精品一区国产麻豆| 午夜精品久久久久久久| 亚洲三级在线免费观看| 99热精品国产| 国产成人丝袜美腿| 免费看欧美美女黄的网站| 国产精品福利影院| 久久一区二区三区四区| 日韩一区二区三区三四区视频在线观看 | 久久色在线视频| 欧美电影在哪看比较好| 欧美在线观看禁18| 91丨porny丨户外露出| 国产99久久久国产精品潘金网站| 久久国产精品99精品国产| 婷婷综合五月天| 亚洲午夜国产一区99re久久| 亚洲激情图片qvod| 中文字幕一区二区在线播放| 欧美激情在线一区二区| 国产日韩精品视频一区| 久久精品免费在线观看| 国产亚洲婷婷免费| 国产日产精品一区| 国产日产精品1区| 国产精品三级视频| 欧美激情一区不卡| 国产精品无遮挡| 国产精品嫩草影院av蜜臀| 亚洲欧洲色图综合| 综合久久综合久久| 亚洲精品美国一| 亚洲最新视频在线播放| 亚洲影院久久精品| 天天做天天摸天天爽国产一区 | 国产精品毛片高清在线完整版| 欧美激情中文不卡| 一色屋精品亚洲香蕉网站| 玉足女爽爽91| 亚洲h精品动漫在线观看| 日韩成人一区二区三区在线观看| 免费人成在线不卡| 国产麻豆成人精品| 91亚洲精品久久久蜜桃| 色8久久精品久久久久久蜜| 欧美日韩国产影片| 日韩精品最新网址| 国产三级精品在线| 最新国产の精品合集bt伙计| 一区二区三区免费观看| 天堂va蜜桃一区二区三区漫画版| 全部av―极品视觉盛宴亚洲| 国产精品综合二区| 99r国产精品| 欧美精品在线一区二区三区| 精品少妇一区二区三区免费观看 | 久久这里只有精品首页| 国产欧美日韩精品a在线观看| 最新热久久免费视频| 亚洲不卡在线观看| 国产精品一二三四五| 欧美在线观看一二区| 欧美成人性福生活免费看| 中文字幕国产一区| 亚洲第一成人在线| 狠狠色丁香九九婷婷综合五月| 99久久精品国产网站| 正在播放一区二区| 久久精品人人做| 一区二区三区四区蜜桃| 久久av老司机精品网站导航| 99热在这里有精品免费| 日韩一本二本av| 中文字幕日韩精品一区| 麻豆精品在线看| 97se亚洲国产综合自在线| 91精品啪在线观看国产60岁| 国产精品成人在线观看| 人人精品人人爱| 一本色道久久综合狠狠躁的推荐| 欧美一级欧美一级在线播放| 亚洲品质自拍视频| 激情六月婷婷综合| 欧美日韩一区在线| 中文字幕av不卡| 青青草原综合久久大伊人精品优势| 成人性生交大片免费看在线播放| 欧美三日本三级三级在线播放| 久久婷婷综合激情| 日本伊人午夜精品| 欧洲另类一二三四区| 国产欧美一区二区精品久导航 | 一区二区三区中文免费| 国产精品一卡二卡| 欧美一级高清片| 亚洲伊人伊色伊影伊综合网| 高清成人免费视频| 精品日韩成人av| 日韩专区在线视频| 欧美中文一区二区三区| 中文字幕永久在线不卡| 国产精品原创巨作av| 日韩免费在线观看| 五月婷婷欧美视频| 欧美综合天天夜夜久久| 国产精品久久毛片| 国产成人午夜精品5599| 欧美一区国产二区| 午夜成人免费视频| 欧美性感一类影片在线播放| 亚洲日穴在线视频| heyzo一本久久综合| 国产午夜亚洲精品午夜鲁丝片 | 极品尤物av久久免费看| 欧美一级搡bbbb搡bbbb| 日本欧美一区二区| 欧美在线观看一二区| 一区二区日韩电影| 欧美午夜一区二区三区免费大片| ...xxx性欧美| 一本久久a久久精品亚洲| 亚洲日本电影在线| 91丨九色丨国产丨porny| 亚洲欧洲性图库| 99精品在线观看视频| 亚洲欧美日韩人成在线播放| 色综合天天综合网国产成人综合天| 国产精品盗摄一区二区三区| 91香蕉视频mp4| 亚洲婷婷综合久久一本伊一区| 99久久er热在这里只有精品15| 亚洲免费大片在线观看| 欧美性做爰猛烈叫床潮| 亚洲一级二级三级在线免费观看| 91久久精品一区二区| 婷婷综合五月天| 欧美电影精品一区二区| 激情久久五月天| 欧美国产日本视频| 91视频.com| 亚洲午夜三级在线| 日韩一卡二卡三卡| 狠狠色伊人亚洲综合成人| 成人激情校园春色| 久久成人免费电影| 色系网站成人免费| 6080午夜不卡| 欧美日韩在线电影| 91丨porny丨首页| 99精品黄色片免费大全| 国产99一区视频免费| 精品一二三四区| 美女性感视频久久| 久久aⅴ国产欧美74aaa| 亚洲精品国产第一综合99久久| 欧美精品v日韩精品v韩国精品v| 精品久久久网站| 9191久久久久久久久久久| 国精产品一区一区三区mba桃花 | 91视视频在线观看入口直接观看www | 久久不见久久见免费视频7| 国产亚洲成年网址在线观看| 99久久精品情趣| 日欧美一区二区| 中文在线一区二区| 欧美日产国产精品| 国产a区久久久| 亚洲成人动漫在线免费观看| 久久综合久久鬼色中文字| 一本色道久久综合精品竹菊| 久久精品国产精品亚洲综合| 国产精品久久久久久亚洲毛片 | 一区免费观看视频| 欧美一区二区国产| 99热99精品| 国内精品国产三级国产a久久| 中文字幕中文字幕中文字幕亚洲无线| 欧美日韩中文字幕一区二区| 国产精品18久久久久久久网站| 亚洲国产精品麻豆| 日本一区二区视频在线观看| 欧美一三区三区四区免费在线看| 99r国产精品| 高清国产午夜精品久久久久久| 日韩av高清在线观看| 一区二区三区在线视频播放|