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

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

?? ppc-opc.c

?? 基于4個mips核的noc設計
?? C
?? 第 1 頁 / 共 5 頁
字號:
/* ppc-opc.c -- PowerPC opcode list   Copyright 1994, 1995, 1996, 1997, 1998, 2000   Free Software Foundation, Inc.   Written by Ian Lance Taylor, Cygnus SupportThis file is part of GDB, GAS, and the GNU binutils.GDB, GAS, and the GNU binutils are free software; you can redistributethem and/or modify them under the terms of the GNU General PublicLicense as published by the Free Software Foundation; either version2, or (at your option) any later version.GDB, GAS, and the GNU binutils are distributed in the hope that theywill be useful, but WITHOUT ANY WARRANTY; without even the impliedwarranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  Seethe GNU General Public License for more details.You should have received a copy of the GNU General Public Licensealong with this file; see the file COPYING.  If not, write to the FreeSoftware Foundation, 59 Temple Place - Suite 330, Boston, MA02111-1307, USA.  */#include <stdio.h>#include "sysdep.h"#include "opcode/ppc.h"#include "opintl.h"/* This file holds the PowerPC opcode table.  The opcode table   includes almost all of the extended instruction mnemonics.  This   permits the disassembler to use them, and simplifies the assembler   logic, at the cost of increasing the table size.  The table is   strictly constant data, so the compiler should be able to put it in   the .text section.   This file also holds the operand table.  All knowledge about   inserting operands into instructions and vice-versa is kept in this   file.  *//* Local insertion and extraction functions.  */static unsigned long insert_bat PARAMS ((unsigned long, long, const char **));static long extract_bat PARAMS ((unsigned long, int *));static unsigned long insert_bba PARAMS ((unsigned long, long, const char **));static long extract_bba PARAMS ((unsigned long, int *));static unsigned long insert_bd PARAMS ((unsigned long, long, const char **));static long extract_bd PARAMS ((unsigned long, int *));static unsigned long insert_bdm PARAMS ((unsigned long, long, const char **));static long extract_bdm PARAMS ((unsigned long, int *));static unsigned long insert_bdp PARAMS ((unsigned long, long, const char **));static long extract_bdp PARAMS ((unsigned long, int *));static int valid_bo PARAMS ((long));static unsigned long insert_bo PARAMS ((unsigned long, long, const char **));static long extract_bo PARAMS ((unsigned long, int *));static unsigned long insert_boe PARAMS ((unsigned long, long, const char **));static long extract_boe PARAMS ((unsigned long, int *));static unsigned long insert_ds PARAMS ((unsigned long, long, const char **));static long extract_ds PARAMS ((unsigned long, int *));static unsigned long insert_li PARAMS ((unsigned long, long, const char **));static long extract_li PARAMS ((unsigned long, int *));static unsigned long insert_mbe PARAMS ((unsigned long, long, const char **));static long extract_mbe PARAMS ((unsigned long, int *));static unsigned long insert_mb6 PARAMS ((unsigned long, long, const char **));static long extract_mb6 PARAMS ((unsigned long, int *));static unsigned long insert_nb PARAMS ((unsigned long, long, const char **));static long extract_nb PARAMS ((unsigned long, int *));static unsigned long insert_nsi PARAMS ((unsigned long, long, const char **));static long extract_nsi PARAMS ((unsigned long, int *));static unsigned long insert_ral PARAMS ((unsigned long, long, const char **));static unsigned long insert_ram PARAMS ((unsigned long, long, const char **));static unsigned long insert_ras PARAMS ((unsigned long, long, const char **));static unsigned long insert_rbs PARAMS ((unsigned long, long, const char **));static long extract_rbs PARAMS ((unsigned long, int *));static unsigned long insert_sh6 PARAMS ((unsigned long, long, const char **));static long extract_sh6 PARAMS ((unsigned long, int *));static unsigned long insert_spr PARAMS ((unsigned long, long, const char **));static long extract_spr PARAMS ((unsigned long, int *));static unsigned long insert_tbr PARAMS ((unsigned long, long, const char **));static long extract_tbr PARAMS ((unsigned long, int *));/* The operands table.   The fields are bits, shift, insert, extract, flags.   We used to put parens around the various additions, like the one   for BA just below.  However, that caused trouble with feeble   compilers with a limit on depth of a parenthesized expression, like   (reportedly) the compiler in Microsoft Developer Studio 5.  So we   omit the parens, since the macros are never used in a context where   the addition will be ambiguous.  */const struct powerpc_operand powerpc_operands[] ={  /* The zero index is used to indicate the end of the list of     operands.  */#define UNUSED 0  { 0, 0, 0, 0, 0 },  /* The BA field in an XL form instruction.  */#define BA UNUSED + 1#define BA_MASK (0x1f << 16)  { 5, 16, 0, 0, PPC_OPERAND_CR },  /* The BA field in an XL form instruction when it must be the same     as the BT field in the same instruction.  */#define BAT BA + 1  { 5, 16, insert_bat, extract_bat, PPC_OPERAND_FAKE },  /* The BB field in an XL form instruction.  */#define BB BAT + 1#define BB_MASK (0x1f << 11)  { 5, 11, 0, 0, PPC_OPERAND_CR },  /* The BB field in an XL form instruction when it must be the same     as the BA field in the same instruction.  */#define BBA BB + 1  { 5, 11, insert_bba, extract_bba, PPC_OPERAND_FAKE },  /* The BD field in a B form instruction.  The lower two bits are     forced to zero.  */#define BD BBA + 1  { 16, 0, insert_bd, extract_bd, PPC_OPERAND_RELATIVE | PPC_OPERAND_SIGNED },  /* The BD field in a B form instruction when absolute addressing is     used.  */#define BDA BD + 1  { 16, 0, insert_bd, extract_bd, PPC_OPERAND_ABSOLUTE | PPC_OPERAND_SIGNED },  /* The BD field in a B form instruction when the - modifier is used.     This sets the y bit of the BO field appropriately.  */#define BDM BDA + 1  { 16, 0, insert_bdm, extract_bdm,      PPC_OPERAND_RELATIVE | PPC_OPERAND_SIGNED },  /* The BD field in a B form instruction when the - modifier is used     and absolute address is used.  */#define BDMA BDM + 1  { 16, 0, insert_bdm, extract_bdm,      PPC_OPERAND_ABSOLUTE | PPC_OPERAND_SIGNED },  /* The BD field in a B form instruction when the + modifier is used.     This sets the y bit of the BO field appropriately.  */#define BDP BDMA + 1  { 16, 0, insert_bdp, extract_bdp,      PPC_OPERAND_RELATIVE | PPC_OPERAND_SIGNED },  /* The BD field in a B form instruction when the + modifier is used     and absolute addressing is used.  */#define BDPA BDP + 1  { 16, 0, insert_bdp, extract_bdp,      PPC_OPERAND_ABSOLUTE | PPC_OPERAND_SIGNED },  /* The BF field in an X or XL form instruction.  */#define BF BDPA + 1  { 3, 23, 0, 0, PPC_OPERAND_CR },  /* An optional BF field.  This is used for comparison instructions,     in which an omitted BF field is taken as zero.  */#define OBF BF + 1  { 3, 23, 0, 0, PPC_OPERAND_CR | PPC_OPERAND_OPTIONAL },  /* The BFA field in an X or XL form instruction.  */#define BFA OBF + 1  { 3, 18, 0, 0, PPC_OPERAND_CR },  /* The BI field in a B form or XL form instruction.  */#define BI BFA + 1#define BI_MASK (0x1f << 16)  { 5, 16, 0, 0, PPC_OPERAND_CR },  /* The BO field in a B form instruction.  Certain values are     illegal.  */#define BO BI + 1#define BO_MASK (0x1f << 21)  { 5, 21, insert_bo, extract_bo, 0 },  /* The BO field in a B form instruction when the + or - modifier is     used.  This is like the BO field, but it must be even.  */#define BOE BO + 1  { 5, 21, insert_boe, extract_boe, 0 },  /* The BT field in an X or XL form instruction.  */#define BT BOE + 1  { 5, 21, 0, 0, PPC_OPERAND_CR },  /* The condition register number portion of the BI field in a B form     or XL form instruction.  This is used for the extended     conditional branch mnemonics, which set the lower two bits of the     BI field.  This field is optional.  */#define CR BT + 1  { 3, 18, 0, 0, PPC_OPERAND_CR | PPC_OPERAND_OPTIONAL },  /* The D field in a D form instruction.  This is a displacement off     a register, and implies that the next operand is a register in     parentheses.  */#define D CR + 1  { 16, 0, 0, 0, PPC_OPERAND_PARENS | PPC_OPERAND_SIGNED },  /* The DS field in a DS form instruction.  This is like D, but the     lower two bits are forced to zero.  */#define DS D + 1  { 16, 0, insert_ds, extract_ds, PPC_OPERAND_PARENS | PPC_OPERAND_SIGNED },  /* The E field in a wrteei instruction.  */#define E DS + 1  { 1, 15, 0, 0, 0 },  /* The FL1 field in a POWER SC form instruction.  */#define FL1 E + 1  { 4, 12, 0, 0, 0 },  /* The FL2 field in a POWER SC form instruction.  */#define FL2 FL1 + 1  { 3, 2, 0, 0, 0 },  /* The FLM field in an XFL form instruction.  */#define FLM FL2 + 1  { 8, 17, 0, 0, 0 },  /* The FRA field in an X or A form instruction.  */#define FRA FLM + 1#define FRA_MASK (0x1f << 16)  { 5, 16, 0, 0, PPC_OPERAND_FPR },  /* The FRB field in an X or A form instruction.  */#define FRB FRA + 1#define FRB_MASK (0x1f << 11)  { 5, 11, 0, 0, PPC_OPERAND_FPR },  /* The FRC field in an A form instruction.  */#define FRC FRB + 1#define FRC_MASK (0x1f << 6)  { 5, 6, 0, 0, PPC_OPERAND_FPR },  /* The FRS field in an X form instruction or the FRT field in a D, X     or A form instruction.  */#define FRS FRC + 1#define FRT FRS  { 5, 21, 0, 0, PPC_OPERAND_FPR },  /* The FXM field in an XFX instruction.  */#define FXM FRS + 1#define FXM_MASK (0xff << 12)  { 8, 12, 0, 0, 0 },  /* The L field in a D or X form instruction.  */#define L FXM + 1  { 1, 21, 0, 0, PPC_OPERAND_OPTIONAL },  /* The LEV field in a POWER SC form instruction.  */#define LEV L + 1  { 7, 5, 0, 0, 0 },  /* The LI field in an I form instruction.  The lower two bits are     forced to zero.  */#define LI LEV + 1  { 26, 0, insert_li, extract_li, PPC_OPERAND_RELATIVE | PPC_OPERAND_SIGNED },  /* The LI field in an I form instruction when used as an absolute     address.  */#define LIA LI + 1  { 26, 0, insert_li, extract_li, PPC_OPERAND_ABSOLUTE | PPC_OPERAND_SIGNED },  /* The MB field in an M form instruction.  */#define MB LIA + 1#define MB_MASK (0x1f << 6)  { 5, 6, 0, 0, 0 },  /* The ME field in an M form instruction.  */#define ME MB + 1#define ME_MASK (0x1f << 1)  { 5, 1, 0, 0, 0 },  /* The MB and ME fields in an M form instruction expressed a single     operand which is a bitmask indicating which bits to select.  This     is a two operand form using PPC_OPERAND_NEXT.  See the     description in opcode/ppc.h for what this means.  */#define MBE ME + 1  { 5, 6, 0, 0, PPC_OPERAND_OPTIONAL | PPC_OPERAND_NEXT },  { 32, 0, insert_mbe, extract_mbe, 0 },  /* The MB or ME field in an MD or MDS form instruction.  The high     bit is wrapped to the low end.  */#define MB6 MBE + 2#define ME6 MB6#define MB6_MASK (0x3f << 5)  { 6, 5, insert_mb6, extract_mb6, 0 },  /* The NB field in an X form instruction.  The value 32 is stored as     0.  */#define NB MB6 + 1  { 6, 11, insert_nb, extract_nb, 0 },  /* The NSI field in a D form instruction.  This is the same as the     SI field, only negated.  */#define NSI NB + 1  { 16, 0, insert_nsi, extract_nsi,      PPC_OPERAND_NEGATIVE | PPC_OPERAND_SIGNED },  /* The RA field in an D, DS, X, XO, M, or MDS form instruction.  */#define RA NSI + 1#define RA_MASK (0x1f << 16)  { 5, 16, 0, 0, PPC_OPERAND_GPR },  /* 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.  */#define RAL RA + 1  { 5, 16, insert_ral, 0, PPC_OPERAND_GPR },  /* The RA field in an lmw instruction, which has special value     restrictions.  */#define RAM RAL + 1  { 5, 16, insert_ram, 0, PPC_OPERAND_GPR },  /* 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.  */#define RAS RAM + 1  { 5, 16, insert_ras, 0, PPC_OPERAND_GPR },  /* The RB field in an X, XO, M, or MDS form instruction.  */#define RB RAS + 1#define RB_MASK (0x1f << 11)  { 5, 11, 0, 0, PPC_OPERAND_GPR },  /* 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.  */#define RBS RB + 1  { 5, 1, insert_rbs, extract_rbs, PPC_OPERAND_FAKE },  /* The RS field in a D, DS, X, XFX, XS, M, MD or MDS form     instruction or the RT field in a D, DS, X, XFX or XO form     instruction.  */#define RS RBS + 1#define RT RS#define RT_MASK (0x1f << 21)  { 5, 21, 0, 0, PPC_OPERAND_GPR },  /* The SH field in an X or M form instruction.  */#define SH RS + 1#define SH_MASK (0x1f << 11)  { 5, 11, 0, 0, 0 },  /* The SH field in an MD form instruction.  This is split.  */#define SH6 SH + 1#define SH6_MASK ((0x1f << 11) | (1 << 1))  { 6, 1, insert_sh6, extract_sh6, 0 },  /* The SI field in a D form instruction.  */#define SI SH6 + 1  { 16, 0, 0, 0, PPC_OPERAND_SIGNED },

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
不卡一区二区中文字幕| 国产日韩视频一区二区三区| 精品999在线播放| 亚洲激情网站免费观看| 国产一区二区三区四| 欧美视频中文一区二区三区在线观看| 精品国产在天天线2019| 日韩一区在线播放| 国产一区二区电影| 欧美一区二区视频在线观看 | 91福利视频网站| 久久夜色精品国产噜噜av | 国产精品理论片在线观看| 日本vs亚洲vs韩国一区三区二区 | 国产香蕉久久精品综合网| 日韩av在线发布| 欧美图片一区二区三区| 1区2区3区欧美| 成人午夜视频在线| 久久精品水蜜桃av综合天堂| 久久精品国产一区二区三区免费看 | 一本色道**综合亚洲精品蜜桃冫| 精品99999| 韩国三级中文字幕hd久久精品| 91精品蜜臀在线一区尤物| 亚洲国产精品久久人人爱蜜臀| 9色porny自拍视频一区二区| 国产日韩成人精品| 国产成人超碰人人澡人人澡| 久久伊人蜜桃av一区二区| 韩国毛片一区二区三区| 精品播放一区二区| 国产98色在线|日韩| 日本一区二区三区四区| 国产精品亚洲第一区在线暖暖韩国| 精品国精品国产尤物美女| 精品一区二区三区视频在线观看| 日韩免费性生活视频播放| 九九在线精品视频| 久久日韩粉嫩一区二区三区| 国产成人精品影院| 中文字幕在线一区免费| 成人av在线一区二区三区| 亚洲少妇30p| 欧美人狂配大交3d怪物一区| 美女视频一区二区| 国产欧美精品在线观看| 成人av电影在线播放| 一区二区三区在线播放| 欧美片网站yy| 狠狠狠色丁香婷婷综合久久五月| 国产网站一区二区| 色综合久久九月婷婷色综合| 亚洲午夜激情av| 欧美一区二区三区视频在线观看| 精品一区二区三区久久久| 国产精品国模大尺度视频| 欧美在线一区二区三区| 精品无码三级在线观看视频| 国产精品不卡一区| 91麻豆精品国产91久久久更新时间| 久久99国产精品久久99果冻传媒| 国产欧美在线观看一区| 欧美少妇bbb| 久久成人免费网站| 日韩美女精品在线| 日韩欧美一级在线播放| 99精品久久只有精品| 免费人成精品欧美精品| 国产精品久99| 欧美videofree性高清杂交| 99视频在线精品| 免费高清不卡av| 亚洲男人天堂av| 国产色一区二区| 欧美日本国产视频| 972aa.com艺术欧美| 极品尤物av久久免费看| 亚洲国产欧美在线人成| 久久精品一区二区三区不卡| 欧美日韩一级黄| 国产91高潮流白浆在线麻豆 | 亚洲影视在线播放| 国产女人18毛片水真多成人如厕 | 日韩精品一区二区三区四区视频 | 国产jizzjizz一区二区| 日韩电影在线一区| 亚洲激情自拍偷拍| 国产日韩欧美一区二区三区乱码| 9191精品国产综合久久久久久| 国产成人在线免费| 久久成人麻豆午夜电影| 亚洲愉拍自拍另类高清精品| 亚洲国产电影在线观看| 欧美电影免费观看高清完整版| 91激情五月电影| 波多野洁衣一区| 韩国一区二区在线观看| 日本成人在线一区| 日韩中文字幕不卡| 午夜视频在线观看一区二区三区| 亚洲视频一区二区在线观看| 国产午夜久久久久| 国产日产欧美精品一区二区三区| 欧美成人三级电影在线| 91精品午夜视频| 欧美日韩精品欧美日韩精品一| 97se狠狠狠综合亚洲狠狠| 成人高清伦理免费影院在线观看| 国产一区视频网站| 国产盗摄视频一区二区三区| 精品制服美女丁香| 激情另类小说区图片区视频区| 日本不卡视频在线观看| 蜜桃视频一区二区三区在线观看| 午夜欧美电影在线观看| 日韩激情av在线| 麻豆精品在线播放| 国产一区二区三区高清播放| 国产又粗又猛又爽又黄91精品| 狠狠色丁香久久婷婷综| 国产成人精品一区二区三区网站观看| 国产中文字幕精品| 成人永久免费视频| 99久久婷婷国产| 欧美色偷偷大香| 91麻豆精品国产91久久久久久久久 | 日韩制服丝袜先锋影音| 热久久久久久久| 国产一区二区伦理| 丁香啪啪综合成人亚洲小说| 成人h动漫精品一区二区| 在线免费观看成人短视频| 欧美日韩国产美女| www国产成人| 中文字幕日韩一区| 亚洲国产精品久久人人爱| 久久国产精品色婷婷| 国产.精品.日韩.另类.中文.在线.播放| 成人在线综合网站| 欧美猛男男办公室激情| 精品美女在线播放| 亚洲欧洲精品天堂一级| 日韩精品一二三四| 岛国一区二区三区| 欧美日韩二区三区| 久久精品夜色噜噜亚洲a∨| 亚洲欧美激情在线| 激情综合五月婷婷| 91亚洲精品乱码久久久久久蜜桃 | 中文字幕不卡一区| 午夜欧美视频在线观看| 国产99精品国产| 欧美日韩精品二区第二页| 久久久久久久久久久黄色| 亚洲精品成人a在线观看| 久久国产生活片100| 成人动漫一区二区在线| 欧美一区二区精品| 亚洲视频免费观看| 国产一二精品视频| 精品视频在线看| 国产精品污网站| 韩国av一区二区三区在线观看| 91老师片黄在线观看| 欧美精品一区二区三区蜜桃视频| 亚洲视频一区二区在线| 久久成人18免费观看| 色国产综合视频| 国产精品区一区二区三区| 蜜桃av一区二区三区电影| 91视视频在线观看入口直接观看www | 在线一区二区视频| 国产日本欧洲亚洲| 久久国产婷婷国产香蕉| 欧美日韩国产免费| 夜夜操天天操亚洲| 99riav一区二区三区| 久久久精品2019中文字幕之3| 青青草伊人久久| 精品视频在线看| 一区二区三区欧美激情| www.欧美色图| 国产精品久久久久影院色老大| 国产精品一线二线三线精华| 日韩欧美一区电影| 日韩国产高清影视| 欧美男人的天堂一二区| 亚洲激情在线激情| 在线观看亚洲a| 夜色激情一区二区| 欧洲一区在线观看| 亚洲妇熟xx妇色黄| 欧美日韩欧美一区二区| 亚洲va天堂va国产va久| 欧美丰满一区二区免费视频| 亚洲一区二区三区自拍| 欧美无乱码久久久免费午夜一区 | 99视频超级精品| 国产精品国模大尺度视频|