aarch64-dis-2.c 1.7 MB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027100281002910030100311003210033100341003510036100371003810039100401004110042100431004410045100461004710048100491005010051100521005310054100551005610057100581005910060100611006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093100941009510096100971009810099101001010110102101031010410105101061010710108101091011010111101121011310114101151011610117101181011910120101211012210123101241012510126101271012810129101301013110132101331013410135101361013710138101391014010141101421014310144101451014610147101481014910150101511015210153101541015510156101571015810159101601016110162101631016410165101661016710168101691017010171101721017310174101751017610177101781017910180101811018210183101841018510186101871018810189101901019110192101931019410195101961019710198101991020010201102021020310204102051020610207102081020910210102111021210213102141021510216102171021810219102201022110222102231022410225102261022710228102291023010231102321023310234102351023610237102381023910240102411024210243102441024510246102471024810249102501025110252102531025410255102561025710258102591026010261102621026310264102651026610267102681026910270102711027210273102741027510276102771027810279102801028110282102831028410285102861028710288102891029010291102921029310294102951029610297102981029910300103011030210303103041030510306103071030810309103101031110312103131031410315103161031710318103191032010321103221032310324103251032610327103281032910330103311033210333103341033510336103371033810339103401034110342103431034410345103461034710348103491035010351103521035310354103551035610357103581035910360103611036210363103641036510366103671036810369103701037110372103731037410375103761037710378103791038010381103821038310384103851038610387103881038910390103911039210393103941039510396103971039810399104001040110402104031040410405104061040710408104091041010411104121041310414104151041610417104181041910420104211042210423104241042510426104271042810429104301043110432104331043410435104361043710438104391044010441104421044310444104451044610447104481044910450104511045210453104541045510456104571045810459104601046110462104631046410465104661046710468104691047010471104721047310474104751047610477104781047910480104811048210483104841048510486104871048810489104901049110492104931049410495104961049710498104991050010501105021050310504105051050610507105081050910510105111051210513105141051510516105171051810519105201052110522105231052410525105261052710528105291053010531105321053310534105351053610537105381053910540105411054210543105441054510546105471054810549105501055110552105531055410555105561055710558105591056010561105621056310564105651056610567105681056910570105711057210573105741057510576105771057810579105801058110582105831058410585105861058710588105891059010591105921059310594105951059610597105981059910600106011060210603106041060510606106071060810609106101061110612106131061410615106161061710618106191062010621106221062310624106251062610627106281062910630106311063210633106341063510636106371063810639106401064110642106431064410645106461064710648106491065010651106521065310654106551065610657106581065910660106611066210663106641066510666106671066810669106701067110672106731067410675106761067710678106791068010681106821068310684106851068610687106881068910690106911069210693106941069510696106971069810699107001070110702107031070410705107061070710708107091071010711107121071310714107151071610717107181071910720107211072210723107241072510726107271072810729107301073110732107331073410735107361073710738107391074010741107421074310744107451074610747107481074910750107511075210753107541075510756107571075810759107601076110762107631076410765107661076710768107691077010771107721077310774107751077610777107781077910780107811078210783107841078510786107871078810789107901079110792107931079410795107961079710798107991080010801108021080310804108051080610807108081080910810108111081210813108141081510816108171081810819108201082110822108231082410825108261082710828108291083010831108321083310834108351083610837108381083910840108411084210843108441084510846108471084810849108501085110852108531085410855108561085710858108591086010861108621086310864108651086610867108681086910870108711087210873108741087510876108771087810879108801088110882108831088410885108861088710888108891089010891108921089310894108951089610897108981089910900109011090210903109041090510906109071090810909109101091110912109131091410915109161091710918109191092010921109221092310924109251092610927109281092910930109311093210933109341093510936109371093810939109401094110942109431094410945109461094710948109491095010951109521095310954109551095610957109581095910960109611096210963109641096510966109671096810969109701097110972109731097410975109761097710978109791098010981109821098310984109851098610987109881098910990109911099210993109941099510996109971099810999110001100111002110031100411005110061100711008110091101011011110121101311014110151101611017110181101911020110211102211023110241102511026110271102811029110301103111032110331103411035110361103711038110391104011041110421104311044110451104611047110481104911050110511105211053110541105511056110571105811059110601106111062110631106411065110661106711068110691107011071110721107311074110751107611077110781107911080110811108211083110841108511086110871108811089110901109111092110931109411095110961109711098110991110011101111021110311104111051110611107111081110911110111111111211113111141111511116111171111811119111201112111122111231112411125111261112711128111291113011131111321113311134111351113611137111381113911140111411114211143111441114511146111471114811149111501115111152111531115411155111561115711158111591116011161111621116311164111651116611167111681116911170111711117211173111741117511176111771117811179111801118111182111831118411185111861118711188111891119011191111921119311194111951119611197111981119911200112011120211203112041120511206112071120811209112101121111212112131121411215112161121711218112191122011221112221122311224112251122611227112281122911230112311123211233112341123511236112371123811239112401124111242112431124411245112461124711248112491125011251112521125311254112551125611257112581125911260112611126211263112641126511266112671126811269112701127111272112731127411275112761127711278112791128011281112821128311284112851128611287112881128911290112911129211293112941129511296112971129811299113001130111302113031130411305113061130711308113091131011311113121131311314113151131611317113181131911320113211132211323113241132511326113271132811329113301133111332113331133411335113361133711338113391134011341113421134311344113451134611347113481134911350113511135211353113541135511356113571135811359113601136111362113631136411365113661136711368113691137011371113721137311374113751137611377113781137911380113811138211383113841138511386113871138811389113901139111392113931139411395113961139711398113991140011401114021140311404114051140611407114081140911410114111141211413114141141511416114171141811419114201142111422114231142411425114261142711428114291143011431114321143311434114351143611437114381143911440114411144211443114441144511446114471144811449114501145111452114531145411455114561145711458114591146011461114621146311464114651146611467114681146911470114711147211473114741147511476114771147811479114801148111482114831148411485114861148711488114891149011491114921149311494114951149611497114981149911500115011150211503115041150511506115071150811509115101151111512115131151411515115161151711518115191152011521115221152311524115251152611527115281152911530115311153211533115341153511536115371153811539115401154111542115431154411545115461154711548115491155011551115521155311554115551155611557115581155911560115611156211563115641156511566115671156811569115701157111572115731157411575115761157711578115791158011581115821158311584115851158611587115881158911590115911159211593115941159511596115971159811599116001160111602116031160411605116061160711608116091161011611116121161311614116151161611617116181161911620116211162211623116241162511626116271162811629116301163111632116331163411635116361163711638116391164011641116421164311644116451164611647116481164911650116511165211653116541165511656116571165811659116601166111662116631166411665116661166711668116691167011671116721167311674116751167611677116781167911680116811168211683116841168511686116871168811689116901169111692116931169411695116961169711698116991170011701117021170311704117051170611707117081170911710117111171211713117141171511716117171171811719117201172111722117231172411725117261172711728117291173011731117321173311734117351173611737117381173911740117411174211743117441174511746117471174811749117501175111752117531175411755117561175711758117591176011761117621176311764117651176611767117681176911770117711177211773117741177511776117771177811779117801178111782117831178411785117861178711788117891179011791117921179311794117951179611797117981179911800118011180211803118041180511806118071180811809118101181111812118131181411815118161181711818118191182011821118221182311824118251182611827118281182911830118311183211833118341183511836118371183811839118401184111842118431184411845118461184711848118491185011851118521185311854118551185611857118581185911860118611186211863118641186511866118671186811869118701187111872118731187411875118761187711878118791188011881118821188311884118851188611887118881188911890118911189211893118941189511896118971189811899119001190111902119031190411905119061190711908119091191011911119121191311914119151191611917119181191911920119211192211923119241192511926119271192811929119301193111932119331193411935119361193711938119391194011941119421194311944119451194611947119481194911950119511195211953119541195511956119571195811959119601196111962119631196411965119661196711968119691197011971119721197311974119751197611977119781197911980119811198211983119841198511986119871198811989119901199111992119931199411995119961199711998119991200012001120021200312004120051200612007120081200912010120111201212013120141201512016120171201812019120201202112022120231202412025120261202712028120291203012031120321203312034120351203612037120381203912040120411204212043120441204512046120471204812049120501205112052120531205412055120561205712058120591206012061120621206312064120651206612067120681206912070120711207212073120741207512076120771207812079120801208112082120831208412085120861208712088120891209012091120921209312094120951209612097120981209912100121011210212103121041210512106121071210812109121101211112112121131211412115121161211712118121191212012121121221212312124121251212612127121281212912130121311213212133121341213512136121371213812139121401214112142121431214412145121461214712148121491215012151121521215312154121551215612157121581215912160121611216212163121641216512166121671216812169121701217112172121731217412175121761217712178121791218012181121821218312184121851218612187121881218912190121911219212193121941219512196121971219812199122001220112202122031220412205122061220712208122091221012211122121221312214122151221612217122181221912220122211222212223122241222512226122271222812229122301223112232122331223412235122361223712238122391224012241122421224312244122451224612247122481224912250122511225212253122541225512256122571225812259122601226112262122631226412265122661226712268122691227012271122721227312274122751227612277122781227912280122811228212283122841228512286122871228812289122901229112292122931229412295122961229712298122991230012301123021230312304123051230612307123081230912310123111231212313123141231512316123171231812319123201232112322123231232412325123261232712328123291233012331123321233312334123351233612337123381233912340123411234212343123441234512346123471234812349123501235112352123531235412355123561235712358123591236012361123621236312364123651236612367123681236912370123711237212373123741237512376123771237812379123801238112382123831238412385123861238712388123891239012391123921239312394123951239612397123981239912400124011240212403124041240512406124071240812409124101241112412124131241412415124161241712418124191242012421124221242312424124251242612427124281242912430124311243212433124341243512436124371243812439124401244112442124431244412445124461244712448124491245012451124521245312454124551245612457124581245912460124611246212463124641246512466124671246812469124701247112472124731247412475124761247712478124791248012481124821248312484124851248612487124881248912490124911249212493124941249512496124971249812499125001250112502125031250412505125061250712508125091251012511125121251312514125151251612517125181251912520125211252212523125241252512526125271252812529125301253112532125331253412535125361253712538125391254012541125421254312544125451254612547125481254912550125511255212553125541255512556125571255812559125601256112562125631256412565125661256712568125691257012571125721257312574125751257612577125781257912580125811258212583125841258512586125871258812589125901259112592125931259412595125961259712598125991260012601126021260312604126051260612607126081260912610126111261212613126141261512616126171261812619126201262112622126231262412625126261262712628126291263012631126321263312634126351263612637126381263912640126411264212643126441264512646126471264812649126501265112652126531265412655126561265712658126591266012661126621266312664126651266612667126681266912670126711267212673126741267512676126771267812679126801268112682126831268412685126861268712688126891269012691126921269312694126951269612697126981269912700127011270212703127041270512706127071270812709127101271112712127131271412715127161271712718127191272012721127221272312724127251272612727127281272912730127311273212733127341273512736127371273812739127401274112742127431274412745127461274712748127491275012751127521275312754127551275612757127581275912760127611276212763127641276512766127671276812769127701277112772127731277412775127761277712778127791278012781127821278312784127851278612787127881278912790127911279212793127941279512796127971279812799128001280112802128031280412805128061280712808128091281012811128121281312814128151281612817128181281912820128211282212823128241282512826128271282812829128301283112832128331283412835128361283712838128391284012841128421284312844128451284612847128481284912850128511285212853128541285512856128571285812859128601286112862128631286412865128661286712868128691287012871128721287312874128751287612877128781287912880128811288212883128841288512886128871288812889128901289112892128931289412895128961289712898128991290012901129021290312904129051290612907129081290912910129111291212913129141291512916129171291812919129201292112922129231292412925129261292712928129291293012931129321293312934129351293612937129381293912940129411294212943129441294512946129471294812949129501295112952129531295412955129561295712958129591296012961129621296312964129651296612967129681296912970129711297212973129741297512976129771297812979129801298112982129831298412985129861298712988129891299012991129921299312994129951299612997129981299913000130011300213003130041300513006130071300813009130101301113012130131301413015130161301713018130191302013021130221302313024130251302613027130281302913030130311303213033130341303513036130371303813039130401304113042130431304413045130461304713048130491305013051130521305313054130551305613057130581305913060130611306213063130641306513066130671306813069130701307113072130731307413075130761307713078130791308013081130821308313084130851308613087130881308913090130911309213093130941309513096130971309813099131001310113102131031310413105131061310713108131091311013111131121311313114131151311613117131181311913120131211312213123131241312513126131271312813129131301313113132131331313413135131361313713138131391314013141131421314313144131451314613147131481314913150131511315213153131541315513156131571315813159131601316113162131631316413165131661316713168131691317013171131721317313174131751317613177131781317913180131811318213183131841318513186131871318813189131901319113192131931319413195131961319713198131991320013201132021320313204132051320613207132081320913210132111321213213132141321513216132171321813219132201322113222132231322413225132261322713228132291323013231132321323313234132351323613237132381323913240132411324213243132441324513246132471324813249132501325113252132531325413255132561325713258132591326013261132621326313264132651326613267132681326913270132711327213273132741327513276132771327813279132801328113282132831328413285132861328713288132891329013291132921329313294132951329613297132981329913300133011330213303133041330513306133071330813309133101331113312133131331413315133161331713318133191332013321133221332313324133251332613327133281332913330133311333213333133341333513336133371333813339133401334113342133431334413345133461334713348133491335013351133521335313354133551335613357133581335913360133611336213363133641336513366133671336813369133701337113372133731337413375133761337713378133791338013381133821338313384133851338613387133881338913390133911339213393133941339513396133971339813399134001340113402134031340413405134061340713408134091341013411134121341313414134151341613417134181341913420134211342213423134241342513426134271342813429134301343113432134331343413435134361343713438134391344013441134421344313444134451344613447134481344913450134511345213453134541345513456134571345813459134601346113462134631346413465134661346713468134691347013471134721347313474134751347613477134781347913480134811348213483134841348513486134871348813489134901349113492134931349413495134961349713498134991350013501135021350313504135051350613507135081350913510135111351213513135141351513516135171351813519135201352113522135231352413525135261352713528135291353013531135321353313534135351353613537135381353913540135411354213543135441354513546135471354813549135501355113552135531355413555135561355713558135591356013561135621356313564135651356613567135681356913570135711357213573135741357513576135771357813579135801358113582135831358413585135861358713588135891359013591135921359313594135951359613597135981359913600136011360213603136041360513606136071360813609136101361113612136131361413615136161361713618136191362013621136221362313624136251362613627136281362913630136311363213633136341363513636136371363813639136401364113642136431364413645136461364713648136491365013651136521365313654136551365613657136581365913660136611366213663136641366513666136671366813669136701367113672136731367413675136761367713678136791368013681136821368313684136851368613687136881368913690136911369213693136941369513696136971369813699137001370113702137031370413705137061370713708137091371013711137121371313714137151371613717137181371913720137211372213723137241372513726137271372813729137301373113732137331373413735137361373713738137391374013741137421374313744137451374613747137481374913750137511375213753137541375513756137571375813759137601376113762137631376413765137661376713768137691377013771137721377313774137751377613777137781377913780137811378213783137841378513786137871378813789137901379113792137931379413795137961379713798137991380013801138021380313804138051380613807138081380913810138111381213813138141381513816138171381813819138201382113822138231382413825138261382713828138291383013831138321383313834138351383613837138381383913840138411384213843138441384513846138471384813849138501385113852138531385413855138561385713858138591386013861138621386313864138651386613867138681386913870138711387213873138741387513876138771387813879138801388113882138831388413885138861388713888138891389013891138921389313894138951389613897138981389913900139011390213903139041390513906139071390813909139101391113912139131391413915139161391713918139191392013921139221392313924139251392613927139281392913930139311393213933139341393513936139371393813939139401394113942139431394413945139461394713948139491395013951139521395313954139551395613957139581395913960139611396213963139641396513966139671396813969139701397113972139731397413975139761397713978139791398013981139821398313984139851398613987139881398913990139911399213993139941399513996139971399813999140001400114002140031400414005140061400714008140091401014011140121401314014140151401614017140181401914020140211402214023140241402514026140271402814029140301403114032140331403414035140361403714038140391404014041140421404314044140451404614047140481404914050140511405214053140541405514056140571405814059140601406114062140631406414065140661406714068140691407014071140721407314074140751407614077140781407914080140811408214083140841408514086140871408814089140901409114092140931409414095140961409714098140991410014101141021410314104141051410614107141081410914110141111411214113141141411514116141171411814119141201412114122141231412414125141261412714128141291413014131141321413314134141351413614137141381413914140141411414214143141441414514146141471414814149141501415114152141531415414155141561415714158141591416014161141621416314164141651416614167141681416914170141711417214173141741417514176141771417814179141801418114182141831418414185141861418714188141891419014191141921419314194141951419614197141981419914200142011420214203142041420514206142071420814209142101421114212142131421414215142161421714218142191422014221142221422314224142251422614227142281422914230142311423214233142341423514236142371423814239142401424114242142431424414245142461424714248142491425014251142521425314254142551425614257142581425914260142611426214263142641426514266142671426814269142701427114272142731427414275142761427714278142791428014281142821428314284142851428614287142881428914290142911429214293142941429514296142971429814299143001430114302143031430414305143061430714308143091431014311143121431314314143151431614317143181431914320143211432214323143241432514326143271432814329143301433114332143331433414335143361433714338143391434014341143421434314344143451434614347143481434914350143511435214353143541435514356143571435814359143601436114362143631436414365143661436714368143691437014371143721437314374143751437614377143781437914380143811438214383143841438514386143871438814389143901439114392143931439414395143961439714398143991440014401144021440314404144051440614407144081440914410144111441214413144141441514416144171441814419144201442114422144231442414425144261442714428144291443014431144321443314434144351443614437144381443914440144411444214443144441444514446144471444814449144501445114452144531445414455144561445714458144591446014461144621446314464144651446614467144681446914470144711447214473144741447514476144771447814479144801448114482144831448414485144861448714488144891449014491144921449314494144951449614497144981449914500145011450214503145041450514506145071450814509145101451114512145131451414515145161451714518145191452014521145221452314524145251452614527145281452914530145311453214533145341453514536145371453814539145401454114542145431454414545145461454714548145491455014551145521455314554145551455614557145581455914560145611456214563145641456514566145671456814569145701457114572145731457414575145761457714578145791458014581145821458314584145851458614587145881458914590145911459214593145941459514596145971459814599146001460114602146031460414605146061460714608146091461014611146121461314614146151461614617146181461914620146211462214623146241462514626146271462814629146301463114632146331463414635146361463714638146391464014641146421464314644146451464614647146481464914650146511465214653146541465514656146571465814659146601466114662146631466414665146661466714668146691467014671146721467314674146751467614677146781467914680146811468214683146841468514686146871468814689146901469114692146931469414695146961469714698146991470014701147021470314704147051470614707147081470914710147111471214713147141471514716147171471814719147201472114722147231472414725147261472714728147291473014731147321473314734147351473614737147381473914740147411474214743147441474514746147471474814749147501475114752147531475414755147561475714758147591476014761147621476314764147651476614767147681476914770147711477214773147741477514776147771477814779147801478114782147831478414785147861478714788147891479014791147921479314794147951479614797147981479914800148011480214803148041480514806148071480814809148101481114812148131481414815148161481714818148191482014821148221482314824148251482614827148281482914830148311483214833148341483514836148371483814839148401484114842148431484414845148461484714848148491485014851148521485314854148551485614857148581485914860148611486214863148641486514866148671486814869148701487114872148731487414875148761487714878148791488014881148821488314884148851488614887148881488914890148911489214893148941489514896148971489814899149001490114902149031490414905149061490714908149091491014911149121491314914149151491614917149181491914920149211492214923149241492514926149271492814929149301493114932149331493414935149361493714938149391494014941149421494314944149451494614947149481494914950149511495214953149541495514956149571495814959149601496114962149631496414965149661496714968149691497014971149721497314974149751497614977149781497914980149811498214983149841498514986149871498814989149901499114992149931499414995149961499714998149991500015001150021500315004150051500615007150081500915010150111501215013150141501515016150171501815019150201502115022150231502415025150261502715028150291503015031150321503315034150351503615037150381503915040150411504215043150441504515046150471504815049150501505115052150531505415055150561505715058150591506015061150621506315064150651506615067150681506915070150711507215073150741507515076150771507815079150801508115082150831508415085150861508715088150891509015091150921509315094150951509615097150981509915100151011510215103151041510515106151071510815109151101511115112151131511415115151161511715118151191512015121151221512315124151251512615127151281512915130151311513215133151341513515136151371513815139151401514115142151431514415145151461514715148151491515015151151521515315154151551515615157151581515915160151611516215163151641516515166151671516815169151701517115172151731517415175151761517715178151791518015181151821518315184151851518615187151881518915190151911519215193151941519515196151971519815199152001520115202152031520415205152061520715208152091521015211152121521315214152151521615217152181521915220152211522215223152241522515226152271522815229152301523115232152331523415235152361523715238152391524015241152421524315244152451524615247152481524915250152511525215253152541525515256152571525815259152601526115262152631526415265152661526715268152691527015271152721527315274152751527615277152781527915280152811528215283152841528515286152871528815289152901529115292152931529415295152961529715298152991530015301153021530315304153051530615307153081530915310153111531215313153141531515316153171531815319153201532115322153231532415325153261532715328153291533015331153321533315334153351533615337153381533915340153411534215343153441534515346153471534815349153501535115352153531535415355153561535715358153591536015361153621536315364153651536615367153681536915370153711537215373153741537515376153771537815379153801538115382153831538415385153861538715388153891539015391153921539315394153951539615397153981539915400154011540215403154041540515406154071540815409154101541115412154131541415415154161541715418154191542015421154221542315424154251542615427154281542915430154311543215433154341543515436154371543815439154401544115442154431544415445154461544715448154491545015451154521545315454154551545615457154581545915460154611546215463154641546515466154671546815469154701547115472154731547415475154761547715478154791548015481154821548315484154851548615487154881548915490154911549215493154941549515496154971549815499155001550115502155031550415505155061550715508155091551015511155121551315514155151551615517155181551915520155211552215523155241552515526155271552815529155301553115532155331553415535155361553715538155391554015541155421554315544155451554615547155481554915550155511555215553155541555515556155571555815559155601556115562155631556415565155661556715568155691557015571155721557315574155751557615577155781557915580155811558215583155841558515586155871558815589155901559115592155931559415595155961559715598155991560015601156021560315604156051560615607156081560915610156111561215613156141561515616156171561815619156201562115622156231562415625156261562715628156291563015631156321563315634156351563615637156381563915640156411564215643156441564515646156471564815649156501565115652156531565415655156561565715658156591566015661156621566315664156651566615667156681566915670156711567215673156741567515676156771567815679156801568115682156831568415685156861568715688156891569015691156921569315694156951569615697156981569915700157011570215703157041570515706157071570815709157101571115712157131571415715157161571715718157191572015721157221572315724157251572615727157281572915730157311573215733157341573515736157371573815739157401574115742157431574415745157461574715748157491575015751157521575315754157551575615757157581575915760157611576215763157641576515766157671576815769157701577115772157731577415775157761577715778157791578015781157821578315784157851578615787157881578915790157911579215793157941579515796157971579815799158001580115802158031580415805158061580715808158091581015811158121581315814158151581615817158181581915820158211582215823158241582515826158271582815829158301583115832158331583415835158361583715838158391584015841158421584315844158451584615847158481584915850158511585215853158541585515856158571585815859158601586115862158631586415865158661586715868158691587015871158721587315874158751587615877158781587915880158811588215883158841588515886158871588815889158901589115892158931589415895158961589715898158991590015901159021590315904159051590615907159081590915910159111591215913159141591515916159171591815919159201592115922159231592415925159261592715928159291593015931159321593315934159351593615937159381593915940159411594215943159441594515946159471594815949159501595115952159531595415955159561595715958159591596015961159621596315964159651596615967159681596915970159711597215973159741597515976159771597815979159801598115982159831598415985159861598715988159891599015991159921599315994159951599615997159981599916000160011600216003160041600516006160071600816009160101601116012160131601416015160161601716018160191602016021160221602316024160251602616027160281602916030160311603216033160341603516036160371603816039160401604116042160431604416045160461604716048160491605016051160521605316054160551605616057160581605916060160611606216063160641606516066160671606816069160701607116072160731607416075160761607716078160791608016081160821608316084160851608616087160881608916090160911609216093160941609516096160971609816099161001610116102161031610416105161061610716108161091611016111161121611316114161151611616117161181611916120161211612216123161241612516126161271612816129161301613116132161331613416135161361613716138161391614016141161421614316144161451614616147161481614916150161511615216153161541615516156161571615816159161601616116162161631616416165161661616716168161691617016171161721617316174161751617616177161781617916180161811618216183161841618516186161871618816189161901619116192161931619416195161961619716198161991620016201162021620316204162051620616207162081620916210162111621216213162141621516216162171621816219162201622116222162231622416225162261622716228162291623016231162321623316234162351623616237162381623916240162411624216243162441624516246162471624816249162501625116252162531625416255162561625716258162591626016261162621626316264162651626616267162681626916270162711627216273162741627516276162771627816279162801628116282162831628416285162861628716288162891629016291162921629316294162951629616297162981629916300163011630216303163041630516306163071630816309163101631116312163131631416315163161631716318163191632016321163221632316324163251632616327163281632916330163311633216333163341633516336163371633816339163401634116342163431634416345163461634716348163491635016351163521635316354163551635616357163581635916360163611636216363163641636516366163671636816369163701637116372163731637416375163761637716378163791638016381163821638316384163851638616387163881638916390163911639216393163941639516396163971639816399164001640116402164031640416405164061640716408164091641016411164121641316414164151641616417164181641916420164211642216423164241642516426164271642816429164301643116432164331643416435164361643716438164391644016441164421644316444164451644616447164481644916450164511645216453164541645516456164571645816459164601646116462164631646416465164661646716468164691647016471164721647316474164751647616477164781647916480164811648216483164841648516486164871648816489164901649116492164931649416495164961649716498164991650016501165021650316504165051650616507165081650916510165111651216513165141651516516165171651816519165201652116522165231652416525165261652716528165291653016531165321653316534165351653616537165381653916540165411654216543165441654516546165471654816549165501655116552165531655416555165561655716558165591656016561165621656316564165651656616567165681656916570165711657216573165741657516576165771657816579165801658116582165831658416585165861658716588165891659016591165921659316594165951659616597165981659916600166011660216603166041660516606166071660816609166101661116612166131661416615166161661716618166191662016621166221662316624166251662616627166281662916630166311663216633166341663516636166371663816639166401664116642166431664416645166461664716648166491665016651166521665316654166551665616657166581665916660166611666216663166641666516666166671666816669166701667116672166731667416675166761667716678166791668016681166821668316684166851668616687166881668916690166911669216693166941669516696166971669816699167001670116702167031670416705167061670716708167091671016711167121671316714167151671616717167181671916720167211672216723167241672516726167271672816729167301673116732167331673416735167361673716738167391674016741167421674316744167451674616747167481674916750167511675216753167541675516756167571675816759167601676116762167631676416765167661676716768167691677016771167721677316774167751677616777167781677916780167811678216783167841678516786167871678816789167901679116792167931679416795167961679716798167991680016801168021680316804168051680616807168081680916810168111681216813168141681516816168171681816819168201682116822168231682416825168261682716828168291683016831168321683316834168351683616837168381683916840168411684216843168441684516846168471684816849168501685116852168531685416855168561685716858168591686016861168621686316864168651686616867168681686916870168711687216873168741687516876168771687816879168801688116882168831688416885168861688716888168891689016891168921689316894168951689616897168981689916900169011690216903169041690516906169071690816909169101691116912169131691416915169161691716918169191692016921169221692316924169251692616927169281692916930169311693216933169341693516936169371693816939169401694116942169431694416945169461694716948169491695016951169521695316954169551695616957169581695916960169611696216963169641696516966169671696816969169701697116972169731697416975169761697716978169791698016981169821698316984169851698616987169881698916990169911699216993169941699516996169971699816999170001700117002170031700417005170061700717008170091701017011170121701317014170151701617017170181701917020170211702217023170241702517026170271702817029170301703117032170331703417035170361703717038170391704017041170421704317044170451704617047170481704917050170511705217053170541705517056170571705817059170601706117062170631706417065170661706717068170691707017071170721707317074170751707617077170781707917080170811708217083170841708517086170871708817089170901709117092170931709417095170961709717098170991710017101171021710317104171051710617107171081710917110171111711217113171141711517116171171711817119171201712117122171231712417125171261712717128171291713017131171321713317134171351713617137171381713917140171411714217143171441714517146171471714817149171501715117152171531715417155171561715717158171591716017161171621716317164171651716617167171681716917170171711717217173171741717517176171771717817179171801718117182171831718417185171861718717188171891719017191171921719317194171951719617197171981719917200172011720217203172041720517206172071720817209172101721117212172131721417215172161721717218172191722017221172221722317224172251722617227172281722917230172311723217233172341723517236172371723817239172401724117242172431724417245172461724717248172491725017251172521725317254172551725617257172581725917260172611726217263172641726517266172671726817269172701727117272172731727417275172761727717278172791728017281172821728317284172851728617287172881728917290172911729217293172941729517296172971729817299173001730117302173031730417305173061730717308173091731017311173121731317314173151731617317173181731917320173211732217323173241732517326173271732817329173301733117332173331733417335173361733717338173391734017341173421734317344173451734617347173481734917350173511735217353173541735517356173571735817359173601736117362173631736417365173661736717368173691737017371173721737317374173751737617377173781737917380173811738217383173841738517386173871738817389173901739117392173931739417395173961739717398173991740017401174021740317404174051740617407174081740917410174111741217413174141741517416174171741817419174201742117422174231742417425174261742717428174291743017431174321743317434174351743617437174381743917440174411744217443174441744517446174471744817449174501745117452174531745417455174561745717458174591746017461174621746317464174651746617467174681746917470174711747217473174741747517476174771747817479174801748117482174831748417485174861748717488174891749017491174921749317494174951749617497174981749917500175011750217503175041750517506175071750817509175101751117512175131751417515175161751717518175191752017521175221752317524175251752617527175281752917530175311753217533175341753517536175371753817539175401754117542175431754417545175461754717548175491755017551175521755317554175551755617557175581755917560175611756217563175641756517566175671756817569175701757117572175731757417575175761757717578175791758017581175821758317584175851758617587175881758917590175911759217593175941759517596175971759817599176001760117602176031760417605176061760717608176091761017611176121761317614176151761617617176181761917620176211762217623176241762517626176271762817629176301763117632176331763417635176361763717638176391764017641176421764317644176451764617647176481764917650176511765217653176541765517656176571765817659176601766117662176631766417665176661766717668176691767017671176721767317674176751767617677176781767917680176811768217683176841768517686176871768817689176901769117692176931769417695176961769717698176991770017701177021770317704177051770617707177081770917710177111771217713177141771517716177171771817719177201772117722177231772417725177261772717728177291773017731177321773317734177351773617737177381773917740177411774217743177441774517746177471774817749177501775117752177531775417755177561775717758177591776017761177621776317764177651776617767177681776917770177711777217773177741777517776177771777817779177801778117782177831778417785177861778717788177891779017791177921779317794177951779617797177981779917800178011780217803178041780517806178071780817809178101781117812178131781417815178161781717818178191782017821178221782317824178251782617827178281782917830178311783217833178341783517836178371783817839178401784117842178431784417845178461784717848178491785017851178521785317854178551785617857178581785917860178611786217863178641786517866178671786817869178701787117872178731787417875178761787717878178791788017881178821788317884178851788617887178881788917890178911789217893178941789517896178971789817899179001790117902179031790417905179061790717908179091791017911179121791317914179151791617917179181791917920179211792217923179241792517926179271792817929179301793117932179331793417935179361793717938179391794017941179421794317944179451794617947179481794917950179511795217953179541795517956179571795817959179601796117962179631796417965179661796717968179691797017971179721797317974179751797617977179781797917980179811798217983179841798517986179871798817989179901799117992179931799417995179961799717998179991800018001180021800318004180051800618007180081800918010180111801218013180141801518016180171801818019180201802118022180231802418025180261802718028180291803018031180321803318034180351803618037180381803918040180411804218043180441804518046180471804818049180501805118052180531805418055180561805718058180591806018061180621806318064180651806618067180681806918070180711807218073180741807518076180771807818079180801808118082180831808418085180861808718088180891809018091180921809318094180951809618097180981809918100181011810218103181041810518106181071810818109181101811118112181131811418115181161811718118181191812018121181221812318124181251812618127181281812918130181311813218133181341813518136181371813818139181401814118142181431814418145181461814718148181491815018151181521815318154181551815618157181581815918160181611816218163181641816518166181671816818169181701817118172181731817418175181761817718178181791818018181181821818318184181851818618187181881818918190181911819218193181941819518196181971819818199182001820118202182031820418205182061820718208182091821018211182121821318214182151821618217182181821918220182211822218223182241822518226182271822818229182301823118232182331823418235182361823718238182391824018241182421824318244182451824618247182481824918250182511825218253182541825518256182571825818259182601826118262182631826418265182661826718268182691827018271182721827318274182751827618277182781827918280182811828218283182841828518286182871828818289182901829118292182931829418295182961829718298182991830018301183021830318304183051830618307183081830918310183111831218313183141831518316183171831818319183201832118322183231832418325183261832718328183291833018331183321833318334183351833618337183381833918340183411834218343183441834518346183471834818349183501835118352183531835418355183561835718358183591836018361183621836318364183651836618367183681836918370183711837218373183741837518376183771837818379183801838118382183831838418385183861838718388183891839018391183921839318394183951839618397183981839918400184011840218403184041840518406184071840818409184101841118412184131841418415184161841718418184191842018421184221842318424184251842618427184281842918430184311843218433184341843518436184371843818439184401844118442184431844418445184461844718448184491845018451184521845318454184551845618457184581845918460184611846218463184641846518466184671846818469184701847118472184731847418475184761847718478184791848018481184821848318484184851848618487184881848918490184911849218493184941849518496184971849818499185001850118502185031850418505185061850718508185091851018511185121851318514185151851618517185181851918520185211852218523185241852518526185271852818529185301853118532185331853418535185361853718538185391854018541185421854318544185451854618547185481854918550185511855218553185541855518556185571855818559185601856118562185631856418565185661856718568185691857018571185721857318574185751857618577185781857918580185811858218583185841858518586185871858818589185901859118592185931859418595185961859718598185991860018601186021860318604186051860618607186081860918610186111861218613186141861518616186171861818619186201862118622186231862418625186261862718628186291863018631186321863318634186351863618637186381863918640186411864218643186441864518646186471864818649186501865118652186531865418655186561865718658186591866018661186621866318664186651866618667186681866918670186711867218673186741867518676186771867818679186801868118682186831868418685186861868718688186891869018691186921869318694186951869618697186981869918700187011870218703187041870518706187071870818709187101871118712187131871418715187161871718718187191872018721187221872318724187251872618727187281872918730187311873218733187341873518736187371873818739187401874118742187431874418745187461874718748187491875018751187521875318754187551875618757187581875918760187611876218763187641876518766187671876818769187701877118772187731877418775187761877718778187791878018781187821878318784187851878618787187881878918790187911879218793187941879518796187971879818799188001880118802188031880418805188061880718808188091881018811188121881318814188151881618817188181881918820188211882218823188241882518826188271882818829188301883118832188331883418835188361883718838188391884018841188421884318844188451884618847188481884918850188511885218853188541885518856188571885818859188601886118862188631886418865188661886718868188691887018871188721887318874188751887618877188781887918880188811888218883188841888518886188871888818889188901889118892188931889418895188961889718898188991890018901189021890318904189051890618907189081890918910189111891218913189141891518916189171891818919189201892118922189231892418925189261892718928189291893018931189321893318934189351893618937189381893918940189411894218943189441894518946189471894818949189501895118952189531895418955189561895718958189591896018961189621896318964189651896618967189681896918970189711897218973189741897518976189771897818979189801898118982189831898418985189861898718988189891899018991189921899318994189951899618997189981899919000190011900219003190041900519006190071900819009190101901119012190131901419015190161901719018190191902019021190221902319024190251902619027190281902919030190311903219033190341903519036190371903819039190401904119042190431904419045190461904719048190491905019051190521905319054190551905619057190581905919060190611906219063190641906519066190671906819069190701907119072190731907419075190761907719078190791908019081190821908319084190851908619087190881908919090190911909219093190941909519096190971909819099191001910119102191031910419105191061910719108191091911019111191121911319114191151911619117191181911919120191211912219123191241912519126191271912819129191301913119132191331913419135191361913719138191391914019141191421914319144191451914619147191481914919150191511915219153191541915519156191571915819159191601916119162191631916419165191661916719168191691917019171191721917319174191751917619177191781917919180191811918219183191841918519186191871918819189191901919119192191931919419195191961919719198191991920019201192021920319204192051920619207192081920919210192111921219213192141921519216192171921819219192201922119222192231922419225192261922719228192291923019231192321923319234192351923619237192381923919240192411924219243192441924519246192471924819249192501925119252192531925419255192561925719258192591926019261192621926319264192651926619267192681926919270192711927219273192741927519276192771927819279192801928119282192831928419285192861928719288192891929019291192921929319294192951929619297192981929919300193011930219303193041930519306193071930819309193101931119312193131931419315193161931719318193191932019321193221932319324193251932619327193281932919330193311933219333193341933519336193371933819339193401934119342193431934419345193461934719348193491935019351193521935319354193551935619357193581935919360193611936219363193641936519366193671936819369193701937119372193731937419375193761937719378193791938019381193821938319384193851938619387193881938919390193911939219393193941939519396193971939819399194001940119402194031940419405194061940719408194091941019411194121941319414194151941619417194181941919420194211942219423194241942519426194271942819429194301943119432194331943419435194361943719438194391944019441194421944319444194451944619447194481944919450194511945219453194541945519456194571945819459194601946119462194631946419465194661946719468194691947019471194721947319474194751947619477194781947919480194811948219483194841948519486194871948819489194901949119492194931949419495194961949719498194991950019501195021950319504195051950619507195081950919510195111951219513195141951519516195171951819519195201952119522195231952419525195261952719528195291953019531195321953319534195351953619537195381953919540195411954219543195441954519546195471954819549195501955119552195531955419555195561955719558195591956019561195621956319564195651956619567195681956919570195711957219573195741957519576195771957819579195801958119582195831958419585195861958719588195891959019591195921959319594195951959619597195981959919600196011960219603196041960519606196071960819609196101961119612196131961419615196161961719618196191962019621196221962319624196251962619627196281962919630196311963219633196341963519636196371963819639196401964119642196431964419645196461964719648196491965019651196521965319654196551965619657196581965919660196611966219663196641966519666196671966819669196701967119672196731967419675196761967719678196791968019681196821968319684196851968619687196881968919690196911969219693196941969519696196971969819699197001970119702197031970419705197061970719708197091971019711197121971319714197151971619717197181971919720197211972219723197241972519726197271972819729197301973119732197331973419735197361973719738197391974019741197421974319744197451974619747197481974919750197511975219753197541975519756197571975819759197601976119762197631976419765197661976719768197691977019771197721977319774197751977619777197781977919780197811978219783197841978519786197871978819789197901979119792197931979419795197961979719798197991980019801198021980319804198051980619807198081980919810198111981219813198141981519816198171981819819198201982119822198231982419825198261982719828198291983019831198321983319834198351983619837198381983919840198411984219843198441984519846198471984819849198501985119852198531985419855198561985719858198591986019861198621986319864198651986619867198681986919870198711987219873198741987519876198771987819879198801988119882198831988419885198861988719888198891989019891198921989319894198951989619897198981989919900199011990219903199041990519906199071990819909199101991119912199131991419915199161991719918199191992019921199221992319924199251992619927199281992919930199311993219933199341993519936199371993819939199401994119942199431994419945199461994719948199491995019951199521995319954199551995619957199581995919960199611996219963199641996519966199671996819969199701997119972199731997419975199761997719978199791998019981199821998319984199851998619987199881998919990199911999219993199941999519996199971999819999200002000120002200032000420005200062000720008200092001020011200122001320014200152001620017200182001920020200212002220023200242002520026200272002820029200302003120032200332003420035200362003720038200392004020041200422004320044200452004620047200482004920050200512005220053200542005520056200572005820059200602006120062200632006420065200662006720068200692007020071200722007320074200752007620077200782007920080200812008220083200842008520086200872008820089200902009120092200932009420095200962009720098200992010020101201022010320104201052010620107201082010920110201112011220113201142011520116201172011820119201202012120122201232012420125201262012720128201292013020131201322013320134201352013620137201382013920140201412014220143201442014520146201472014820149201502015120152201532015420155201562015720158201592016020161201622016320164201652016620167201682016920170201712017220173201742017520176201772017820179201802018120182201832018420185201862018720188201892019020191201922019320194201952019620197201982019920200202012020220203202042020520206202072020820209202102021120212202132021420215202162021720218202192022020221202222022320224202252022620227202282022920230202312023220233202342023520236202372023820239202402024120242202432024420245202462024720248202492025020251202522025320254202552025620257202582025920260202612026220263202642026520266202672026820269202702027120272202732027420275202762027720278202792028020281202822028320284202852028620287202882028920290202912029220293202942029520296202972029820299203002030120302203032030420305203062030720308203092031020311203122031320314203152031620317203182031920320203212032220323203242032520326203272032820329203302033120332203332033420335203362033720338203392034020341203422034320344203452034620347203482034920350203512035220353203542035520356203572035820359203602036120362203632036420365203662036720368203692037020371203722037320374203752037620377203782037920380203812038220383203842038520386203872038820389203902039120392203932039420395203962039720398203992040020401204022040320404204052040620407204082040920410204112041220413204142041520416204172041820419204202042120422204232042420425204262042720428204292043020431204322043320434204352043620437204382043920440204412044220443204442044520446204472044820449204502045120452204532045420455204562045720458204592046020461204622046320464204652046620467204682046920470204712047220473204742047520476204772047820479204802048120482204832048420485204862048720488204892049020491204922049320494204952049620497204982049920500205012050220503205042050520506205072050820509205102051120512205132051420515205162051720518205192052020521205222052320524205252052620527205282052920530205312053220533205342053520536205372053820539205402054120542205432054420545205462054720548205492055020551205522055320554205552055620557205582055920560205612056220563205642056520566205672056820569205702057120572205732057420575205762057720578205792058020581205822058320584205852058620587205882058920590205912059220593205942059520596205972059820599206002060120602206032060420605206062060720608206092061020611206122061320614206152061620617206182061920620206212062220623206242062520626206272062820629206302063120632206332063420635206362063720638206392064020641206422064320644206452064620647206482064920650206512065220653206542065520656206572065820659206602066120662206632066420665206662066720668206692067020671206722067320674206752067620677206782067920680206812068220683206842068520686206872068820689206902069120692206932069420695206962069720698206992070020701207022070320704207052070620707207082070920710207112071220713207142071520716207172071820719207202072120722207232072420725207262072720728207292073020731207322073320734207352073620737207382073920740207412074220743207442074520746207472074820749207502075120752207532075420755207562075720758207592076020761207622076320764207652076620767207682076920770207712077220773207742077520776207772077820779207802078120782207832078420785207862078720788207892079020791207922079320794207952079620797207982079920800208012080220803208042080520806208072080820809208102081120812208132081420815208162081720818208192082020821208222082320824208252082620827208282082920830208312083220833208342083520836208372083820839208402084120842208432084420845208462084720848208492085020851208522085320854208552085620857208582085920860208612086220863208642086520866208672086820869208702087120872208732087420875208762087720878208792088020881208822088320884208852088620887208882088920890208912089220893208942089520896208972089820899209002090120902209032090420905209062090720908209092091020911209122091320914209152091620917209182091920920209212092220923209242092520926209272092820929209302093120932209332093420935209362093720938209392094020941209422094320944209452094620947209482094920950209512095220953209542095520956209572095820959209602096120962209632096420965209662096720968209692097020971209722097320974209752097620977209782097920980209812098220983209842098520986209872098820989209902099120992209932099420995209962099720998209992100021001210022100321004210052100621007210082100921010210112101221013210142101521016210172101821019210202102121022210232102421025210262102721028210292103021031210322103321034210352103621037210382103921040210412104221043210442104521046210472104821049210502105121052210532105421055210562105721058210592106021061210622106321064210652106621067210682106921070210712107221073210742107521076210772107821079210802108121082210832108421085210862108721088210892109021091210922109321094210952109621097210982109921100211012110221103211042110521106211072110821109211102111121112211132111421115211162111721118211192112021121211222112321124211252112621127211282112921130211312113221133211342113521136211372113821139211402114121142211432114421145211462114721148211492115021151211522115321154211552115621157211582115921160211612116221163211642116521166211672116821169211702117121172211732117421175211762117721178211792118021181211822118321184211852118621187211882118921190211912119221193211942119521196211972119821199212002120121202212032120421205212062120721208212092121021211212122121321214212152121621217212182121921220212212122221223212242122521226212272122821229212302123121232212332123421235212362123721238212392124021241212422124321244212452124621247212482124921250212512125221253212542125521256212572125821259212602126121262212632126421265212662126721268212692127021271212722127321274212752127621277212782127921280212812128221283212842128521286212872128821289212902129121292212932129421295212962129721298212992130021301213022130321304213052130621307213082130921310213112131221313213142131521316213172131821319213202132121322213232132421325213262132721328213292133021331213322133321334213352133621337213382133921340213412134221343213442134521346213472134821349213502135121352213532135421355213562135721358213592136021361213622136321364213652136621367213682136921370213712137221373213742137521376213772137821379213802138121382213832138421385213862138721388213892139021391213922139321394213952139621397213982139921400214012140221403214042140521406214072140821409214102141121412214132141421415214162141721418214192142021421214222142321424214252142621427214282142921430214312143221433214342143521436214372143821439214402144121442214432144421445214462144721448214492145021451214522145321454214552145621457214582145921460214612146221463214642146521466214672146821469214702147121472214732147421475214762147721478214792148021481214822148321484214852148621487214882148921490214912149221493214942149521496214972149821499215002150121502215032150421505215062150721508215092151021511215122151321514215152151621517215182151921520215212152221523215242152521526215272152821529215302153121532215332153421535215362153721538215392154021541215422154321544215452154621547215482154921550215512155221553215542155521556215572155821559215602156121562215632156421565215662156721568215692157021571215722157321574215752157621577215782157921580215812158221583215842158521586215872158821589215902159121592215932159421595215962159721598215992160021601216022160321604216052160621607216082160921610216112161221613216142161521616216172161821619216202162121622216232162421625216262162721628216292163021631216322163321634216352163621637216382163921640216412164221643216442164521646216472164821649216502165121652216532165421655216562165721658216592166021661216622166321664216652166621667216682166921670216712167221673216742167521676216772167821679216802168121682216832168421685216862168721688216892169021691216922169321694216952169621697216982169921700217012170221703217042170521706217072170821709217102171121712217132171421715217162171721718217192172021721217222172321724217252172621727217282172921730217312173221733217342173521736217372173821739217402174121742217432174421745217462174721748217492175021751217522175321754217552175621757217582175921760217612176221763217642176521766217672176821769217702177121772217732177421775217762177721778217792178021781217822178321784217852178621787217882178921790217912179221793217942179521796217972179821799218002180121802218032180421805218062180721808218092181021811218122181321814218152181621817218182181921820218212182221823218242182521826218272182821829218302183121832218332183421835218362183721838218392184021841218422184321844218452184621847218482184921850218512185221853218542185521856218572185821859218602186121862218632186421865218662186721868218692187021871218722187321874218752187621877218782187921880218812188221883218842188521886218872188821889218902189121892218932189421895218962189721898218992190021901219022190321904219052190621907219082190921910219112191221913219142191521916219172191821919219202192121922219232192421925219262192721928219292193021931219322193321934219352193621937219382193921940219412194221943219442194521946219472194821949219502195121952219532195421955219562195721958219592196021961219622196321964219652196621967219682196921970219712197221973219742197521976219772197821979219802198121982219832198421985219862198721988219892199021991219922199321994219952199621997219982199922000220012200222003220042200522006220072200822009220102201122012220132201422015220162201722018220192202022021220222202322024220252202622027220282202922030220312203222033220342203522036220372203822039220402204122042220432204422045220462204722048220492205022051220522205322054220552205622057220582205922060220612206222063220642206522066220672206822069220702207122072220732207422075220762207722078220792208022081220822208322084220852208622087220882208922090220912209222093220942209522096220972209822099221002210122102221032210422105221062210722108221092211022111221122211322114221152211622117221182211922120221212212222123221242212522126221272212822129221302213122132221332213422135221362213722138221392214022141221422214322144221452214622147221482214922150221512215222153221542215522156221572215822159221602216122162221632216422165221662216722168221692217022171221722217322174221752217622177221782217922180221812218222183221842218522186221872218822189221902219122192221932219422195221962219722198221992220022201222022220322204222052220622207222082220922210222112221222213222142221522216222172221822219222202222122222222232222422225222262222722228222292223022231222322223322234222352223622237222382223922240222412224222243222442224522246222472224822249222502225122252222532225422255222562225722258222592226022261222622226322264222652226622267222682226922270222712227222273222742227522276222772227822279222802228122282222832228422285222862228722288222892229022291222922229322294222952229622297222982229922300223012230222303223042230522306223072230822309223102231122312223132231422315223162231722318223192232022321223222232322324223252232622327223282232922330223312233222333223342233522336223372233822339223402234122342223432234422345223462234722348223492235022351223522235322354223552235622357223582235922360223612236222363223642236522366223672236822369223702237122372223732237422375223762237722378223792238022381223822238322384223852238622387223882238922390223912239222393223942239522396223972239822399224002240122402224032240422405224062240722408224092241022411224122241322414224152241622417224182241922420224212242222423224242242522426224272242822429224302243122432224332243422435224362243722438224392244022441224422244322444224452244622447224482244922450224512245222453224542245522456224572245822459224602246122462224632246422465224662246722468224692247022471224722247322474224752247622477224782247922480224812248222483224842248522486224872248822489224902249122492224932249422495224962249722498224992250022501225022250322504225052250622507225082250922510225112251222513225142251522516225172251822519225202252122522225232252422525225262252722528225292253022531225322253322534225352253622537225382253922540225412254222543225442254522546225472254822549225502255122552225532255422555225562255722558225592256022561225622256322564225652256622567225682256922570225712257222573225742257522576225772257822579225802258122582225832258422585225862258722588225892259022591225922259322594225952259622597225982259922600226012260222603226042260522606226072260822609226102261122612226132261422615226162261722618226192262022621226222262322624226252262622627226282262922630226312263222633226342263522636226372263822639226402264122642226432264422645226462264722648226492265022651226522265322654226552265622657226582265922660226612266222663226642266522666226672266822669226702267122672226732267422675226762267722678226792268022681226822268322684226852268622687226882268922690226912269222693226942269522696226972269822699227002270122702227032270422705227062270722708227092271022711227122271322714227152271622717227182271922720227212272222723227242272522726227272272822729227302273122732227332273422735227362273722738227392274022741227422274322744227452274622747227482274922750227512275222753227542275522756227572275822759227602276122762227632276422765227662276722768227692277022771227722277322774227752277622777227782277922780227812278222783227842278522786227872278822789227902279122792227932279422795227962279722798227992280022801228022280322804228052280622807228082280922810228112281222813228142281522816228172281822819228202282122822228232282422825228262282722828228292283022831228322283322834228352283622837228382283922840228412284222843228442284522846228472284822849228502285122852228532285422855228562285722858228592286022861228622286322864228652286622867228682286922870228712287222873228742287522876228772287822879228802288122882228832288422885228862288722888228892289022891228922289322894228952289622897228982289922900229012290222903229042290522906229072290822909229102291122912229132291422915229162291722918229192292022921229222292322924229252292622927229282292922930229312293222933229342293522936229372293822939229402294122942229432294422945229462294722948229492295022951229522295322954229552295622957229582295922960229612296222963229642296522966229672296822969229702297122972229732297422975229762297722978229792298022981229822298322984229852298622987229882298922990229912299222993229942299522996229972299822999230002300123002230032300423005230062300723008230092301023011230122301323014230152301623017230182301923020230212302223023230242302523026230272302823029230302303123032230332303423035230362303723038230392304023041230422304323044230452304623047230482304923050230512305223053230542305523056230572305823059230602306123062230632306423065230662306723068230692307023071230722307323074230752307623077230782307923080230812308223083230842308523086230872308823089230902309123092230932309423095230962309723098230992310023101231022310323104231052310623107231082310923110231112311223113231142311523116231172311823119231202312123122231232312423125231262312723128231292313023131231322313323134231352313623137231382313923140231412314223143231442314523146231472314823149231502315123152231532315423155231562315723158231592316023161231622316323164231652316623167231682316923170231712317223173231742317523176231772317823179231802318123182231832318423185231862318723188231892319023191231922319323194231952319623197231982319923200232012320223203232042320523206232072320823209232102321123212232132321423215232162321723218232192322023221232222322323224232252322623227232282322923230232312323223233232342323523236232372323823239232402324123242232432324423245232462324723248232492325023251232522325323254232552325623257232582325923260232612326223263232642326523266232672326823269232702327123272232732327423275232762327723278232792328023281232822328323284232852328623287232882328923290232912329223293232942329523296232972329823299233002330123302233032330423305233062330723308233092331023311233122331323314233152331623317233182331923320233212332223323233242332523326233272332823329233302333123332233332333423335233362333723338233392334023341233422334323344233452334623347233482334923350233512335223353233542335523356233572335823359233602336123362233632336423365233662336723368233692337023371233722337323374233752337623377233782337923380233812338223383233842338523386233872338823389233902339123392233932339423395233962339723398233992340023401234022340323404234052340623407234082340923410234112341223413234142341523416234172341823419234202342123422234232342423425234262342723428234292343023431234322343323434234352343623437234382343923440234412344223443234442344523446234472344823449234502345123452234532345423455234562345723458234592346023461234622346323464234652346623467234682346923470234712347223473234742347523476234772347823479234802348123482234832348423485234862348723488234892349023491234922349323494234952349623497234982349923500235012350223503235042350523506235072350823509235102351123512235132351423515235162351723518235192352023521235222352323524235252352623527235282352923530235312353223533235342353523536235372353823539235402354123542235432354423545235462354723548235492355023551235522355323554235552355623557235582355923560235612356223563235642356523566235672356823569235702357123572235732357423575235762357723578235792358023581235822358323584235852358623587235882358923590235912359223593235942359523596235972359823599236002360123602236032360423605236062360723608236092361023611236122361323614236152361623617236182361923620236212362223623236242362523626236272362823629236302363123632236332363423635236362363723638236392364023641236422364323644236452364623647236482364923650236512365223653236542365523656236572365823659236602366123662236632366423665236662366723668236692367023671236722367323674236752367623677236782367923680236812368223683236842368523686236872368823689236902369123692236932369423695236962369723698236992370023701237022370323704237052370623707237082370923710237112371223713237142371523716237172371823719237202372123722237232372423725237262372723728237292373023731237322373323734237352373623737237382373923740237412374223743237442374523746237472374823749237502375123752237532375423755237562375723758237592376023761237622376323764237652376623767237682376923770237712377223773237742377523776237772377823779237802378123782237832378423785237862378723788237892379023791237922379323794237952379623797237982379923800238012380223803238042380523806238072380823809238102381123812238132381423815238162381723818238192382023821238222382323824238252382623827238282382923830238312383223833238342383523836238372383823839238402384123842238432384423845238462384723848238492385023851238522385323854238552385623857238582385923860238612386223863238642386523866238672386823869238702387123872238732387423875238762387723878238792388023881238822388323884238852388623887238882388923890238912389223893238942389523896238972389823899239002390123902239032390423905239062390723908239092391023911239122391323914239152391623917239182391923920239212392223923239242392523926239272392823929239302393123932239332393423935239362393723938239392394023941239422394323944239452394623947239482394923950239512395223953239542395523956239572395823959239602396123962239632396423965239662396723968239692397023971239722397323974239752397623977239782397923980239812398223983239842398523986239872398823989239902399123992239932399423995239962399723998239992400024001240022400324004240052400624007240082400924010240112401224013240142401524016240172401824019240202402124022240232402424025240262402724028240292403024031240322403324034240352403624037240382403924040240412404224043240442404524046240472404824049240502405124052240532405424055240562405724058240592406024061240622406324064240652406624067240682406924070240712407224073240742407524076240772407824079240802408124082240832408424085240862408724088240892409024091240922409324094240952409624097240982409924100241012410224103241042410524106241072410824109241102411124112241132411424115241162411724118241192412024121241222412324124241252412624127241282412924130241312413224133241342413524136241372413824139241402414124142241432414424145241462414724148241492415024151241522415324154241552415624157241582415924160241612416224163241642416524166241672416824169241702417124172241732417424175241762417724178241792418024181241822418324184241852418624187241882418924190241912419224193241942419524196241972419824199242002420124202242032420424205242062420724208242092421024211242122421324214242152421624217242182421924220242212422224223242242422524226242272422824229242302423124232242332423424235242362423724238242392424024241242422424324244242452424624247242482424924250242512425224253242542425524256242572425824259242602426124262242632426424265242662426724268242692427024271242722427324274242752427624277242782427924280242812428224283242842428524286242872428824289242902429124292242932429424295242962429724298242992430024301243022430324304243052430624307243082430924310243112431224313243142431524316243172431824319243202432124322243232432424325243262432724328243292433024331243322433324334243352433624337243382433924340243412434224343243442434524346243472434824349243502435124352243532435424355243562435724358243592436024361243622436324364243652436624367243682436924370243712437224373243742437524376243772437824379243802438124382243832438424385243862438724388243892439024391243922439324394243952439624397243982439924400244012440224403244042440524406244072440824409244102441124412244132441424415244162441724418244192442024421244222442324424244252442624427244282442924430244312443224433244342443524436244372443824439244402444124442244432444424445244462444724448244492445024451244522445324454244552445624457244582445924460244612446224463244642446524466244672446824469244702447124472244732447424475244762447724478244792448024481244822448324484244852448624487244882448924490244912449224493244942449524496244972449824499245002450124502245032450424505245062450724508245092451024511245122451324514245152451624517245182451924520245212452224523245242452524526245272452824529245302453124532245332453424535245362453724538245392454024541245422454324544245452454624547245482454924550245512455224553245542455524556245572455824559245602456124562245632456424565245662456724568245692457024571245722457324574245752457624577245782457924580245812458224583245842458524586245872458824589245902459124592245932459424595245962459724598245992460024601246022460324604246052460624607246082460924610246112461224613246142461524616246172461824619246202462124622246232462424625246262462724628246292463024631246322463324634246352463624637246382463924640246412464224643246442464524646246472464824649246502465124652246532465424655246562465724658246592466024661246622466324664246652466624667246682466924670246712467224673246742467524676246772467824679246802468124682246832468424685246862468724688246892469024691246922469324694246952469624697246982469924700247012470224703247042470524706247072470824709247102471124712247132471424715247162471724718247192472024721247222472324724247252472624727247282472924730247312473224733247342473524736247372473824739247402474124742247432474424745247462474724748247492475024751247522475324754247552475624757247582475924760247612476224763247642476524766247672476824769247702477124772247732477424775247762477724778247792478024781247822478324784247852478624787247882478924790247912479224793247942479524796247972479824799248002480124802248032480424805248062480724808248092481024811248122481324814248152481624817248182481924820248212482224823248242482524826248272482824829248302483124832248332483424835248362483724838248392484024841248422484324844248452484624847248482484924850248512485224853248542485524856248572485824859248602486124862248632486424865248662486724868248692487024871248722487324874248752487624877248782487924880248812488224883248842488524886248872488824889248902489124892248932489424895248962489724898248992490024901249022490324904249052490624907249082490924910249112491224913249142491524916249172491824919249202492124922249232492424925249262492724928249292493024931249322493324934249352493624937249382493924940249412494224943249442494524946249472494824949249502495124952249532495424955249562495724958249592496024961249622496324964249652496624967249682496924970249712497224973249742497524976249772497824979249802498124982249832498424985249862498724988249892499024991249922499324994249952499624997249982499925000250012500225003250042500525006250072500825009250102501125012250132501425015250162501725018250192502025021250222502325024250252502625027250282502925030250312503225033250342503525036250372503825039250402504125042250432504425045250462504725048250492505025051250522505325054250552505625057250582505925060250612506225063250642506525066250672506825069250702507125072250732507425075250762507725078250792508025081250822508325084250852508625087250882508925090250912509225093250942509525096250972509825099251002510125102251032510425105251062510725108251092511025111251122511325114251152511625117251182511925120251212512225123251242512525126251272512825129251302513125132251332513425135251362513725138251392514025141251422514325144251452514625147251482514925150251512515225153251542515525156251572515825159251602516125162251632516425165251662516725168251692517025171251722517325174251752517625177251782517925180251812518225183251842518525186251872518825189251902519125192251932519425195251962519725198251992520025201252022520325204252052520625207252082520925210252112521225213252142521525216252172521825219252202522125222252232522425225252262522725228252292523025231252322523325234252352523625237252382523925240252412524225243252442524525246252472524825249252502525125252252532525425255252562525725258252592526025261252622526325264252652526625267252682526925270252712527225273252742527525276252772527825279252802528125282252832528425285252862528725288252892529025291252922529325294252952529625297252982529925300253012530225303253042530525306253072530825309253102531125312253132531425315253162531725318253192532025321253222532325324253252532625327253282532925330253312533225333253342533525336253372533825339253402534125342253432534425345253462534725348253492535025351253522535325354253552535625357253582535925360253612536225363253642536525366253672536825369253702537125372253732537425375253762537725378253792538025381253822538325384253852538625387253882538925390253912539225393253942539525396253972539825399254002540125402254032540425405254062540725408254092541025411254122541325414254152541625417254182541925420254212542225423254242542525426254272542825429254302543125432254332543425435254362543725438254392544025441254422544325444254452544625447254482544925450254512545225453254542545525456254572545825459254602546125462254632546425465254662546725468254692547025471254722547325474254752547625477254782547925480254812548225483254842548525486254872548825489254902549125492254932549425495254962549725498254992550025501255022550325504255052550625507255082550925510255112551225513255142551525516255172551825519255202552125522255232552425525255262552725528255292553025531255322553325534255352553625537255382553925540255412554225543255442554525546255472554825549255502555125552255532555425555255562555725558255592556025561255622556325564255652556625567255682556925570255712557225573255742557525576255772557825579255802558125582255832558425585255862558725588255892559025591255922559325594255952559625597255982559925600256012560225603256042560525606256072560825609256102561125612256132561425615256162561725618256192562025621256222562325624256252562625627256282562925630256312563225633256342563525636256372563825639256402564125642256432564425645256462564725648256492565025651256522565325654256552565625657256582565925660256612566225663256642566525666256672566825669256702567125672256732567425675256762567725678256792568025681256822568325684256852568625687256882568925690256912569225693256942569525696256972569825699257002570125702257032570425705257062570725708257092571025711257122571325714257152571625717257182571925720257212572225723257242572525726257272572825729257302573125732257332573425735257362573725738257392574025741257422574325744257452574625747257482574925750257512575225753257542575525756257572575825759257602576125762257632576425765257662576725768257692577025771257722577325774257752577625777257782577925780257812578225783257842578525786257872578825789257902579125792257932579425795257962579725798257992580025801258022580325804258052580625807258082580925810258112581225813258142581525816258172581825819258202582125822258232582425825258262582725828258292583025831258322583325834258352583625837258382583925840258412584225843258442584525846258472584825849258502585125852258532585425855258562585725858258592586025861258622586325864258652586625867258682586925870258712587225873258742587525876258772587825879258802588125882258832588425885258862588725888258892589025891258922589325894258952589625897258982589925900259012590225903259042590525906259072590825909259102591125912259132591425915259162591725918259192592025921259222592325924259252592625927259282592925930259312593225933259342593525936259372593825939259402594125942259432594425945259462594725948259492595025951259522595325954259552595625957259582595925960259612596225963259642596525966259672596825969259702597125972259732597425975259762597725978259792598025981259822598325984259852598625987259882598925990259912599225993259942599525996259972599825999260002600126002260032600426005260062600726008260092601026011
  1. /* This file is automatically generated by aarch64-gen. Do not edit! */
  2. /* Copyright (C) 2012-2022 Free Software Foundation, Inc.
  3. Contributed by ARM Ltd.
  4. This file is part of the GNU opcodes library.
  5. This library is free software; you can redistribute it and/or modify
  6. it under the terms of the GNU General Public License as published by
  7. the Free Software Foundation; either version 3, or (at your option)
  8. any later version.
  9. It is distributed in the hope that it will be useful, but WITHOUT
  10. ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
  11. or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
  12. License for more details.
  13. You should have received a copy of the GNU General Public License
  14. along with this program; see the file COPYING3. If not,
  15. see <http://www.gnu.org/licenses/>. */
  16. #include "sysdep.h"
  17. #include "aarch64-dis.h"
  18. /* Called by aarch64_opcode_lookup. */
  19. static int
  20. aarch64_opcode_lookup_1 (uint32_t word)
  21. {
  22. if (((word >> 26) & 0x1) == 0)
  23. {
  24. if (((word >> 25) & 0x1) == 0)
  25. {
  26. if (((word >> 27) & 0x1) == 0)
  27. {
  28. if (((word >> 24) & 0x1) == 0)
  29. {
  30. if (((word >> 28) & 0x1) == 0)
  31. {
  32. if (((word >> 21) & 0x1) == 0)
  33. {
  34. if (((word >> 29) & 0x1) == 0)
  35. {
  36. if (((word >> 30) & 0x1) == 0)
  37. {
  38. if (((word >> 22) & 0x1) == 0)
  39. {
  40. if (((word >> 23) & 0x1) == 0)
  41. {
  42. /* 33222222222211111111110000000000
  43. 10987654321098765432109876543210
  44. x0000000000xxxxxxxxxxxxxxxxxxxxx
  45. udf. */
  46. return 754;
  47. }
  48. else
  49. {
  50. if (((word >> 4) & 0x1) == 0)
  51. {
  52. /* 33222222222211111111110000000000
  53. 10987654321098765432109876543210
  54. x0000000100xxxxxxxxxxxxxxxx0xxxx
  55. fmopa. */
  56. return 2360;
  57. }
  58. else
  59. {
  60. /* 33222222222211111111110000000000
  61. 10987654321098765432109876543210
  62. x0000000100xxxxxxxxxxxxxxxx1xxxx
  63. fmops. */
  64. return 2363;
  65. }
  66. }
  67. }
  68. else
  69. {
  70. if (((word >> 4) & 0x1) == 0)
  71. {
  72. /* 33222222222211111111110000000000
  73. 10987654321098765432109876543210
  74. x0000000x10xxxxxxxxxxxxxxxx0xxxx
  75. fmopa. */
  76. return 2361;
  77. }
  78. else
  79. {
  80. /* 33222222222211111111110000000000
  81. 10987654321098765432109876543210
  82. x0000000x10xxxxxxxxxxxxxxxx1xxxx
  83. fmops. */
  84. return 2364;
  85. }
  86. }
  87. }
  88. else
  89. {
  90. if (((word >> 17) & 0x1) == 0)
  91. {
  92. if (((word >> 19) & 0x1) == 0)
  93. {
  94. if (((word >> 20) & 0x1) == 0)
  95. {
  96. /* 33222222222211111111110000000000
  97. 10987654321098765432109876543210
  98. x1000000xx000x0xxxxxxxxxxxxxxxxx
  99. mov. */
  100. return 2384;
  101. }
  102. else
  103. {
  104. if (((word >> 16) & 0x1) == 0)
  105. {
  106. if (((word >> 22) & 0x1) == 0)
  107. {
  108. /* 33222222222211111111110000000000
  109. 10987654321098765432109876543210
  110. x1000000x0010x00xxxxxxxxxxxxxxxx
  111. addha. */
  112. return 2352;
  113. }
  114. else
  115. {
  116. /* 33222222222211111111110000000000
  117. 10987654321098765432109876543210
  118. x1000000x1010x00xxxxxxxxxxxxxxxx
  119. addha. */
  120. return 2353;
  121. }
  122. }
  123. else
  124. {
  125. if (((word >> 22) & 0x1) == 0)
  126. {
  127. /* 33222222222211111111110000000000
  128. 10987654321098765432109876543210
  129. x1000000x0010x01xxxxxxxxxxxxxxxx
  130. addva. */
  131. return 2356;
  132. }
  133. else
  134. {
  135. /* 33222222222211111111110000000000
  136. 10987654321098765432109876543210
  137. x1000000x1010x01xxxxxxxxxxxxxxxx
  138. addva. */
  139. return 2357;
  140. }
  141. }
  142. }
  143. }
  144. else
  145. {
  146. /* 33222222222211111111110000000000
  147. 10987654321098765432109876543210
  148. x1000000xx0x1x0xxxxxxxxxxxxxxxxx
  149. zero. */
  150. return 2387;
  151. }
  152. }
  153. else
  154. {
  155. /* 33222222222211111111110000000000
  156. 10987654321098765432109876543210
  157. x1000000xx0xxx1xxxxxxxxxxxxxxxxx
  158. mov. */
  159. return 2383;
  160. }
  161. }
  162. }
  163. else
  164. {
  165. if (((word >> 4) & 0x1) == 0)
  166. {
  167. if (((word >> 22) & 0x1) == 0)
  168. {
  169. if (((word >> 23) & 0x1) == 0)
  170. {
  171. /* 33222222222211111111110000000000
  172. 10987654321098765432109876543210
  173. xx100000000xxxxxxxxxxxxxxxx0xxxx
  174. ld1b. */
  175. return 2388;
  176. }
  177. else
  178. {
  179. if (((word >> 30) & 0x1) == 0)
  180. {
  181. /* 33222222222211111111110000000000
  182. 10987654321098765432109876543210
  183. x0100000100xxxxxxxxxxxxxxxx0xxxx
  184. smopa. */
  185. return 2367;
  186. }
  187. else
  188. {
  189. /* 33222222222211111111110000000000
  190. 10987654321098765432109876543210
  191. x1100000100xxxxxxxxxxxxxxxx0xxxx
  192. ld1w. */
  193. return 2390;
  194. }
  195. }
  196. }
  197. else
  198. {
  199. if (((word >> 23) & 0x1) == 0)
  200. {
  201. /* 33222222222211111111110000000000
  202. 10987654321098765432109876543210
  203. xx100000010xxxxxxxxxxxxxxxx0xxxx
  204. ld1h. */
  205. return 2389;
  206. }
  207. else
  208. {
  209. if (((word >> 30) & 0x1) == 0)
  210. {
  211. /* 33222222222211111111110000000000
  212. 10987654321098765432109876543210
  213. x0100000110xxxxxxxxxxxxxxxx0xxxx
  214. smopa. */
  215. return 2368;
  216. }
  217. else
  218. {
  219. /* 33222222222211111111110000000000
  220. 10987654321098765432109876543210
  221. x1100000110xxxxxxxxxxxxxxxx0xxxx
  222. ld1d. */
  223. return 2391;
  224. }
  225. }
  226. }
  227. }
  228. else
  229. {
  230. if (((word >> 22) & 0x1) == 0)
  231. {
  232. /* 33222222222211111111110000000000
  233. 10987654321098765432109876543210
  234. xx100000x00xxxxxxxxxxxxxxxx1xxxx
  235. smops. */
  236. return 2369;
  237. }
  238. else
  239. {
  240. /* 33222222222211111111110000000000
  241. 10987654321098765432109876543210
  242. xx100000x10xxxxxxxxxxxxxxxx1xxxx
  243. smops. */
  244. return 2370;
  245. }
  246. }
  247. }
  248. }
  249. else
  250. {
  251. if (((word >> 4) & 0x1) == 0)
  252. {
  253. if (((word >> 22) & 0x1) == 0)
  254. {
  255. if (((word >> 23) & 0x1) == 0)
  256. {
  257. /* 33222222222211111111110000000000
  258. 10987654321098765432109876543210
  259. xxx00000001xxxxxxxxxxxxxxxx0xxxx
  260. st1b. */
  261. return 2398;
  262. }
  263. else
  264. {
  265. if (((word >> 30) & 0x1) == 0)
  266. {
  267. /* 33222222222211111111110000000000
  268. 10987654321098765432109876543210
  269. x0x00000101xxxxxxxxxxxxxxxx0xxxx
  270. sumopa. */
  271. return 2371;
  272. }
  273. else
  274. {
  275. /* 33222222222211111111110000000000
  276. 10987654321098765432109876543210
  277. x1x00000101xxxxxxxxxxxxxxxx0xxxx
  278. st1w. */
  279. return 2400;
  280. }
  281. }
  282. }
  283. else
  284. {
  285. if (((word >> 23) & 0x1) == 0)
  286. {
  287. /* 33222222222211111111110000000000
  288. 10987654321098765432109876543210
  289. xxx00000011xxxxxxxxxxxxxxxx0xxxx
  290. st1h. */
  291. return 2399;
  292. }
  293. else
  294. {
  295. if (((word >> 30) & 0x1) == 0)
  296. {
  297. /* 33222222222211111111110000000000
  298. 10987654321098765432109876543210
  299. x0x00000111xxxxxxxxxxxxxxxx0xxxx
  300. sumopa. */
  301. return 2372;
  302. }
  303. else
  304. {
  305. /* 33222222222211111111110000000000
  306. 10987654321098765432109876543210
  307. x1x00000111xxxxxxxxxxxxxxxx0xxxx
  308. st1d. */
  309. return 2401;
  310. }
  311. }
  312. }
  313. }
  314. else
  315. {
  316. if (((word >> 22) & 0x1) == 0)
  317. {
  318. /* 33222222222211111111110000000000
  319. 10987654321098765432109876543210
  320. xxx00000x01xxxxxxxxxxxxxxxx1xxxx
  321. sumops. */
  322. return 2373;
  323. }
  324. else
  325. {
  326. /* 33222222222211111111110000000000
  327. 10987654321098765432109876543210
  328. xxx00000x11xxxxxxxxxxxxxxxx1xxxx
  329. sumops. */
  330. return 2374;
  331. }
  332. }
  333. }
  334. }
  335. else
  336. {
  337. if (((word >> 31) & 0x1) == 0)
  338. {
  339. /* 33222222222211111111110000000000
  340. 10987654321098765432109876543210
  341. 0xx10000xxxxxxxxxxxxxxxxxxxxxxxx
  342. adr. */
  343. return 1191;
  344. }
  345. else
  346. {
  347. /* 33222222222211111111110000000000
  348. 10987654321098765432109876543210
  349. 1xx10000xxxxxxxxxxxxxxxxxxxxxxxx
  350. adrp. */
  351. return 1192;
  352. }
  353. }
  354. }
  355. else
  356. {
  357. if (((word >> 28) & 0x1) == 0)
  358. {
  359. if (((word >> 4) & 0x1) == 0)
  360. {
  361. if (((word >> 21) & 0x1) == 0)
  362. {
  363. if (((word >> 22) & 0x1) == 0)
  364. {
  365. if (((word >> 23) & 0x1) == 0)
  366. {
  367. /* 33222222222211111111110000000000
  368. 10987654321098765432109876543210
  369. xxx00001000xxxxxxxxxxxxxxxx0xxxx
  370. ldr. */
  371. return 2408;
  372. }
  373. else
  374. {
  375. if (((word >> 29) & 0x1) == 0)
  376. {
  377. /* 33222222222211111111110000000000
  378. 10987654321098765432109876543210
  379. xx000001100xxxxxxxxxxxxxxxx0xxxx
  380. bfmopa. */
  381. return 2358;
  382. }
  383. else
  384. {
  385. /* 33222222222211111111110000000000
  386. 10987654321098765432109876543210
  387. xx100001100xxxxxxxxxxxxxxxx0xxxx
  388. usmopa. */
  389. return 2379;
  390. }
  391. }
  392. }
  393. else
  394. {
  395. if (((word >> 30) & 0x1) == 0)
  396. {
  397. /* 33222222222211111111110000000000
  398. 10987654321098765432109876543210
  399. x0x00001x10xxxxxxxxxxxxxxxx0xxxx
  400. usmopa. */
  401. return 2380;
  402. }
  403. else
  404. {
  405. /* 33222222222211111111110000000000
  406. 10987654321098765432109876543210
  407. x1x00001x10xxxxxxxxxxxxxxxx0xxxx
  408. ld1q. */
  409. return 2392;
  410. }
  411. }
  412. }
  413. else
  414. {
  415. if (((word >> 22) & 0x1) == 0)
  416. {
  417. if (((word >> 23) & 0x1) == 0)
  418. {
  419. /* 33222222222211111111110000000000
  420. 10987654321098765432109876543210
  421. xxx00001001xxxxxxxxxxxxxxxx0xxxx
  422. str. */
  423. return 2409;
  424. }
  425. else
  426. {
  427. if (((word >> 29) & 0x1) == 0)
  428. {
  429. /* 33222222222211111111110000000000
  430. 10987654321098765432109876543210
  431. xx000001101xxxxxxxxxxxxxxxx0xxxx
  432. fmopa. */
  433. return 2362;
  434. }
  435. else
  436. {
  437. /* 33222222222211111111110000000000
  438. 10987654321098765432109876543210
  439. xx100001101xxxxxxxxxxxxxxxx0xxxx
  440. umopa. */
  441. return 2375;
  442. }
  443. }
  444. }
  445. else
  446. {
  447. if (((word >> 30) & 0x1) == 0)
  448. {
  449. /* 33222222222211111111110000000000
  450. 10987654321098765432109876543210
  451. x0x00001x11xxxxxxxxxxxxxxxx0xxxx
  452. umopa. */
  453. return 2376;
  454. }
  455. else
  456. {
  457. /* 33222222222211111111110000000000
  458. 10987654321098765432109876543210
  459. x1x00001x11xxxxxxxxxxxxxxxx0xxxx
  460. st1q. */
  461. return 2402;
  462. }
  463. }
  464. }
  465. }
  466. else
  467. {
  468. if (((word >> 21) & 0x1) == 0)
  469. {
  470. if (((word >> 22) & 0x1) == 0)
  471. {
  472. if (((word >> 29) & 0x1) == 0)
  473. {
  474. /* 33222222222211111111110000000000
  475. 10987654321098765432109876543210
  476. xx000001x00xxxxxxxxxxxxxxxx1xxxx
  477. bfmops. */
  478. return 2359;
  479. }
  480. else
  481. {
  482. /* 33222222222211111111110000000000
  483. 10987654321098765432109876543210
  484. xx100001x00xxxxxxxxxxxxxxxx1xxxx
  485. usmops. */
  486. return 2381;
  487. }
  488. }
  489. else
  490. {
  491. /* 33222222222211111111110000000000
  492. 10987654321098765432109876543210
  493. xxx00001x10xxxxxxxxxxxxxxxx1xxxx
  494. usmops. */
  495. return 2382;
  496. }
  497. }
  498. else
  499. {
  500. if (((word >> 22) & 0x1) == 0)
  501. {
  502. if (((word >> 29) & 0x1) == 0)
  503. {
  504. /* 33222222222211111111110000000000
  505. 10987654321098765432109876543210
  506. xx000001x01xxxxxxxxxxxxxxxx1xxxx
  507. fmops. */
  508. return 2365;
  509. }
  510. else
  511. {
  512. /* 33222222222211111111110000000000
  513. 10987654321098765432109876543210
  514. xx100001x01xxxxxxxxxxxxxxxx1xxxx
  515. umops. */
  516. return 2377;
  517. }
  518. }
  519. else
  520. {
  521. /* 33222222222211111111110000000000
  522. 10987654321098765432109876543210
  523. xxx00001x11xxxxxxxxxxxxxxxx1xxxx
  524. umops. */
  525. return 2378;
  526. }
  527. }
  528. }
  529. }
  530. else
  531. {
  532. if (((word >> 29) & 0x1) == 0)
  533. {
  534. if (((word >> 30) & 0x1) == 0)
  535. {
  536. /* 33222222222211111111110000000000
  537. 10987654321098765432109876543210
  538. x0010001xxxxxxxxxxxxxxxxxxxxxxxx
  539. add. */
  540. return 12;
  541. }
  542. else
  543. {
  544. /* 33222222222211111111110000000000
  545. 10987654321098765432109876543210
  546. x1010001xxxxxxxxxxxxxxxxxxxxxxxx
  547. sub. */
  548. return 16;
  549. }
  550. }
  551. else
  552. {
  553. if (((word >> 30) & 0x1) == 0)
  554. {
  555. /* 33222222222211111111110000000000
  556. 10987654321098765432109876543210
  557. x0110001xxxxxxxxxxxxxxxxxxxxxxxx
  558. adds. */
  559. return 14;
  560. }
  561. else
  562. {
  563. /* 33222222222211111111110000000000
  564. 10987654321098765432109876543210
  565. x1110001xxxxxxxxxxxxxxxxxxxxxxxx
  566. subs. */
  567. return 17;
  568. }
  569. }
  570. }
  571. }
  572. }
  573. else
  574. {
  575. if (((word >> 28) & 0x1) == 0)
  576. {
  577. if (((word >> 22) & 0x1) == 0)
  578. {
  579. if (((word >> 23) & 0x1) == 0)
  580. {
  581. if (((word >> 29) & 0x1) == 0)
  582. {
  583. if (((word >> 15) & 0x1) == 0)
  584. {
  585. if (((word >> 21) & 0x1) == 0)
  586. {
  587. if (((word >> 31) & 0x1) == 0)
  588. {
  589. if (((word >> 30) & 0x1) == 0)
  590. {
  591. /* 33222222222211111111110000000000
  592. 10987654321098765432109876543210
  593. 0000100x000xxxxx0xxxxxxxxxxxxxxx
  594. stxrb. */
  595. return 937;
  596. }
  597. else
  598. {
  599. /* 33222222222211111111110000000000
  600. 10987654321098765432109876543210
  601. 0100100x000xxxxx0xxxxxxxxxxxxxxx
  602. stxrh. */
  603. return 943;
  604. }
  605. }
  606. else
  607. {
  608. /* 33222222222211111111110000000000
  609. 10987654321098765432109876543210
  610. 1x00100x000xxxxx0xxxxxxxxxxxxxxx
  611. stxr. */
  612. return 949;
  613. }
  614. }
  615. else
  616. {
  617. if (((word >> 31) & 0x1) == 0)
  618. {
  619. /* 33222222222211111111110000000000
  620. 10987654321098765432109876543210
  621. 0x00100x001xxxxx0xxxxxxxxxxxxxxx
  622. casp. */
  623. return 1026;
  624. }
  625. else
  626. {
  627. /* 33222222222211111111110000000000
  628. 10987654321098765432109876543210
  629. 1x00100x001xxxxx0xxxxxxxxxxxxxxx
  630. stxp. */
  631. return 951;
  632. }
  633. }
  634. }
  635. else
  636. {
  637. if (((word >> 21) & 0x1) == 0)
  638. {
  639. if (((word >> 31) & 0x1) == 0)
  640. {
  641. if (((word >> 30) & 0x1) == 0)
  642. {
  643. /* 33222222222211111111110000000000
  644. 10987654321098765432109876543210
  645. 0000100x000xxxxx1xxxxxxxxxxxxxxx
  646. stlxrb. */
  647. return 938;
  648. }
  649. else
  650. {
  651. /* 33222222222211111111110000000000
  652. 10987654321098765432109876543210
  653. 0100100x000xxxxx1xxxxxxxxxxxxxxx
  654. stlxrh. */
  655. return 944;
  656. }
  657. }
  658. else
  659. {
  660. /* 33222222222211111111110000000000
  661. 10987654321098765432109876543210
  662. 1x00100x000xxxxx1xxxxxxxxxxxxxxx
  663. stlxr. */
  664. return 950;
  665. }
  666. }
  667. else
  668. {
  669. if (((word >> 31) & 0x1) == 0)
  670. {
  671. /* 33222222222211111111110000000000
  672. 10987654321098765432109876543210
  673. 0x00100x001xxxxx1xxxxxxxxxxxxxxx
  674. caspl. */
  675. return 1028;
  676. }
  677. else
  678. {
  679. /* 33222222222211111111110000000000
  680. 10987654321098765432109876543210
  681. 1x00100x001xxxxx1xxxxxxxxxxxxxxx
  682. stlxp. */
  683. return 952;
  684. }
  685. }
  686. }
  687. }
  688. else
  689. {
  690. if (((word >> 30) & 0x1) == 0)
  691. {
  692. /* 33222222222211111111110000000000
  693. 10987654321098765432109876543210
  694. x010100x00xxxxxxxxxxxxxxxxxxxxxx
  695. stnp. */
  696. return 971;
  697. }
  698. else
  699. {
  700. /* 33222222222211111111110000000000
  701. 10987654321098765432109876543210
  702. x110100x00xxxxxxxxxxxxxxxxxxxxxx
  703. stgp. */
  704. return 980;
  705. }
  706. }
  707. }
  708. else
  709. {
  710. if (((word >> 29) & 0x1) == 0)
  711. {
  712. if (((word >> 15) & 0x1) == 0)
  713. {
  714. if (((word >> 21) & 0x1) == 0)
  715. {
  716. if (((word >> 31) & 0x1) == 0)
  717. {
  718. /* 33222222222211111111110000000000
  719. 10987654321098765432109876543210
  720. 0x00100x100xxxxx0xxxxxxxxxxxxxxx
  721. stllrb. */
  722. return 969;
  723. }
  724. else
  725. {
  726. /* 33222222222211111111110000000000
  727. 10987654321098765432109876543210
  728. 1x00100x100xxxxx0xxxxxxxxxxxxxxx
  729. stllr. */
  730. return 968;
  731. }
  732. }
  733. else
  734. {
  735. if (((word >> 31) & 0x1) == 0)
  736. {
  737. if (((word >> 30) & 0x1) == 0)
  738. {
  739. /* 33222222222211111111110000000000
  740. 10987654321098765432109876543210
  741. 0000100x101xxxxx0xxxxxxxxxxxxxxx
  742. casb. */
  743. return 1014;
  744. }
  745. else
  746. {
  747. /* 33222222222211111111110000000000
  748. 10987654321098765432109876543210
  749. 0100100x101xxxxx0xxxxxxxxxxxxxxx
  750. cash. */
  751. return 1015;
  752. }
  753. }
  754. else
  755. {
  756. /* 33222222222211111111110000000000
  757. 10987654321098765432109876543210
  758. 1x00100x101xxxxx0xxxxxxxxxxxxxxx
  759. cas. */
  760. return 1016;
  761. }
  762. }
  763. }
  764. else
  765. {
  766. if (((word >> 21) & 0x1) == 0)
  767. {
  768. if (((word >> 31) & 0x1) == 0)
  769. {
  770. if (((word >> 30) & 0x1) == 0)
  771. {
  772. /* 33222222222211111111110000000000
  773. 10987654321098765432109876543210
  774. 0000100x100xxxxx1xxxxxxxxxxxxxxx
  775. stlrb. */
  776. return 941;
  777. }
  778. else
  779. {
  780. /* 33222222222211111111110000000000
  781. 10987654321098765432109876543210
  782. 0100100x100xxxxx1xxxxxxxxxxxxxxx
  783. stlrh. */
  784. return 947;
  785. }
  786. }
  787. else
  788. {
  789. /* 33222222222211111111110000000000
  790. 10987654321098765432109876543210
  791. 1x00100x100xxxxx1xxxxxxxxxxxxxxx
  792. stlr. */
  793. return 957;
  794. }
  795. }
  796. else
  797. {
  798. if (((word >> 31) & 0x1) == 0)
  799. {
  800. if (((word >> 30) & 0x1) == 0)
  801. {
  802. /* 33222222222211111111110000000000
  803. 10987654321098765432109876543210
  804. 0000100x101xxxxx1xxxxxxxxxxxxxxx
  805. caslb. */
  806. return 1018;
  807. }
  808. else
  809. {
  810. /* 33222222222211111111110000000000
  811. 10987654321098765432109876543210
  812. 0100100x101xxxxx1xxxxxxxxxxxxxxx
  813. caslh. */
  814. return 1021;
  815. }
  816. }
  817. else
  818. {
  819. /* 33222222222211111111110000000000
  820. 10987654321098765432109876543210
  821. 1x00100x101xxxxx1xxxxxxxxxxxxxxx
  822. casl. */
  823. return 1024;
  824. }
  825. }
  826. }
  827. }
  828. else
  829. {
  830. if (((word >> 30) & 0x1) == 0)
  831. {
  832. /* 33222222222211111111110000000000
  833. 10987654321098765432109876543210
  834. x010100x10xxxxxxxxxxxxxxxxxxxxxx
  835. stp. */
  836. return 981;
  837. }
  838. else
  839. {
  840. /* 33222222222211111111110000000000
  841. 10987654321098765432109876543210
  842. x110100x10xxxxxxxxxxxxxxxxxxxxxx
  843. stgp. */
  844. return 986;
  845. }
  846. }
  847. }
  848. }
  849. else
  850. {
  851. if (((word >> 23) & 0x1) == 0)
  852. {
  853. if (((word >> 29) & 0x1) == 0)
  854. {
  855. if (((word >> 15) & 0x1) == 0)
  856. {
  857. if (((word >> 21) & 0x1) == 0)
  858. {
  859. if (((word >> 31) & 0x1) == 0)
  860. {
  861. if (((word >> 30) & 0x1) == 0)
  862. {
  863. /* 33222222222211111111110000000000
  864. 10987654321098765432109876543210
  865. 0000100x010xxxxx0xxxxxxxxxxxxxxx
  866. ldxrb. */
  867. return 939;
  868. }
  869. else
  870. {
  871. /* 33222222222211111111110000000000
  872. 10987654321098765432109876543210
  873. 0100100x010xxxxx0xxxxxxxxxxxxxxx
  874. ldxrh. */
  875. return 945;
  876. }
  877. }
  878. else
  879. {
  880. /* 33222222222211111111110000000000
  881. 10987654321098765432109876543210
  882. 1x00100x010xxxxx0xxxxxxxxxxxxxxx
  883. ldxr. */
  884. return 953;
  885. }
  886. }
  887. else
  888. {
  889. if (((word >> 31) & 0x1) == 0)
  890. {
  891. /* 33222222222211111111110000000000
  892. 10987654321098765432109876543210
  893. 0x00100x011xxxxx0xxxxxxxxxxxxxxx
  894. caspa. */
  895. return 1027;
  896. }
  897. else
  898. {
  899. /* 33222222222211111111110000000000
  900. 10987654321098765432109876543210
  901. 1x00100x011xxxxx0xxxxxxxxxxxxxxx
  902. ldxp. */
  903. return 955;
  904. }
  905. }
  906. }
  907. else
  908. {
  909. if (((word >> 21) & 0x1) == 0)
  910. {
  911. if (((word >> 31) & 0x1) == 0)
  912. {
  913. if (((word >> 30) & 0x1) == 0)
  914. {
  915. /* 33222222222211111111110000000000
  916. 10987654321098765432109876543210
  917. 0000100x010xxxxx1xxxxxxxxxxxxxxx
  918. ldaxrb. */
  919. return 940;
  920. }
  921. else
  922. {
  923. /* 33222222222211111111110000000000
  924. 10987654321098765432109876543210
  925. 0100100x010xxxxx1xxxxxxxxxxxxxxx
  926. ldaxrh. */
  927. return 946;
  928. }
  929. }
  930. else
  931. {
  932. /* 33222222222211111111110000000000
  933. 10987654321098765432109876543210
  934. 1x00100x010xxxxx1xxxxxxxxxxxxxxx
  935. ldaxr. */
  936. return 954;
  937. }
  938. }
  939. else
  940. {
  941. if (((word >> 31) & 0x1) == 0)
  942. {
  943. /* 33222222222211111111110000000000
  944. 10987654321098765432109876543210
  945. 0x00100x011xxxxx1xxxxxxxxxxxxxxx
  946. caspal. */
  947. return 1029;
  948. }
  949. else
  950. {
  951. /* 33222222222211111111110000000000
  952. 10987654321098765432109876543210
  953. 1x00100x011xxxxx1xxxxxxxxxxxxxxx
  954. ldaxp. */
  955. return 956;
  956. }
  957. }
  958. }
  959. }
  960. else
  961. {
  962. if (((word >> 30) & 0x1) == 0)
  963. {
  964. /* 33222222222211111111110000000000
  965. 10987654321098765432109876543210
  966. x010100x01xxxxxxxxxxxxxxxxxxxxxx
  967. ldnp. */
  968. return 972;
  969. }
  970. else
  971. {
  972. /* 33222222222211111111110000000000
  973. 10987654321098765432109876543210
  974. x110100x01xxxxxxxxxxxxxxxxxxxxxx
  975. ldpsw. */
  976. return 979;
  977. }
  978. }
  979. }
  980. else
  981. {
  982. if (((word >> 29) & 0x1) == 0)
  983. {
  984. if (((word >> 15) & 0x1) == 0)
  985. {
  986. if (((word >> 21) & 0x1) == 0)
  987. {
  988. if (((word >> 31) & 0x1) == 0)
  989. {
  990. if (((word >> 30) & 0x1) == 0)
  991. {
  992. /* 33222222222211111111110000000000
  993. 10987654321098765432109876543210
  994. 0000100x110xxxxx0xxxxxxxxxxxxxxx
  995. ldlarb. */
  996. return 966;
  997. }
  998. else
  999. {
  1000. /* 33222222222211111111110000000000
  1001. 10987654321098765432109876543210
  1002. 0100100x110xxxxx0xxxxxxxxxxxxxxx
  1003. ldlarh. */
  1004. return 967;
  1005. }
  1006. }
  1007. else
  1008. {
  1009. /* 33222222222211111111110000000000
  1010. 10987654321098765432109876543210
  1011. 1x00100x110xxxxx0xxxxxxxxxxxxxxx
  1012. ldlar. */
  1013. return 965;
  1014. }
  1015. }
  1016. else
  1017. {
  1018. if (((word >> 31) & 0x1) == 0)
  1019. {
  1020. if (((word >> 30) & 0x1) == 0)
  1021. {
  1022. /* 33222222222211111111110000000000
  1023. 10987654321098765432109876543210
  1024. 0000100x111xxxxx0xxxxxxxxxxxxxxx
  1025. casab. */
  1026. return 1017;
  1027. }
  1028. else
  1029. {
  1030. /* 33222222222211111111110000000000
  1031. 10987654321098765432109876543210
  1032. 0100100x111xxxxx0xxxxxxxxxxxxxxx
  1033. casah. */
  1034. return 1020;
  1035. }
  1036. }
  1037. else
  1038. {
  1039. /* 33222222222211111111110000000000
  1040. 10987654321098765432109876543210
  1041. 1x00100x111xxxxx0xxxxxxxxxxxxxxx
  1042. casa. */
  1043. return 1023;
  1044. }
  1045. }
  1046. }
  1047. else
  1048. {
  1049. if (((word >> 21) & 0x1) == 0)
  1050. {
  1051. if (((word >> 31) & 0x1) == 0)
  1052. {
  1053. if (((word >> 30) & 0x1) == 0)
  1054. {
  1055. /* 33222222222211111111110000000000
  1056. 10987654321098765432109876543210
  1057. 0000100x110xxxxx1xxxxxxxxxxxxxxx
  1058. ldarb. */
  1059. return 942;
  1060. }
  1061. else
  1062. {
  1063. /* 33222222222211111111110000000000
  1064. 10987654321098765432109876543210
  1065. 0100100x110xxxxx1xxxxxxxxxxxxxxx
  1066. ldarh. */
  1067. return 948;
  1068. }
  1069. }
  1070. else
  1071. {
  1072. /* 33222222222211111111110000000000
  1073. 10987654321098765432109876543210
  1074. 1x00100x110xxxxx1xxxxxxxxxxxxxxx
  1075. ldar. */
  1076. return 958;
  1077. }
  1078. }
  1079. else
  1080. {
  1081. if (((word >> 31) & 0x1) == 0)
  1082. {
  1083. if (((word >> 30) & 0x1) == 0)
  1084. {
  1085. /* 33222222222211111111110000000000
  1086. 10987654321098765432109876543210
  1087. 0000100x111xxxxx1xxxxxxxxxxxxxxx
  1088. casalb. */
  1089. return 1019;
  1090. }
  1091. else
  1092. {
  1093. /* 33222222222211111111110000000000
  1094. 10987654321098765432109876543210
  1095. 0100100x111xxxxx1xxxxxxxxxxxxxxx
  1096. casalh. */
  1097. return 1022;
  1098. }
  1099. }
  1100. else
  1101. {
  1102. /* 33222222222211111111110000000000
  1103. 10987654321098765432109876543210
  1104. 1x00100x111xxxxx1xxxxxxxxxxxxxxx
  1105. casal. */
  1106. return 1025;
  1107. }
  1108. }
  1109. }
  1110. }
  1111. else
  1112. {
  1113. if (((word >> 30) & 0x1) == 0)
  1114. {
  1115. /* 33222222222211111111110000000000
  1116. 10987654321098765432109876543210
  1117. x010100x11xxxxxxxxxxxxxxxxxxxxxx
  1118. ldp. */
  1119. return 982;
  1120. }
  1121. else
  1122. {
  1123. /* 33222222222211111111110000000000
  1124. 10987654321098765432109876543210
  1125. x110100x11xxxxxxxxxxxxxxxxxxxxxx
  1126. ldpsw. */
  1127. return 985;
  1128. }
  1129. }
  1130. }
  1131. }
  1132. }
  1133. else
  1134. {
  1135. if (((word >> 24) & 0x1) == 0)
  1136. {
  1137. if (((word >> 29) & 0x1) == 0)
  1138. {
  1139. if (((word >> 31) & 0x1) == 0)
  1140. {
  1141. /* 33222222222211111111110000000000
  1142. 10987654321098765432109876543210
  1143. 0x011000xxxxxxxxxxxxxxxxxxxxxxxx
  1144. ldr. */
  1145. return 987;
  1146. }
  1147. else
  1148. {
  1149. if (((word >> 30) & 0x1) == 0)
  1150. {
  1151. /* 33222222222211111111110000000000
  1152. 10987654321098765432109876543210
  1153. 10011000xxxxxxxxxxxxxxxxxxxxxxxx
  1154. ldrsw. */
  1155. return 989;
  1156. }
  1157. else
  1158. {
  1159. /* 33222222222211111111110000000000
  1160. 10987654321098765432109876543210
  1161. 11011000xxxxxxxxxxxxxxxxxxxxxxxx
  1162. prfm. */
  1163. return 990;
  1164. }
  1165. }
  1166. }
  1167. else
  1168. {
  1169. if (((word >> 10) & 0x1) == 0)
  1170. {
  1171. if (((word >> 11) & 0x1) == 0)
  1172. {
  1173. if (((word >> 21) & 0x1) == 0)
  1174. {
  1175. if (((word >> 23) & 0x1) == 0)
  1176. {
  1177. if (((word >> 22) & 0x1) == 0)
  1178. {
  1179. if (((word >> 31) & 0x1) == 0)
  1180. {
  1181. if (((word >> 30) & 0x1) == 0)
  1182. {
  1183. /* 33222222222211111111110000000000
  1184. 10987654321098765432109876543210
  1185. 00111000000xxxxxxxxx00xxxxxxxxxx
  1186. sturb. */
  1187. return 922;
  1188. }
  1189. else
  1190. {
  1191. /* 33222222222211111111110000000000
  1192. 10987654321098765432109876543210
  1193. 01111000000xxxxxxxxx00xxxxxxxxxx
  1194. sturh. */
  1195. return 927;
  1196. }
  1197. }
  1198. else
  1199. {
  1200. /* 33222222222211111111110000000000
  1201. 10987654321098765432109876543210
  1202. 1x111000000xxxxxxxxx00xxxxxxxxxx
  1203. stur. */
  1204. return 930;
  1205. }
  1206. }
  1207. else
  1208. {
  1209. if (((word >> 31) & 0x1) == 0)
  1210. {
  1211. if (((word >> 30) & 0x1) == 0)
  1212. {
  1213. /* 33222222222211111111110000000000
  1214. 10987654321098765432109876543210
  1215. 00111000010xxxxxxxxx00xxxxxxxxxx
  1216. ldurb. */
  1217. return 923;
  1218. }
  1219. else
  1220. {
  1221. /* 33222222222211111111110000000000
  1222. 10987654321098765432109876543210
  1223. 01111000010xxxxxxxxx00xxxxxxxxxx
  1224. ldurh. */
  1225. return 928;
  1226. }
  1227. }
  1228. else
  1229. {
  1230. /* 33222222222211111111110000000000
  1231. 10987654321098765432109876543210
  1232. 1x111000010xxxxxxxxx00xxxxxxxxxx
  1233. ldur. */
  1234. return 931;
  1235. }
  1236. }
  1237. }
  1238. else
  1239. {
  1240. if (((word >> 30) & 0x1) == 0)
  1241. {
  1242. if (((word >> 31) & 0x1) == 0)
  1243. {
  1244. /* 33222222222211111111110000000000
  1245. 10987654321098765432109876543210
  1246. 001110001x0xxxxxxxxx00xxxxxxxxxx
  1247. ldursb. */
  1248. return 924;
  1249. }
  1250. else
  1251. {
  1252. /* 33222222222211111111110000000000
  1253. 10987654321098765432109876543210
  1254. 101110001x0xxxxxxxxx00xxxxxxxxxx
  1255. ldursw. */
  1256. return 932;
  1257. }
  1258. }
  1259. else
  1260. {
  1261. if (((word >> 31) & 0x1) == 0)
  1262. {
  1263. /* 33222222222211111111110000000000
  1264. 10987654321098765432109876543210
  1265. 011110001x0xxxxxxxxx00xxxxxxxxxx
  1266. ldursh. */
  1267. return 929;
  1268. }
  1269. else
  1270. {
  1271. /* 33222222222211111111110000000000
  1272. 10987654321098765432109876543210
  1273. 111110001x0xxxxxxxxx00xxxxxxxxxx
  1274. prfum. */
  1275. return 933;
  1276. }
  1277. }
  1278. }
  1279. }
  1280. else
  1281. {
  1282. if (((word >> 12) & 0x1) == 0)
  1283. {
  1284. if (((word >> 13) & 0x1) == 0)
  1285. {
  1286. if (((word >> 14) & 0x1) == 0)
  1287. {
  1288. if (((word >> 15) & 0x1) == 0)
  1289. {
  1290. if (((word >> 22) & 0x1) == 0)
  1291. {
  1292. if (((word >> 23) & 0x1) == 0)
  1293. {
  1294. if (((word >> 31) & 0x1) == 0)
  1295. {
  1296. if (((word >> 30) & 0x1) == 0)
  1297. {
  1298. /* 33222222222211111111110000000000
  1299. 10987654321098765432109876543210
  1300. 00111000001xxxxx000000xxxxxxxxxx
  1301. ldaddb. */
  1302. return 1042;
  1303. }
  1304. else
  1305. {
  1306. /* 33222222222211111111110000000000
  1307. 10987654321098765432109876543210
  1308. 01111000001xxxxx000000xxxxxxxxxx
  1309. ldaddh. */
  1310. return 1043;
  1311. }
  1312. }
  1313. else
  1314. {
  1315. /* 33222222222211111111110000000000
  1316. 10987654321098765432109876543210
  1317. 1x111000001xxxxx000000xxxxxxxxxx
  1318. ldadd. */
  1319. return 1044;
  1320. }
  1321. }
  1322. else
  1323. {
  1324. if (((word >> 31) & 0x1) == 0)
  1325. {
  1326. if (((word >> 30) & 0x1) == 0)
  1327. {
  1328. /* 33222222222211111111110000000000
  1329. 10987654321098765432109876543210
  1330. 00111000101xxxxx000000xxxxxxxxxx
  1331. ldaddab. */
  1332. return 1045;
  1333. }
  1334. else
  1335. {
  1336. /* 33222222222211111111110000000000
  1337. 10987654321098765432109876543210
  1338. 01111000101xxxxx000000xxxxxxxxxx
  1339. ldaddah. */
  1340. return 1048;
  1341. }
  1342. }
  1343. else
  1344. {
  1345. /* 33222222222211111111110000000000
  1346. 10987654321098765432109876543210
  1347. 1x111000101xxxxx000000xxxxxxxxxx
  1348. ldadda. */
  1349. return 1051;
  1350. }
  1351. }
  1352. }
  1353. else
  1354. {
  1355. if (((word >> 23) & 0x1) == 0)
  1356. {
  1357. if (((word >> 31) & 0x1) == 0)
  1358. {
  1359. if (((word >> 30) & 0x1) == 0)
  1360. {
  1361. /* 33222222222211111111110000000000
  1362. 10987654321098765432109876543210
  1363. 00111000011xxxxx000000xxxxxxxxxx
  1364. ldaddlb. */
  1365. return 1046;
  1366. }
  1367. else
  1368. {
  1369. /* 33222222222211111111110000000000
  1370. 10987654321098765432109876543210
  1371. 01111000011xxxxx000000xxxxxxxxxx
  1372. ldaddlh. */
  1373. return 1049;
  1374. }
  1375. }
  1376. else
  1377. {
  1378. /* 33222222222211111111110000000000
  1379. 10987654321098765432109876543210
  1380. 1x111000011xxxxx000000xxxxxxxxxx
  1381. ldaddl. */
  1382. return 1052;
  1383. }
  1384. }
  1385. else
  1386. {
  1387. if (((word >> 31) & 0x1) == 0)
  1388. {
  1389. if (((word >> 30) & 0x1) == 0)
  1390. {
  1391. /* 33222222222211111111110000000000
  1392. 10987654321098765432109876543210
  1393. 00111000111xxxxx000000xxxxxxxxxx
  1394. ldaddalb. */
  1395. return 1047;
  1396. }
  1397. else
  1398. {
  1399. /* 33222222222211111111110000000000
  1400. 10987654321098765432109876543210
  1401. 01111000111xxxxx000000xxxxxxxxxx
  1402. ldaddalh. */
  1403. return 1050;
  1404. }
  1405. }
  1406. else
  1407. {
  1408. /* 33222222222211111111110000000000
  1409. 10987654321098765432109876543210
  1410. 1x111000111xxxxx000000xxxxxxxxxx
  1411. ldaddal. */
  1412. return 1053;
  1413. }
  1414. }
  1415. }
  1416. }
  1417. else
  1418. {
  1419. if (((word >> 22) & 0x1) == 0)
  1420. {
  1421. if (((word >> 23) & 0x1) == 0)
  1422. {
  1423. if (((word >> 31) & 0x1) == 0)
  1424. {
  1425. if (((word >> 30) & 0x1) == 0)
  1426. {
  1427. /* 33222222222211111111110000000000
  1428. 10987654321098765432109876543210
  1429. 00111000001xxxxx100000xxxxxxxxxx
  1430. swpb. */
  1431. return 1030;
  1432. }
  1433. else
  1434. {
  1435. /* 33222222222211111111110000000000
  1436. 10987654321098765432109876543210
  1437. 01111000001xxxxx100000xxxxxxxxxx
  1438. swph. */
  1439. return 1031;
  1440. }
  1441. }
  1442. else
  1443. {
  1444. /* 33222222222211111111110000000000
  1445. 10987654321098765432109876543210
  1446. 1x111000001xxxxx100000xxxxxxxxxx
  1447. swp. */
  1448. return 1032;
  1449. }
  1450. }
  1451. else
  1452. {
  1453. if (((word >> 31) & 0x1) == 0)
  1454. {
  1455. if (((word >> 30) & 0x1) == 0)
  1456. {
  1457. /* 33222222222211111111110000000000
  1458. 10987654321098765432109876543210
  1459. 00111000101xxxxx100000xxxxxxxxxx
  1460. swpab. */
  1461. return 1033;
  1462. }
  1463. else
  1464. {
  1465. /* 33222222222211111111110000000000
  1466. 10987654321098765432109876543210
  1467. 01111000101xxxxx100000xxxxxxxxxx
  1468. swpah. */
  1469. return 1036;
  1470. }
  1471. }
  1472. else
  1473. {
  1474. /* 33222222222211111111110000000000
  1475. 10987654321098765432109876543210
  1476. 1x111000101xxxxx100000xxxxxxxxxx
  1477. swpa. */
  1478. return 1039;
  1479. }
  1480. }
  1481. }
  1482. else
  1483. {
  1484. if (((word >> 23) & 0x1) == 0)
  1485. {
  1486. if (((word >> 31) & 0x1) == 0)
  1487. {
  1488. if (((word >> 30) & 0x1) == 0)
  1489. {
  1490. /* 33222222222211111111110000000000
  1491. 10987654321098765432109876543210
  1492. 00111000011xxxxx100000xxxxxxxxxx
  1493. swplb. */
  1494. return 1034;
  1495. }
  1496. else
  1497. {
  1498. /* 33222222222211111111110000000000
  1499. 10987654321098765432109876543210
  1500. 01111000011xxxxx100000xxxxxxxxxx
  1501. swplh. */
  1502. return 1037;
  1503. }
  1504. }
  1505. else
  1506. {
  1507. /* 33222222222211111111110000000000
  1508. 10987654321098765432109876543210
  1509. 1x111000011xxxxx100000xxxxxxxxxx
  1510. swpl. */
  1511. return 1040;
  1512. }
  1513. }
  1514. else
  1515. {
  1516. if (((word >> 31) & 0x1) == 0)
  1517. {
  1518. if (((word >> 30) & 0x1) == 0)
  1519. {
  1520. /* 33222222222211111111110000000000
  1521. 10987654321098765432109876543210
  1522. 00111000111xxxxx100000xxxxxxxxxx
  1523. swpalb. */
  1524. return 1035;
  1525. }
  1526. else
  1527. {
  1528. /* 33222222222211111111110000000000
  1529. 10987654321098765432109876543210
  1530. 01111000111xxxxx100000xxxxxxxxxx
  1531. swpalh. */
  1532. return 1038;
  1533. }
  1534. }
  1535. else
  1536. {
  1537. /* 33222222222211111111110000000000
  1538. 10987654321098765432109876543210
  1539. 1x111000111xxxxx100000xxxxxxxxxx
  1540. swpal. */
  1541. return 1041;
  1542. }
  1543. }
  1544. }
  1545. }
  1546. }
  1547. else
  1548. {
  1549. if (((word >> 15) & 0x1) == 0)
  1550. {
  1551. if (((word >> 22) & 0x1) == 0)
  1552. {
  1553. if (((word >> 23) & 0x1) == 0)
  1554. {
  1555. if (((word >> 31) & 0x1) == 0)
  1556. {
  1557. if (((word >> 30) & 0x1) == 0)
  1558. {
  1559. /* 33222222222211111111110000000000
  1560. 10987654321098765432109876543210
  1561. 00111000001xxxxx010000xxxxxxxxxx
  1562. ldsmaxb. */
  1563. return 1090;
  1564. }
  1565. else
  1566. {
  1567. /* 33222222222211111111110000000000
  1568. 10987654321098765432109876543210
  1569. 01111000001xxxxx010000xxxxxxxxxx
  1570. ldsmaxh. */
  1571. return 1091;
  1572. }
  1573. }
  1574. else
  1575. {
  1576. /* 33222222222211111111110000000000
  1577. 10987654321098765432109876543210
  1578. 1x111000001xxxxx010000xxxxxxxxxx
  1579. ldsmax. */
  1580. return 1092;
  1581. }
  1582. }
  1583. else
  1584. {
  1585. if (((word >> 31) & 0x1) == 0)
  1586. {
  1587. if (((word >> 30) & 0x1) == 0)
  1588. {
  1589. /* 33222222222211111111110000000000
  1590. 10987654321098765432109876543210
  1591. 00111000101xxxxx010000xxxxxxxxxx
  1592. ldsmaxab. */
  1593. return 1093;
  1594. }
  1595. else
  1596. {
  1597. /* 33222222222211111111110000000000
  1598. 10987654321098765432109876543210
  1599. 01111000101xxxxx010000xxxxxxxxxx
  1600. ldsmaxah. */
  1601. return 1096;
  1602. }
  1603. }
  1604. else
  1605. {
  1606. /* 33222222222211111111110000000000
  1607. 10987654321098765432109876543210
  1608. 1x111000101xxxxx010000xxxxxxxxxx
  1609. ldsmaxa. */
  1610. return 1099;
  1611. }
  1612. }
  1613. }
  1614. else
  1615. {
  1616. if (((word >> 23) & 0x1) == 0)
  1617. {
  1618. if (((word >> 31) & 0x1) == 0)
  1619. {
  1620. if (((word >> 30) & 0x1) == 0)
  1621. {
  1622. /* 33222222222211111111110000000000
  1623. 10987654321098765432109876543210
  1624. 00111000011xxxxx010000xxxxxxxxxx
  1625. ldsmaxlb. */
  1626. return 1094;
  1627. }
  1628. else
  1629. {
  1630. /* 33222222222211111111110000000000
  1631. 10987654321098765432109876543210
  1632. 01111000011xxxxx010000xxxxxxxxxx
  1633. ldsmaxlh. */
  1634. return 1097;
  1635. }
  1636. }
  1637. else
  1638. {
  1639. /* 33222222222211111111110000000000
  1640. 10987654321098765432109876543210
  1641. 1x111000011xxxxx010000xxxxxxxxxx
  1642. ldsmaxl. */
  1643. return 1100;
  1644. }
  1645. }
  1646. else
  1647. {
  1648. if (((word >> 31) & 0x1) == 0)
  1649. {
  1650. if (((word >> 30) & 0x1) == 0)
  1651. {
  1652. /* 33222222222211111111110000000000
  1653. 10987654321098765432109876543210
  1654. 00111000111xxxxx010000xxxxxxxxxx
  1655. ldsmaxalb. */
  1656. return 1095;
  1657. }
  1658. else
  1659. {
  1660. /* 33222222222211111111110000000000
  1661. 10987654321098765432109876543210
  1662. 01111000111xxxxx010000xxxxxxxxxx
  1663. ldsmaxalh. */
  1664. return 1098;
  1665. }
  1666. }
  1667. else
  1668. {
  1669. /* 33222222222211111111110000000000
  1670. 10987654321098765432109876543210
  1671. 1x111000111xxxxx010000xxxxxxxxxx
  1672. ldsmaxal. */
  1673. return 1101;
  1674. }
  1675. }
  1676. }
  1677. }
  1678. else
  1679. {
  1680. if (((word >> 31) & 0x1) == 0)
  1681. {
  1682. if (((word >> 30) & 0x1) == 0)
  1683. {
  1684. /* 33222222222211111111110000000000
  1685. 10987654321098765432109876543210
  1686. 00111000xx1xxxxx110000xxxxxxxxxx
  1687. ldaprb. */
  1688. return 959;
  1689. }
  1690. else
  1691. {
  1692. /* 33222222222211111111110000000000
  1693. 10987654321098765432109876543210
  1694. 01111000xx1xxxxx110000xxxxxxxxxx
  1695. ldaprh. */
  1696. return 960;
  1697. }
  1698. }
  1699. else
  1700. {
  1701. /* 33222222222211111111110000000000
  1702. 10987654321098765432109876543210
  1703. 1x111000xx1xxxxx110000xxxxxxxxxx
  1704. ldapr. */
  1705. return 961;
  1706. }
  1707. }
  1708. }
  1709. }
  1710. else
  1711. {
  1712. if (((word >> 14) & 0x1) == 0)
  1713. {
  1714. if (((word >> 15) & 0x1) == 0)
  1715. {
  1716. if (((word >> 22) & 0x1) == 0)
  1717. {
  1718. if (((word >> 23) & 0x1) == 0)
  1719. {
  1720. if (((word >> 31) & 0x1) == 0)
  1721. {
  1722. if (((word >> 30) & 0x1) == 0)
  1723. {
  1724. /* 33222222222211111111110000000000
  1725. 10987654321098765432109876543210
  1726. 00111000001xxxxx001000xxxxxxxxxx
  1727. ldeorb. */
  1728. return 1066;
  1729. }
  1730. else
  1731. {
  1732. /* 33222222222211111111110000000000
  1733. 10987654321098765432109876543210
  1734. 01111000001xxxxx001000xxxxxxxxxx
  1735. ldeorh. */
  1736. return 1067;
  1737. }
  1738. }
  1739. else
  1740. {
  1741. /* 33222222222211111111110000000000
  1742. 10987654321098765432109876543210
  1743. 1x111000001xxxxx001000xxxxxxxxxx
  1744. ldeor. */
  1745. return 1068;
  1746. }
  1747. }
  1748. else
  1749. {
  1750. if (((word >> 31) & 0x1) == 0)
  1751. {
  1752. if (((word >> 30) & 0x1) == 0)
  1753. {
  1754. /* 33222222222211111111110000000000
  1755. 10987654321098765432109876543210
  1756. 00111000101xxxxx001000xxxxxxxxxx
  1757. ldeorab. */
  1758. return 1069;
  1759. }
  1760. else
  1761. {
  1762. /* 33222222222211111111110000000000
  1763. 10987654321098765432109876543210
  1764. 01111000101xxxxx001000xxxxxxxxxx
  1765. ldeorah. */
  1766. return 1072;
  1767. }
  1768. }
  1769. else
  1770. {
  1771. /* 33222222222211111111110000000000
  1772. 10987654321098765432109876543210
  1773. 1x111000101xxxxx001000xxxxxxxxxx
  1774. ldeora. */
  1775. return 1075;
  1776. }
  1777. }
  1778. }
  1779. else
  1780. {
  1781. if (((word >> 23) & 0x1) == 0)
  1782. {
  1783. if (((word >> 31) & 0x1) == 0)
  1784. {
  1785. if (((word >> 30) & 0x1) == 0)
  1786. {
  1787. /* 33222222222211111111110000000000
  1788. 10987654321098765432109876543210
  1789. 00111000011xxxxx001000xxxxxxxxxx
  1790. ldeorlb. */
  1791. return 1070;
  1792. }
  1793. else
  1794. {
  1795. /* 33222222222211111111110000000000
  1796. 10987654321098765432109876543210
  1797. 01111000011xxxxx001000xxxxxxxxxx
  1798. ldeorlh. */
  1799. return 1073;
  1800. }
  1801. }
  1802. else
  1803. {
  1804. /* 33222222222211111111110000000000
  1805. 10987654321098765432109876543210
  1806. 1x111000011xxxxx001000xxxxxxxxxx
  1807. ldeorl. */
  1808. return 1076;
  1809. }
  1810. }
  1811. else
  1812. {
  1813. if (((word >> 31) & 0x1) == 0)
  1814. {
  1815. if (((word >> 30) & 0x1) == 0)
  1816. {
  1817. /* 33222222222211111111110000000000
  1818. 10987654321098765432109876543210
  1819. 00111000111xxxxx001000xxxxxxxxxx
  1820. ldeoralb. */
  1821. return 1071;
  1822. }
  1823. else
  1824. {
  1825. /* 33222222222211111111110000000000
  1826. 10987654321098765432109876543210
  1827. 01111000111xxxxx001000xxxxxxxxxx
  1828. ldeoralh. */
  1829. return 1074;
  1830. }
  1831. }
  1832. else
  1833. {
  1834. /* 33222222222211111111110000000000
  1835. 10987654321098765432109876543210
  1836. 1x111000111xxxxx001000xxxxxxxxxx
  1837. ldeoral. */
  1838. return 1077;
  1839. }
  1840. }
  1841. }
  1842. }
  1843. else
  1844. {
  1845. /* 33222222222211111111110000000000
  1846. 10987654321098765432109876543210
  1847. xx111000xx1xxxxx101000xxxxxxxxxx
  1848. st64bv0. */
  1849. return 994;
  1850. }
  1851. }
  1852. else
  1853. {
  1854. if (((word >> 22) & 0x1) == 0)
  1855. {
  1856. if (((word >> 23) & 0x1) == 0)
  1857. {
  1858. if (((word >> 31) & 0x1) == 0)
  1859. {
  1860. if (((word >> 30) & 0x1) == 0)
  1861. {
  1862. /* 33222222222211111111110000000000
  1863. 10987654321098765432109876543210
  1864. 00111000001xxxxxx11000xxxxxxxxxx
  1865. ldumaxb. */
  1866. return 1114;
  1867. }
  1868. else
  1869. {
  1870. /* 33222222222211111111110000000000
  1871. 10987654321098765432109876543210
  1872. 01111000001xxxxxx11000xxxxxxxxxx
  1873. ldumaxh. */
  1874. return 1115;
  1875. }
  1876. }
  1877. else
  1878. {
  1879. /* 33222222222211111111110000000000
  1880. 10987654321098765432109876543210
  1881. 1x111000001xxxxxx11000xxxxxxxxxx
  1882. ldumax. */
  1883. return 1116;
  1884. }
  1885. }
  1886. else
  1887. {
  1888. if (((word >> 31) & 0x1) == 0)
  1889. {
  1890. if (((word >> 30) & 0x1) == 0)
  1891. {
  1892. /* 33222222222211111111110000000000
  1893. 10987654321098765432109876543210
  1894. 00111000101xxxxxx11000xxxxxxxxxx
  1895. ldumaxab. */
  1896. return 1117;
  1897. }
  1898. else
  1899. {
  1900. /* 33222222222211111111110000000000
  1901. 10987654321098765432109876543210
  1902. 01111000101xxxxxx11000xxxxxxxxxx
  1903. ldumaxah. */
  1904. return 1120;
  1905. }
  1906. }
  1907. else
  1908. {
  1909. /* 33222222222211111111110000000000
  1910. 10987654321098765432109876543210
  1911. 1x111000101xxxxxx11000xxxxxxxxxx
  1912. ldumaxa. */
  1913. return 1123;
  1914. }
  1915. }
  1916. }
  1917. else
  1918. {
  1919. if (((word >> 23) & 0x1) == 0)
  1920. {
  1921. if (((word >> 31) & 0x1) == 0)
  1922. {
  1923. if (((word >> 30) & 0x1) == 0)
  1924. {
  1925. /* 33222222222211111111110000000000
  1926. 10987654321098765432109876543210
  1927. 00111000011xxxxxx11000xxxxxxxxxx
  1928. ldumaxlb. */
  1929. return 1118;
  1930. }
  1931. else
  1932. {
  1933. /* 33222222222211111111110000000000
  1934. 10987654321098765432109876543210
  1935. 01111000011xxxxxx11000xxxxxxxxxx
  1936. ldumaxlh. */
  1937. return 1121;
  1938. }
  1939. }
  1940. else
  1941. {
  1942. /* 33222222222211111111110000000000
  1943. 10987654321098765432109876543210
  1944. 1x111000011xxxxxx11000xxxxxxxxxx
  1945. ldumaxl. */
  1946. return 1124;
  1947. }
  1948. }
  1949. else
  1950. {
  1951. if (((word >> 31) & 0x1) == 0)
  1952. {
  1953. if (((word >> 30) & 0x1) == 0)
  1954. {
  1955. /* 33222222222211111111110000000000
  1956. 10987654321098765432109876543210
  1957. 00111000111xxxxxx11000xxxxxxxxxx
  1958. ldumaxalb. */
  1959. return 1119;
  1960. }
  1961. else
  1962. {
  1963. /* 33222222222211111111110000000000
  1964. 10987654321098765432109876543210
  1965. 01111000111xxxxxx11000xxxxxxxxxx
  1966. ldumaxalh. */
  1967. return 1122;
  1968. }
  1969. }
  1970. else
  1971. {
  1972. /* 33222222222211111111110000000000
  1973. 10987654321098765432109876543210
  1974. 1x111000111xxxxxx11000xxxxxxxxxx
  1975. ldumaxal. */
  1976. return 1125;
  1977. }
  1978. }
  1979. }
  1980. }
  1981. }
  1982. }
  1983. else
  1984. {
  1985. if (((word >> 13) & 0x1) == 0)
  1986. {
  1987. if (((word >> 14) & 0x1) == 0)
  1988. {
  1989. if (((word >> 15) & 0x1) == 0)
  1990. {
  1991. if (((word >> 22) & 0x1) == 0)
  1992. {
  1993. if (((word >> 23) & 0x1) == 0)
  1994. {
  1995. if (((word >> 31) & 0x1) == 0)
  1996. {
  1997. if (((word >> 30) & 0x1) == 0)
  1998. {
  1999. /* 33222222222211111111110000000000
  2000. 10987654321098765432109876543210
  2001. 00111000001xxxxx000100xxxxxxxxxx
  2002. ldclrb. */
  2003. return 1054;
  2004. }
  2005. else
  2006. {
  2007. /* 33222222222211111111110000000000
  2008. 10987654321098765432109876543210
  2009. 01111000001xxxxx000100xxxxxxxxxx
  2010. ldclrh. */
  2011. return 1055;
  2012. }
  2013. }
  2014. else
  2015. {
  2016. /* 33222222222211111111110000000000
  2017. 10987654321098765432109876543210
  2018. 1x111000001xxxxx000100xxxxxxxxxx
  2019. ldclr. */
  2020. return 1056;
  2021. }
  2022. }
  2023. else
  2024. {
  2025. if (((word >> 31) & 0x1) == 0)
  2026. {
  2027. if (((word >> 30) & 0x1) == 0)
  2028. {
  2029. /* 33222222222211111111110000000000
  2030. 10987654321098765432109876543210
  2031. 00111000101xxxxx000100xxxxxxxxxx
  2032. ldclrab. */
  2033. return 1057;
  2034. }
  2035. else
  2036. {
  2037. /* 33222222222211111111110000000000
  2038. 10987654321098765432109876543210
  2039. 01111000101xxxxx000100xxxxxxxxxx
  2040. ldclrah. */
  2041. return 1060;
  2042. }
  2043. }
  2044. else
  2045. {
  2046. /* 33222222222211111111110000000000
  2047. 10987654321098765432109876543210
  2048. 1x111000101xxxxx000100xxxxxxxxxx
  2049. ldclra. */
  2050. return 1063;
  2051. }
  2052. }
  2053. }
  2054. else
  2055. {
  2056. if (((word >> 23) & 0x1) == 0)
  2057. {
  2058. if (((word >> 31) & 0x1) == 0)
  2059. {
  2060. if (((word >> 30) & 0x1) == 0)
  2061. {
  2062. /* 33222222222211111111110000000000
  2063. 10987654321098765432109876543210
  2064. 00111000011xxxxx000100xxxxxxxxxx
  2065. ldclrlb. */
  2066. return 1058;
  2067. }
  2068. else
  2069. {
  2070. /* 33222222222211111111110000000000
  2071. 10987654321098765432109876543210
  2072. 01111000011xxxxx000100xxxxxxxxxx
  2073. ldclrlh. */
  2074. return 1061;
  2075. }
  2076. }
  2077. else
  2078. {
  2079. /* 33222222222211111111110000000000
  2080. 10987654321098765432109876543210
  2081. 1x111000011xxxxx000100xxxxxxxxxx
  2082. ldclrl. */
  2083. return 1064;
  2084. }
  2085. }
  2086. else
  2087. {
  2088. if (((word >> 31) & 0x1) == 0)
  2089. {
  2090. if (((word >> 30) & 0x1) == 0)
  2091. {
  2092. /* 33222222222211111111110000000000
  2093. 10987654321098765432109876543210
  2094. 00111000111xxxxx000100xxxxxxxxxx
  2095. ldclralb. */
  2096. return 1059;
  2097. }
  2098. else
  2099. {
  2100. /* 33222222222211111111110000000000
  2101. 10987654321098765432109876543210
  2102. 01111000111xxxxx000100xxxxxxxxxx
  2103. ldclralh. */
  2104. return 1062;
  2105. }
  2106. }
  2107. else
  2108. {
  2109. /* 33222222222211111111110000000000
  2110. 10987654321098765432109876543210
  2111. 1x111000111xxxxx000100xxxxxxxxxx
  2112. ldclral. */
  2113. return 1065;
  2114. }
  2115. }
  2116. }
  2117. }
  2118. else
  2119. {
  2120. /* 33222222222211111111110000000000
  2121. 10987654321098765432109876543210
  2122. xx111000xx1xxxxx100100xxxxxxxxxx
  2123. st64b. */
  2124. return 992;
  2125. }
  2126. }
  2127. else
  2128. {
  2129. if (((word >> 15) & 0x1) == 0)
  2130. {
  2131. if (((word >> 22) & 0x1) == 0)
  2132. {
  2133. if (((word >> 23) & 0x1) == 0)
  2134. {
  2135. if (((word >> 31) & 0x1) == 0)
  2136. {
  2137. if (((word >> 30) & 0x1) == 0)
  2138. {
  2139. /* 33222222222211111111110000000000
  2140. 10987654321098765432109876543210
  2141. 00111000001xxxxx010100xxxxxxxxxx
  2142. ldsminb. */
  2143. return 1102;
  2144. }
  2145. else
  2146. {
  2147. /* 33222222222211111111110000000000
  2148. 10987654321098765432109876543210
  2149. 01111000001xxxxx010100xxxxxxxxxx
  2150. ldsminh. */
  2151. return 1103;
  2152. }
  2153. }
  2154. else
  2155. {
  2156. /* 33222222222211111111110000000000
  2157. 10987654321098765432109876543210
  2158. 1x111000001xxxxx010100xxxxxxxxxx
  2159. ldsmin. */
  2160. return 1104;
  2161. }
  2162. }
  2163. else
  2164. {
  2165. if (((word >> 31) & 0x1) == 0)
  2166. {
  2167. if (((word >> 30) & 0x1) == 0)
  2168. {
  2169. /* 33222222222211111111110000000000
  2170. 10987654321098765432109876543210
  2171. 00111000101xxxxx010100xxxxxxxxxx
  2172. ldsminab. */
  2173. return 1105;
  2174. }
  2175. else
  2176. {
  2177. /* 33222222222211111111110000000000
  2178. 10987654321098765432109876543210
  2179. 01111000101xxxxx010100xxxxxxxxxx
  2180. ldsminah. */
  2181. return 1108;
  2182. }
  2183. }
  2184. else
  2185. {
  2186. /* 33222222222211111111110000000000
  2187. 10987654321098765432109876543210
  2188. 1x111000101xxxxx010100xxxxxxxxxx
  2189. ldsmina. */
  2190. return 1111;
  2191. }
  2192. }
  2193. }
  2194. else
  2195. {
  2196. if (((word >> 23) & 0x1) == 0)
  2197. {
  2198. if (((word >> 31) & 0x1) == 0)
  2199. {
  2200. if (((word >> 30) & 0x1) == 0)
  2201. {
  2202. /* 33222222222211111111110000000000
  2203. 10987654321098765432109876543210
  2204. 00111000011xxxxx010100xxxxxxxxxx
  2205. ldsminlb. */
  2206. return 1106;
  2207. }
  2208. else
  2209. {
  2210. /* 33222222222211111111110000000000
  2211. 10987654321098765432109876543210
  2212. 01111000011xxxxx010100xxxxxxxxxx
  2213. ldsminlh. */
  2214. return 1109;
  2215. }
  2216. }
  2217. else
  2218. {
  2219. /* 33222222222211111111110000000000
  2220. 10987654321098765432109876543210
  2221. 1x111000011xxxxx010100xxxxxxxxxx
  2222. ldsminl. */
  2223. return 1112;
  2224. }
  2225. }
  2226. else
  2227. {
  2228. if (((word >> 31) & 0x1) == 0)
  2229. {
  2230. if (((word >> 30) & 0x1) == 0)
  2231. {
  2232. /* 33222222222211111111110000000000
  2233. 10987654321098765432109876543210
  2234. 00111000111xxxxx010100xxxxxxxxxx
  2235. ldsminalb. */
  2236. return 1107;
  2237. }
  2238. else
  2239. {
  2240. /* 33222222222211111111110000000000
  2241. 10987654321098765432109876543210
  2242. 01111000111xxxxx010100xxxxxxxxxx
  2243. ldsminalh. */
  2244. return 1110;
  2245. }
  2246. }
  2247. else
  2248. {
  2249. /* 33222222222211111111110000000000
  2250. 10987654321098765432109876543210
  2251. 1x111000111xxxxx010100xxxxxxxxxx
  2252. ldsminal. */
  2253. return 1113;
  2254. }
  2255. }
  2256. }
  2257. }
  2258. else
  2259. {
  2260. /* 33222222222211111111110000000000
  2261. 10987654321098765432109876543210
  2262. xx111000xx1xxxxx110100xxxxxxxxxx
  2263. ld64b. */
  2264. return 991;
  2265. }
  2266. }
  2267. }
  2268. else
  2269. {
  2270. if (((word >> 14) & 0x1) == 0)
  2271. {
  2272. if (((word >> 15) & 0x1) == 0)
  2273. {
  2274. if (((word >> 22) & 0x1) == 0)
  2275. {
  2276. if (((word >> 23) & 0x1) == 0)
  2277. {
  2278. if (((word >> 31) & 0x1) == 0)
  2279. {
  2280. if (((word >> 30) & 0x1) == 0)
  2281. {
  2282. /* 33222222222211111111110000000000
  2283. 10987654321098765432109876543210
  2284. 00111000001xxxxx001100xxxxxxxxxx
  2285. ldsetb. */
  2286. return 1078;
  2287. }
  2288. else
  2289. {
  2290. /* 33222222222211111111110000000000
  2291. 10987654321098765432109876543210
  2292. 01111000001xxxxx001100xxxxxxxxxx
  2293. ldseth. */
  2294. return 1079;
  2295. }
  2296. }
  2297. else
  2298. {
  2299. /* 33222222222211111111110000000000
  2300. 10987654321098765432109876543210
  2301. 1x111000001xxxxx001100xxxxxxxxxx
  2302. ldset. */
  2303. return 1080;
  2304. }
  2305. }
  2306. else
  2307. {
  2308. if (((word >> 31) & 0x1) == 0)
  2309. {
  2310. if (((word >> 30) & 0x1) == 0)
  2311. {
  2312. /* 33222222222211111111110000000000
  2313. 10987654321098765432109876543210
  2314. 00111000101xxxxx001100xxxxxxxxxx
  2315. ldsetab. */
  2316. return 1081;
  2317. }
  2318. else
  2319. {
  2320. /* 33222222222211111111110000000000
  2321. 10987654321098765432109876543210
  2322. 01111000101xxxxx001100xxxxxxxxxx
  2323. ldsetah. */
  2324. return 1084;
  2325. }
  2326. }
  2327. else
  2328. {
  2329. /* 33222222222211111111110000000000
  2330. 10987654321098765432109876543210
  2331. 1x111000101xxxxx001100xxxxxxxxxx
  2332. ldseta. */
  2333. return 1087;
  2334. }
  2335. }
  2336. }
  2337. else
  2338. {
  2339. if (((word >> 23) & 0x1) == 0)
  2340. {
  2341. if (((word >> 31) & 0x1) == 0)
  2342. {
  2343. if (((word >> 30) & 0x1) == 0)
  2344. {
  2345. /* 33222222222211111111110000000000
  2346. 10987654321098765432109876543210
  2347. 00111000011xxxxx001100xxxxxxxxxx
  2348. ldsetlb. */
  2349. return 1082;
  2350. }
  2351. else
  2352. {
  2353. /* 33222222222211111111110000000000
  2354. 10987654321098765432109876543210
  2355. 01111000011xxxxx001100xxxxxxxxxx
  2356. ldsetlh. */
  2357. return 1085;
  2358. }
  2359. }
  2360. else
  2361. {
  2362. /* 33222222222211111111110000000000
  2363. 10987654321098765432109876543210
  2364. 1x111000011xxxxx001100xxxxxxxxxx
  2365. ldsetl. */
  2366. return 1088;
  2367. }
  2368. }
  2369. else
  2370. {
  2371. if (((word >> 31) & 0x1) == 0)
  2372. {
  2373. if (((word >> 30) & 0x1) == 0)
  2374. {
  2375. /* 33222222222211111111110000000000
  2376. 10987654321098765432109876543210
  2377. 00111000111xxxxx001100xxxxxxxxxx
  2378. ldsetalb. */
  2379. return 1083;
  2380. }
  2381. else
  2382. {
  2383. /* 33222222222211111111110000000000
  2384. 10987654321098765432109876543210
  2385. 01111000111xxxxx001100xxxxxxxxxx
  2386. ldsetalh. */
  2387. return 1086;
  2388. }
  2389. }
  2390. else
  2391. {
  2392. /* 33222222222211111111110000000000
  2393. 10987654321098765432109876543210
  2394. 1x111000111xxxxx001100xxxxxxxxxx
  2395. ldsetal. */
  2396. return 1089;
  2397. }
  2398. }
  2399. }
  2400. }
  2401. else
  2402. {
  2403. /* 33222222222211111111110000000000
  2404. 10987654321098765432109876543210
  2405. xx111000xx1xxxxx101100xxxxxxxxxx
  2406. st64bv. */
  2407. return 993;
  2408. }
  2409. }
  2410. else
  2411. {
  2412. if (((word >> 22) & 0x1) == 0)
  2413. {
  2414. if (((word >> 23) & 0x1) == 0)
  2415. {
  2416. if (((word >> 31) & 0x1) == 0)
  2417. {
  2418. if (((word >> 30) & 0x1) == 0)
  2419. {
  2420. /* 33222222222211111111110000000000
  2421. 10987654321098765432109876543210
  2422. 00111000001xxxxxx11100xxxxxxxxxx
  2423. lduminb. */
  2424. return 1126;
  2425. }
  2426. else
  2427. {
  2428. /* 33222222222211111111110000000000
  2429. 10987654321098765432109876543210
  2430. 01111000001xxxxxx11100xxxxxxxxxx
  2431. lduminh. */
  2432. return 1127;
  2433. }
  2434. }
  2435. else
  2436. {
  2437. /* 33222222222211111111110000000000
  2438. 10987654321098765432109876543210
  2439. 1x111000001xxxxxx11100xxxxxxxxxx
  2440. ldumin. */
  2441. return 1128;
  2442. }
  2443. }
  2444. else
  2445. {
  2446. if (((word >> 31) & 0x1) == 0)
  2447. {
  2448. if (((word >> 30) & 0x1) == 0)
  2449. {
  2450. /* 33222222222211111111110000000000
  2451. 10987654321098765432109876543210
  2452. 00111000101xxxxxx11100xxxxxxxxxx
  2453. lduminab. */
  2454. return 1129;
  2455. }
  2456. else
  2457. {
  2458. /* 33222222222211111111110000000000
  2459. 10987654321098765432109876543210
  2460. 01111000101xxxxxx11100xxxxxxxxxx
  2461. lduminah. */
  2462. return 1132;
  2463. }
  2464. }
  2465. else
  2466. {
  2467. /* 33222222222211111111110000000000
  2468. 10987654321098765432109876543210
  2469. 1x111000101xxxxxx11100xxxxxxxxxx
  2470. ldumina. */
  2471. return 1135;
  2472. }
  2473. }
  2474. }
  2475. else
  2476. {
  2477. if (((word >> 23) & 0x1) == 0)
  2478. {
  2479. if (((word >> 31) & 0x1) == 0)
  2480. {
  2481. if (((word >> 30) & 0x1) == 0)
  2482. {
  2483. /* 33222222222211111111110000000000
  2484. 10987654321098765432109876543210
  2485. 00111000011xxxxxx11100xxxxxxxxxx
  2486. lduminlb. */
  2487. return 1130;
  2488. }
  2489. else
  2490. {
  2491. /* 33222222222211111111110000000000
  2492. 10987654321098765432109876543210
  2493. 01111000011xxxxxx11100xxxxxxxxxx
  2494. lduminlh. */
  2495. return 1133;
  2496. }
  2497. }
  2498. else
  2499. {
  2500. /* 33222222222211111111110000000000
  2501. 10987654321098765432109876543210
  2502. 1x111000011xxxxxx11100xxxxxxxxxx
  2503. lduminl. */
  2504. return 1136;
  2505. }
  2506. }
  2507. else
  2508. {
  2509. if (((word >> 31) & 0x1) == 0)
  2510. {
  2511. if (((word >> 30) & 0x1) == 0)
  2512. {
  2513. /* 33222222222211111111110000000000
  2514. 10987654321098765432109876543210
  2515. 00111000111xxxxxx11100xxxxxxxxxx
  2516. lduminalb. */
  2517. return 1131;
  2518. }
  2519. else
  2520. {
  2521. /* 33222222222211111111110000000000
  2522. 10987654321098765432109876543210
  2523. 01111000111xxxxxx11100xxxxxxxxxx
  2524. lduminalh. */
  2525. return 1134;
  2526. }
  2527. }
  2528. else
  2529. {
  2530. /* 33222222222211111111110000000000
  2531. 10987654321098765432109876543210
  2532. 1x111000111xxxxxx11100xxxxxxxxxx
  2533. lduminal. */
  2534. return 1137;
  2535. }
  2536. }
  2537. }
  2538. }
  2539. }
  2540. }
  2541. }
  2542. }
  2543. else
  2544. {
  2545. if (((word >> 21) & 0x1) == 0)
  2546. {
  2547. if (((word >> 23) & 0x1) == 0)
  2548. {
  2549. if (((word >> 22) & 0x1) == 0)
  2550. {
  2551. if (((word >> 31) & 0x1) == 0)
  2552. {
  2553. if (((word >> 30) & 0x1) == 0)
  2554. {
  2555. /* 33222222222211111111110000000000
  2556. 10987654321098765432109876543210
  2557. 00111000000xxxxxxxxx10xxxxxxxxxx
  2558. sttrb. */
  2559. return 913;
  2560. }
  2561. else
  2562. {
  2563. /* 33222222222211111111110000000000
  2564. 10987654321098765432109876543210
  2565. 01111000000xxxxxxxxx10xxxxxxxxxx
  2566. sttrh. */
  2567. return 916;
  2568. }
  2569. }
  2570. else
  2571. {
  2572. /* 33222222222211111111110000000000
  2573. 10987654321098765432109876543210
  2574. 1x111000000xxxxxxxxx10xxxxxxxxxx
  2575. sttr. */
  2576. return 919;
  2577. }
  2578. }
  2579. else
  2580. {
  2581. if (((word >> 31) & 0x1) == 0)
  2582. {
  2583. if (((word >> 30) & 0x1) == 0)
  2584. {
  2585. /* 33222222222211111111110000000000
  2586. 10987654321098765432109876543210
  2587. 00111000010xxxxxxxxx10xxxxxxxxxx
  2588. ldtrb. */
  2589. return 914;
  2590. }
  2591. else
  2592. {
  2593. /* 33222222222211111111110000000000
  2594. 10987654321098765432109876543210
  2595. 01111000010xxxxxxxxx10xxxxxxxxxx
  2596. ldtrh. */
  2597. return 917;
  2598. }
  2599. }
  2600. else
  2601. {
  2602. /* 33222222222211111111110000000000
  2603. 10987654321098765432109876543210
  2604. 1x111000010xxxxxxxxx10xxxxxxxxxx
  2605. ldtr. */
  2606. return 920;
  2607. }
  2608. }
  2609. }
  2610. else
  2611. {
  2612. if (((word >> 30) & 0x1) == 0)
  2613. {
  2614. if (((word >> 31) & 0x1) == 0)
  2615. {
  2616. /* 33222222222211111111110000000000
  2617. 10987654321098765432109876543210
  2618. 001110001x0xxxxxxxxx10xxxxxxxxxx
  2619. ldtrsb. */
  2620. return 915;
  2621. }
  2622. else
  2623. {
  2624. /* 33222222222211111111110000000000
  2625. 10987654321098765432109876543210
  2626. 101110001x0xxxxxxxxx10xxxxxxxxxx
  2627. ldtrsw. */
  2628. return 921;
  2629. }
  2630. }
  2631. else
  2632. {
  2633. /* 33222222222211111111110000000000
  2634. 10987654321098765432109876543210
  2635. x11110001x0xxxxxxxxx10xxxxxxxxxx
  2636. ldtrsh. */
  2637. return 918;
  2638. }
  2639. }
  2640. }
  2641. else
  2642. {
  2643. if (((word >> 23) & 0x1) == 0)
  2644. {
  2645. if (((word >> 22) & 0x1) == 0)
  2646. {
  2647. if (((word >> 31) & 0x1) == 0)
  2648. {
  2649. if (((word >> 30) & 0x1) == 0)
  2650. {
  2651. /* 33222222222211111111110000000000
  2652. 10987654321098765432109876543210
  2653. 00111000001xxxxxxxxx10xxxxxxxxxx
  2654. strb. */
  2655. return 901;
  2656. }
  2657. else
  2658. {
  2659. /* 33222222222211111111110000000000
  2660. 10987654321098765432109876543210
  2661. 01111000001xxxxxxxxx10xxxxxxxxxx
  2662. strh. */
  2663. return 906;
  2664. }
  2665. }
  2666. else
  2667. {
  2668. /* 33222222222211111111110000000000
  2669. 10987654321098765432109876543210
  2670. 1x111000001xxxxxxxxx10xxxxxxxxxx
  2671. str. */
  2672. return 909;
  2673. }
  2674. }
  2675. else
  2676. {
  2677. if (((word >> 31) & 0x1) == 0)
  2678. {
  2679. if (((word >> 30) & 0x1) == 0)
  2680. {
  2681. /* 33222222222211111111110000000000
  2682. 10987654321098765432109876543210
  2683. 00111000011xxxxxxxxx10xxxxxxxxxx
  2684. ldrb. */
  2685. return 902;
  2686. }
  2687. else
  2688. {
  2689. /* 33222222222211111111110000000000
  2690. 10987654321098765432109876543210
  2691. 01111000011xxxxxxxxx10xxxxxxxxxx
  2692. ldrh. */
  2693. return 907;
  2694. }
  2695. }
  2696. else
  2697. {
  2698. /* 33222222222211111111110000000000
  2699. 10987654321098765432109876543210
  2700. 1x111000011xxxxxxxxx10xxxxxxxxxx
  2701. ldr. */
  2702. return 910;
  2703. }
  2704. }
  2705. }
  2706. else
  2707. {
  2708. if (((word >> 30) & 0x1) == 0)
  2709. {
  2710. if (((word >> 31) & 0x1) == 0)
  2711. {
  2712. /* 33222222222211111111110000000000
  2713. 10987654321098765432109876543210
  2714. 001110001x1xxxxxxxxx10xxxxxxxxxx
  2715. ldrsb. */
  2716. return 903;
  2717. }
  2718. else
  2719. {
  2720. /* 33222222222211111111110000000000
  2721. 10987654321098765432109876543210
  2722. 101110001x1xxxxxxxxx10xxxxxxxxxx
  2723. ldrsw. */
  2724. return 911;
  2725. }
  2726. }
  2727. else
  2728. {
  2729. if (((word >> 31) & 0x1) == 0)
  2730. {
  2731. /* 33222222222211111111110000000000
  2732. 10987654321098765432109876543210
  2733. 011110001x1xxxxxxxxx10xxxxxxxxxx
  2734. ldrsh. */
  2735. return 908;
  2736. }
  2737. else
  2738. {
  2739. /* 33222222222211111111110000000000
  2740. 10987654321098765432109876543210
  2741. 111110001x1xxxxxxxxx10xxxxxxxxxx
  2742. prfm. */
  2743. return 912;
  2744. }
  2745. }
  2746. }
  2747. }
  2748. }
  2749. }
  2750. else
  2751. {
  2752. if (((word >> 21) & 0x1) == 0)
  2753. {
  2754. if (((word >> 23) & 0x1) == 0)
  2755. {
  2756. if (((word >> 22) & 0x1) == 0)
  2757. {
  2758. if (((word >> 31) & 0x1) == 0)
  2759. {
  2760. if (((word >> 30) & 0x1) == 0)
  2761. {
  2762. /* 33222222222211111111110000000000
  2763. 10987654321098765432109876543210
  2764. 00111000000xxxxxxxxxx1xxxxxxxxxx
  2765. strb. */
  2766. return 870;
  2767. }
  2768. else
  2769. {
  2770. /* 33222222222211111111110000000000
  2771. 10987654321098765432109876543210
  2772. 01111000000xxxxxxxxxx1xxxxxxxxxx
  2773. strh. */
  2774. return 875;
  2775. }
  2776. }
  2777. else
  2778. {
  2779. /* 33222222222211111111110000000000
  2780. 10987654321098765432109876543210
  2781. 1x111000000xxxxxxxxxx1xxxxxxxxxx
  2782. str. */
  2783. return 878;
  2784. }
  2785. }
  2786. else
  2787. {
  2788. if (((word >> 31) & 0x1) == 0)
  2789. {
  2790. if (((word >> 30) & 0x1) == 0)
  2791. {
  2792. /* 33222222222211111111110000000000
  2793. 10987654321098765432109876543210
  2794. 00111000010xxxxxxxxxx1xxxxxxxxxx
  2795. ldrb. */
  2796. return 871;
  2797. }
  2798. else
  2799. {
  2800. /* 33222222222211111111110000000000
  2801. 10987654321098765432109876543210
  2802. 01111000010xxxxxxxxxx1xxxxxxxxxx
  2803. ldrh. */
  2804. return 876;
  2805. }
  2806. }
  2807. else
  2808. {
  2809. /* 33222222222211111111110000000000
  2810. 10987654321098765432109876543210
  2811. 1x111000010xxxxxxxxxx1xxxxxxxxxx
  2812. ldr. */
  2813. return 879;
  2814. }
  2815. }
  2816. }
  2817. else
  2818. {
  2819. if (((word >> 30) & 0x1) == 0)
  2820. {
  2821. if (((word >> 31) & 0x1) == 0)
  2822. {
  2823. /* 33222222222211111111110000000000
  2824. 10987654321098765432109876543210
  2825. 001110001x0xxxxxxxxxx1xxxxxxxxxx
  2826. ldrsb. */
  2827. return 872;
  2828. }
  2829. else
  2830. {
  2831. /* 33222222222211111111110000000000
  2832. 10987654321098765432109876543210
  2833. 101110001x0xxxxxxxxxx1xxxxxxxxxx
  2834. ldrsw. */
  2835. return 880;
  2836. }
  2837. }
  2838. else
  2839. {
  2840. /* 33222222222211111111110000000000
  2841. 10987654321098765432109876543210
  2842. x11110001x0xxxxxxxxxx1xxxxxxxxxx
  2843. ldrsh. */
  2844. return 877;
  2845. }
  2846. }
  2847. }
  2848. else
  2849. {
  2850. if (((word >> 23) & 0x1) == 0)
  2851. {
  2852. /* 33222222222211111111110000000000
  2853. 10987654321098765432109876543210
  2854. xx1110000x1xxxxxxxxxx1xxxxxxxxxx
  2855. ldraa. */
  2856. return 935;
  2857. }
  2858. else
  2859. {
  2860. /* 33222222222211111111110000000000
  2861. 10987654321098765432109876543210
  2862. xx1110001x1xxxxxxxxxx1xxxxxxxxxx
  2863. ldrab. */
  2864. return 936;
  2865. }
  2866. }
  2867. }
  2868. }
  2869. }
  2870. else
  2871. {
  2872. if (((word >> 23) & 0x1) == 0)
  2873. {
  2874. if (((word >> 22) & 0x1) == 0)
  2875. {
  2876. if (((word >> 29) & 0x1) == 0)
  2877. {
  2878. if (((word >> 10) & 0x1) == 0)
  2879. {
  2880. if (((word >> 11) & 0x1) == 0)
  2881. {
  2882. if (((word >> 21) & 0x1) == 0)
  2883. {
  2884. if (((word >> 30) & 0x1) == 0)
  2885. {
  2886. if (((word >> 31) & 0x1) == 0)
  2887. {
  2888. /* 33222222222211111111110000000000
  2889. 10987654321098765432109876543210
  2890. 00011001000xxxxxxxxx00xxxxxxxxxx
  2891. stlurb. */
  2892. return 2454;
  2893. }
  2894. else
  2895. {
  2896. /* 33222222222211111111110000000000
  2897. 10987654321098765432109876543210
  2898. 10011001000xxxxxxxxx00xxxxxxxxxx
  2899. stlur. */
  2900. return 2462;
  2901. }
  2902. }
  2903. else
  2904. {
  2905. if (((word >> 31) & 0x1) == 0)
  2906. {
  2907. /* 33222222222211111111110000000000
  2908. 10987654321098765432109876543210
  2909. 01011001000xxxxxxxxx00xxxxxxxxxx
  2910. stlurh. */
  2911. return 2458;
  2912. }
  2913. else
  2914. {
  2915. /* 33222222222211111111110000000000
  2916. 10987654321098765432109876543210
  2917. 11011001000xxxxxxxxx00xxxxxxxxxx
  2918. stlur. */
  2919. return 2465;
  2920. }
  2921. }
  2922. }
  2923. else
  2924. {
  2925. /* 33222222222211111111110000000000
  2926. 10987654321098765432109876543210
  2927. xx011001001xxxxxxxxx00xxxxxxxxxx
  2928. stzgm. */
  2929. return 964;
  2930. }
  2931. }
  2932. else
  2933. {
  2934. /* 33222222222211111111110000000000
  2935. 10987654321098765432109876543210
  2936. xx01100100xxxxxxxxxx10xxxxxxxxxx
  2937. stg. */
  2938. return 881;
  2939. }
  2940. }
  2941. else
  2942. {
  2943. if (((word >> 21) & 0x1) == 0)
  2944. {
  2945. if (((word >> 12) & 0x1) == 0)
  2946. {
  2947. if (((word >> 13) & 0x1) == 0)
  2948. {
  2949. if (((word >> 14) & 0x1) == 0)
  2950. {
  2951. if (((word >> 15) & 0x1) == 0)
  2952. {
  2953. /* 33222222222211111111110000000000
  2954. 10987654321098765432109876543210
  2955. xx011001000xxxxx0000x1xxxxxxxxxx
  2956. cpyfp. */
  2957. return 2514;
  2958. }
  2959. else
  2960. {
  2961. /* 33222222222211111111110000000000
  2962. 10987654321098765432109876543210
  2963. xx011001000xxxxx1000x1xxxxxxxxxx
  2964. cpyfprn. */
  2965. return 2520;
  2966. }
  2967. }
  2968. else
  2969. {
  2970. if (((word >> 15) & 0x1) == 0)
  2971. {
  2972. /* 33222222222211111111110000000000
  2973. 10987654321098765432109876543210
  2974. xx011001000xxxxx0100x1xxxxxxxxxx
  2975. cpyfpwn. */
  2976. return 2517;
  2977. }
  2978. else
  2979. {
  2980. /* 33222222222211111111110000000000
  2981. 10987654321098765432109876543210
  2982. xx011001000xxxxx1100x1xxxxxxxxxx
  2983. cpyfpn. */
  2984. return 2523;
  2985. }
  2986. }
  2987. }
  2988. else
  2989. {
  2990. if (((word >> 14) & 0x1) == 0)
  2991. {
  2992. if (((word >> 15) & 0x1) == 0)
  2993. {
  2994. /* 33222222222211111111110000000000
  2995. 10987654321098765432109876543210
  2996. xx011001000xxxxx0010x1xxxxxxxxxx
  2997. cpyfprt. */
  2998. return 2538;
  2999. }
  3000. else
  3001. {
  3002. /* 33222222222211111111110000000000
  3003. 10987654321098765432109876543210
  3004. xx011001000xxxxx1010x1xxxxxxxxxx
  3005. cpyfprtrn. */
  3006. return 2544;
  3007. }
  3008. }
  3009. else
  3010. {
  3011. if (((word >> 15) & 0x1) == 0)
  3012. {
  3013. /* 33222222222211111111110000000000
  3014. 10987654321098765432109876543210
  3015. xx011001000xxxxx0110x1xxxxxxxxxx
  3016. cpyfprtwn. */
  3017. return 2541;
  3018. }
  3019. else
  3020. {
  3021. /* 33222222222211111111110000000000
  3022. 10987654321098765432109876543210
  3023. xx011001000xxxxx1110x1xxxxxxxxxx
  3024. cpyfprtn. */
  3025. return 2547;
  3026. }
  3027. }
  3028. }
  3029. }
  3030. else
  3031. {
  3032. if (((word >> 13) & 0x1) == 0)
  3033. {
  3034. if (((word >> 14) & 0x1) == 0)
  3035. {
  3036. if (((word >> 15) & 0x1) == 0)
  3037. {
  3038. /* 33222222222211111111110000000000
  3039. 10987654321098765432109876543210
  3040. xx011001000xxxxx0001x1xxxxxxxxxx
  3041. cpyfpwt. */
  3042. return 2526;
  3043. }
  3044. else
  3045. {
  3046. /* 33222222222211111111110000000000
  3047. 10987654321098765432109876543210
  3048. xx011001000xxxxx1001x1xxxxxxxxxx
  3049. cpyfpwtrn. */
  3050. return 2532;
  3051. }
  3052. }
  3053. else
  3054. {
  3055. if (((word >> 15) & 0x1) == 0)
  3056. {
  3057. /* 33222222222211111111110000000000
  3058. 10987654321098765432109876543210
  3059. xx011001000xxxxx0101x1xxxxxxxxxx
  3060. cpyfpwtwn. */
  3061. return 2529;
  3062. }
  3063. else
  3064. {
  3065. /* 33222222222211111111110000000000
  3066. 10987654321098765432109876543210
  3067. xx011001000xxxxx1101x1xxxxxxxxxx
  3068. cpyfpwtn. */
  3069. return 2535;
  3070. }
  3071. }
  3072. }
  3073. else
  3074. {
  3075. if (((word >> 14) & 0x1) == 0)
  3076. {
  3077. if (((word >> 15) & 0x1) == 0)
  3078. {
  3079. /* 33222222222211111111110000000000
  3080. 10987654321098765432109876543210
  3081. xx011001000xxxxx0011x1xxxxxxxxxx
  3082. cpyfpt. */
  3083. return 2550;
  3084. }
  3085. else
  3086. {
  3087. /* 33222222222211111111110000000000
  3088. 10987654321098765432109876543210
  3089. xx011001000xxxxx1011x1xxxxxxxxxx
  3090. cpyfptrn. */
  3091. return 2556;
  3092. }
  3093. }
  3094. else
  3095. {
  3096. if (((word >> 15) & 0x1) == 0)
  3097. {
  3098. /* 33222222222211111111110000000000
  3099. 10987654321098765432109876543210
  3100. xx011001000xxxxx0111x1xxxxxxxxxx
  3101. cpyfptwn. */
  3102. return 2553;
  3103. }
  3104. else
  3105. {
  3106. /* 33222222222211111111110000000000
  3107. 10987654321098765432109876543210
  3108. xx011001000xxxxx1111x1xxxxxxxxxx
  3109. cpyfptn. */
  3110. return 2559;
  3111. }
  3112. }
  3113. }
  3114. }
  3115. }
  3116. else
  3117. {
  3118. /* 33222222222211111111110000000000
  3119. 10987654321098765432109876543210
  3120. xx011001001xxxxxxxxxx1xxxxxxxxxx
  3121. stg. */
  3122. return 885;
  3123. }
  3124. }
  3125. }
  3126. else
  3127. {
  3128. if (((word >> 31) & 0x1) == 0)
  3129. {
  3130. if (((word >> 30) & 0x1) == 0)
  3131. {
  3132. /* 33222222222211111111110000000000
  3133. 10987654321098765432109876543210
  3134. 0011100100xxxxxxxxxxxxxxxxxxxxxx
  3135. strb. */
  3136. return 889;
  3137. }
  3138. else
  3139. {
  3140. /* 33222222222211111111110000000000
  3141. 10987654321098765432109876543210
  3142. 0111100100xxxxxxxxxxxxxxxxxxxxxx
  3143. strh. */
  3144. return 894;
  3145. }
  3146. }
  3147. else
  3148. {
  3149. /* 33222222222211111111110000000000
  3150. 10987654321098765432109876543210
  3151. 1x11100100xxxxxxxxxxxxxxxxxxxxxx
  3152. str. */
  3153. return 897;
  3154. }
  3155. }
  3156. }
  3157. else
  3158. {
  3159. if (((word >> 29) & 0x1) == 0)
  3160. {
  3161. if (((word >> 10) & 0x1) == 0)
  3162. {
  3163. if (((word >> 11) & 0x1) == 0)
  3164. {
  3165. if (((word >> 21) & 0x1) == 0)
  3166. {
  3167. if (((word >> 30) & 0x1) == 0)
  3168. {
  3169. if (((word >> 31) & 0x1) == 0)
  3170. {
  3171. /* 33222222222211111111110000000000
  3172. 10987654321098765432109876543210
  3173. 00011001010xxxxxxxxx00xxxxxxxxxx
  3174. ldapurb. */
  3175. return 2455;
  3176. }
  3177. else
  3178. {
  3179. /* 33222222222211111111110000000000
  3180. 10987654321098765432109876543210
  3181. 10011001010xxxxxxxxx00xxxxxxxxxx
  3182. ldapur. */
  3183. return 2463;
  3184. }
  3185. }
  3186. else
  3187. {
  3188. if (((word >> 31) & 0x1) == 0)
  3189. {
  3190. /* 33222222222211111111110000000000
  3191. 10987654321098765432109876543210
  3192. 01011001010xxxxxxxxx00xxxxxxxxxx
  3193. ldapurh. */
  3194. return 2459;
  3195. }
  3196. else
  3197. {
  3198. /* 33222222222211111111110000000000
  3199. 10987654321098765432109876543210
  3200. 11011001010xxxxxxxxx00xxxxxxxxxx
  3201. ldapur. */
  3202. return 2466;
  3203. }
  3204. }
  3205. }
  3206. else
  3207. {
  3208. /* 33222222222211111111110000000000
  3209. 10987654321098765432109876543210
  3210. xx011001011xxxxxxxxx00xxxxxxxxxx
  3211. ldg. */
  3212. return 934;
  3213. }
  3214. }
  3215. else
  3216. {
  3217. /* 33222222222211111111110000000000
  3218. 10987654321098765432109876543210
  3219. xx01100101xxxxxxxxxx10xxxxxxxxxx
  3220. stzg. */
  3221. return 882;
  3222. }
  3223. }
  3224. else
  3225. {
  3226. if (((word >> 21) & 0x1) == 0)
  3227. {
  3228. if (((word >> 12) & 0x1) == 0)
  3229. {
  3230. if (((word >> 13) & 0x1) == 0)
  3231. {
  3232. if (((word >> 14) & 0x1) == 0)
  3233. {
  3234. if (((word >> 15) & 0x1) == 0)
  3235. {
  3236. /* 33222222222211111111110000000000
  3237. 10987654321098765432109876543210
  3238. xx011001010xxxxx0000x1xxxxxxxxxx
  3239. cpyfm. */
  3240. return 2515;
  3241. }
  3242. else
  3243. {
  3244. /* 33222222222211111111110000000000
  3245. 10987654321098765432109876543210
  3246. xx011001010xxxxx1000x1xxxxxxxxxx
  3247. cpyfmrn. */
  3248. return 2521;
  3249. }
  3250. }
  3251. else
  3252. {
  3253. if (((word >> 15) & 0x1) == 0)
  3254. {
  3255. /* 33222222222211111111110000000000
  3256. 10987654321098765432109876543210
  3257. xx011001010xxxxx0100x1xxxxxxxxxx
  3258. cpyfmwn. */
  3259. return 2518;
  3260. }
  3261. else
  3262. {
  3263. /* 33222222222211111111110000000000
  3264. 10987654321098765432109876543210
  3265. xx011001010xxxxx1100x1xxxxxxxxxx
  3266. cpyfmn. */
  3267. return 2524;
  3268. }
  3269. }
  3270. }
  3271. else
  3272. {
  3273. if (((word >> 14) & 0x1) == 0)
  3274. {
  3275. if (((word >> 15) & 0x1) == 0)
  3276. {
  3277. /* 33222222222211111111110000000000
  3278. 10987654321098765432109876543210
  3279. xx011001010xxxxx0010x1xxxxxxxxxx
  3280. cpyfmrt. */
  3281. return 2539;
  3282. }
  3283. else
  3284. {
  3285. /* 33222222222211111111110000000000
  3286. 10987654321098765432109876543210
  3287. xx011001010xxxxx1010x1xxxxxxxxxx
  3288. cpyfmrtrn. */
  3289. return 2545;
  3290. }
  3291. }
  3292. else
  3293. {
  3294. if (((word >> 15) & 0x1) == 0)
  3295. {
  3296. /* 33222222222211111111110000000000
  3297. 10987654321098765432109876543210
  3298. xx011001010xxxxx0110x1xxxxxxxxxx
  3299. cpyfmrtwn. */
  3300. return 2542;
  3301. }
  3302. else
  3303. {
  3304. /* 33222222222211111111110000000000
  3305. 10987654321098765432109876543210
  3306. xx011001010xxxxx1110x1xxxxxxxxxx
  3307. cpyfmrtn. */
  3308. return 2548;
  3309. }
  3310. }
  3311. }
  3312. }
  3313. else
  3314. {
  3315. if (((word >> 13) & 0x1) == 0)
  3316. {
  3317. if (((word >> 14) & 0x1) == 0)
  3318. {
  3319. if (((word >> 15) & 0x1) == 0)
  3320. {
  3321. /* 33222222222211111111110000000000
  3322. 10987654321098765432109876543210
  3323. xx011001010xxxxx0001x1xxxxxxxxxx
  3324. cpyfmwt. */
  3325. return 2527;
  3326. }
  3327. else
  3328. {
  3329. /* 33222222222211111111110000000000
  3330. 10987654321098765432109876543210
  3331. xx011001010xxxxx1001x1xxxxxxxxxx
  3332. cpyfmwtrn. */
  3333. return 2533;
  3334. }
  3335. }
  3336. else
  3337. {
  3338. if (((word >> 15) & 0x1) == 0)
  3339. {
  3340. /* 33222222222211111111110000000000
  3341. 10987654321098765432109876543210
  3342. xx011001010xxxxx0101x1xxxxxxxxxx
  3343. cpyfmwtwn. */
  3344. return 2530;
  3345. }
  3346. else
  3347. {
  3348. /* 33222222222211111111110000000000
  3349. 10987654321098765432109876543210
  3350. xx011001010xxxxx1101x1xxxxxxxxxx
  3351. cpyfmwtn. */
  3352. return 2536;
  3353. }
  3354. }
  3355. }
  3356. else
  3357. {
  3358. if (((word >> 14) & 0x1) == 0)
  3359. {
  3360. if (((word >> 15) & 0x1) == 0)
  3361. {
  3362. /* 33222222222211111111110000000000
  3363. 10987654321098765432109876543210
  3364. xx011001010xxxxx0011x1xxxxxxxxxx
  3365. cpyfmt. */
  3366. return 2551;
  3367. }
  3368. else
  3369. {
  3370. /* 33222222222211111111110000000000
  3371. 10987654321098765432109876543210
  3372. xx011001010xxxxx1011x1xxxxxxxxxx
  3373. cpyfmtrn. */
  3374. return 2557;
  3375. }
  3376. }
  3377. else
  3378. {
  3379. if (((word >> 15) & 0x1) == 0)
  3380. {
  3381. /* 33222222222211111111110000000000
  3382. 10987654321098765432109876543210
  3383. xx011001010xxxxx0111x1xxxxxxxxxx
  3384. cpyfmtwn. */
  3385. return 2554;
  3386. }
  3387. else
  3388. {
  3389. /* 33222222222211111111110000000000
  3390. 10987654321098765432109876543210
  3391. xx011001010xxxxx1111x1xxxxxxxxxx
  3392. cpyfmtn. */
  3393. return 2560;
  3394. }
  3395. }
  3396. }
  3397. }
  3398. }
  3399. else
  3400. {
  3401. /* 33222222222211111111110000000000
  3402. 10987654321098765432109876543210
  3403. xx011001011xxxxxxxxxx1xxxxxxxxxx
  3404. stzg. */
  3405. return 886;
  3406. }
  3407. }
  3408. }
  3409. else
  3410. {
  3411. if (((word >> 31) & 0x1) == 0)
  3412. {
  3413. if (((word >> 30) & 0x1) == 0)
  3414. {
  3415. /* 33222222222211111111110000000000
  3416. 10987654321098765432109876543210
  3417. 0011100101xxxxxxxxxxxxxxxxxxxxxx
  3418. ldrb. */
  3419. return 890;
  3420. }
  3421. else
  3422. {
  3423. /* 33222222222211111111110000000000
  3424. 10987654321098765432109876543210
  3425. 0111100101xxxxxxxxxxxxxxxxxxxxxx
  3426. ldrh. */
  3427. return 895;
  3428. }
  3429. }
  3430. else
  3431. {
  3432. /* 33222222222211111111110000000000
  3433. 10987654321098765432109876543210
  3434. 1x11100101xxxxxxxxxxxxxxxxxxxxxx
  3435. ldr. */
  3436. return 898;
  3437. }
  3438. }
  3439. }
  3440. }
  3441. else
  3442. {
  3443. if (((word >> 29) & 0x1) == 0)
  3444. {
  3445. if (((word >> 10) & 0x1) == 0)
  3446. {
  3447. if (((word >> 11) & 0x1) == 0)
  3448. {
  3449. if (((word >> 21) & 0x1) == 0)
  3450. {
  3451. if (((word >> 22) & 0x1) == 0)
  3452. {
  3453. if (((word >> 30) & 0x1) == 0)
  3454. {
  3455. if (((word >> 31) & 0x1) == 0)
  3456. {
  3457. /* 33222222222211111111110000000000
  3458. 10987654321098765432109876543210
  3459. 00011001100xxxxxxxxx00xxxxxxxxxx
  3460. ldapursb. */
  3461. return 2457;
  3462. }
  3463. else
  3464. {
  3465. /* 33222222222211111111110000000000
  3466. 10987654321098765432109876543210
  3467. 10011001100xxxxxxxxx00xxxxxxxxxx
  3468. ldapursw. */
  3469. return 2464;
  3470. }
  3471. }
  3472. else
  3473. {
  3474. /* 33222222222211111111110000000000
  3475. 10987654321098765432109876543210
  3476. x1011001100xxxxxxxxx00xxxxxxxxxx
  3477. ldapursh. */
  3478. return 2461;
  3479. }
  3480. }
  3481. else
  3482. {
  3483. if (((word >> 30) & 0x1) == 0)
  3484. {
  3485. /* 33222222222211111111110000000000
  3486. 10987654321098765432109876543210
  3487. x0011001110xxxxxxxxx00xxxxxxxxxx
  3488. ldapursb. */
  3489. return 2456;
  3490. }
  3491. else
  3492. {
  3493. /* 33222222222211111111110000000000
  3494. 10987654321098765432109876543210
  3495. x1011001110xxxxxxxxx00xxxxxxxxxx
  3496. ldapursh. */
  3497. return 2460;
  3498. }
  3499. }
  3500. }
  3501. else
  3502. {
  3503. if (((word >> 22) & 0x1) == 0)
  3504. {
  3505. /* 33222222222211111111110000000000
  3506. 10987654321098765432109876543210
  3507. xx011001101xxxxxxxxx00xxxxxxxxxx
  3508. stgm. */
  3509. return 963;
  3510. }
  3511. else
  3512. {
  3513. /* 33222222222211111111110000000000
  3514. 10987654321098765432109876543210
  3515. xx011001111xxxxxxxxx00xxxxxxxxxx
  3516. ldgm. */
  3517. return 962;
  3518. }
  3519. }
  3520. }
  3521. else
  3522. {
  3523. if (((word >> 22) & 0x1) == 0)
  3524. {
  3525. /* 33222222222211111111110000000000
  3526. 10987654321098765432109876543210
  3527. xx01100110xxxxxxxxxx10xxxxxxxxxx
  3528. st2g. */
  3529. return 883;
  3530. }
  3531. else
  3532. {
  3533. /* 33222222222211111111110000000000
  3534. 10987654321098765432109876543210
  3535. xx01100111xxxxxxxxxx10xxxxxxxxxx
  3536. stz2g. */
  3537. return 884;
  3538. }
  3539. }
  3540. }
  3541. else
  3542. {
  3543. if (((word >> 21) & 0x1) == 0)
  3544. {
  3545. if (((word >> 12) & 0x1) == 0)
  3546. {
  3547. if (((word >> 13) & 0x1) == 0)
  3548. {
  3549. if (((word >> 14) & 0x1) == 0)
  3550. {
  3551. if (((word >> 15) & 0x1) == 0)
  3552. {
  3553. if (((word >> 22) & 0x1) == 0)
  3554. {
  3555. /* 33222222222211111111110000000000
  3556. 10987654321098765432109876543210
  3557. xx011001100xxxxx0000x1xxxxxxxxxx
  3558. cpyfe. */
  3559. return 2516;
  3560. }
  3561. else
  3562. {
  3563. /* 33222222222211111111110000000000
  3564. 10987654321098765432109876543210
  3565. xx011001110xxxxx0000x1xxxxxxxxxx
  3566. setp. */
  3567. return 2610;
  3568. }
  3569. }
  3570. else
  3571. {
  3572. if (((word >> 22) & 0x1) == 0)
  3573. {
  3574. /* 33222222222211111111110000000000
  3575. 10987654321098765432109876543210
  3576. xx011001100xxxxx1000x1xxxxxxxxxx
  3577. cpyfern. */
  3578. return 2522;
  3579. }
  3580. else
  3581. {
  3582. /* 33222222222211111111110000000000
  3583. 10987654321098765432109876543210
  3584. xx011001110xxxxx1000x1xxxxxxxxxx
  3585. sete. */
  3586. return 2612;
  3587. }
  3588. }
  3589. }
  3590. else
  3591. {
  3592. if (((word >> 15) & 0x1) == 0)
  3593. {
  3594. if (((word >> 22) & 0x1) == 0)
  3595. {
  3596. /* 33222222222211111111110000000000
  3597. 10987654321098765432109876543210
  3598. xx011001100xxxxx0100x1xxxxxxxxxx
  3599. cpyfewn. */
  3600. return 2519;
  3601. }
  3602. else
  3603. {
  3604. /* 33222222222211111111110000000000
  3605. 10987654321098765432109876543210
  3606. xx011001110xxxxx0100x1xxxxxxxxxx
  3607. setm. */
  3608. return 2611;
  3609. }
  3610. }
  3611. else
  3612. {
  3613. /* 33222222222211111111110000000000
  3614. 10987654321098765432109876543210
  3615. xx0110011x0xxxxx1100x1xxxxxxxxxx
  3616. cpyfen. */
  3617. return 2525;
  3618. }
  3619. }
  3620. }
  3621. else
  3622. {
  3623. if (((word >> 14) & 0x1) == 0)
  3624. {
  3625. if (((word >> 15) & 0x1) == 0)
  3626. {
  3627. if (((word >> 22) & 0x1) == 0)
  3628. {
  3629. /* 33222222222211111111110000000000
  3630. 10987654321098765432109876543210
  3631. xx011001100xxxxx0010x1xxxxxxxxxx
  3632. cpyfert. */
  3633. return 2540;
  3634. }
  3635. else
  3636. {
  3637. /* 33222222222211111111110000000000
  3638. 10987654321098765432109876543210
  3639. xx011001110xxxxx0010x1xxxxxxxxxx
  3640. setpn. */
  3641. return 2616;
  3642. }
  3643. }
  3644. else
  3645. {
  3646. if (((word >> 22) & 0x1) == 0)
  3647. {
  3648. /* 33222222222211111111110000000000
  3649. 10987654321098765432109876543210
  3650. xx011001100xxxxx1010x1xxxxxxxxxx
  3651. cpyfertrn. */
  3652. return 2546;
  3653. }
  3654. else
  3655. {
  3656. /* 33222222222211111111110000000000
  3657. 10987654321098765432109876543210
  3658. xx011001110xxxxx1010x1xxxxxxxxxx
  3659. seten. */
  3660. return 2618;
  3661. }
  3662. }
  3663. }
  3664. else
  3665. {
  3666. if (((word >> 15) & 0x1) == 0)
  3667. {
  3668. if (((word >> 22) & 0x1) == 0)
  3669. {
  3670. /* 33222222222211111111110000000000
  3671. 10987654321098765432109876543210
  3672. xx011001100xxxxx0110x1xxxxxxxxxx
  3673. cpyfertwn. */
  3674. return 2543;
  3675. }
  3676. else
  3677. {
  3678. /* 33222222222211111111110000000000
  3679. 10987654321098765432109876543210
  3680. xx011001110xxxxx0110x1xxxxxxxxxx
  3681. setmn. */
  3682. return 2617;
  3683. }
  3684. }
  3685. else
  3686. {
  3687. /* 33222222222211111111110000000000
  3688. 10987654321098765432109876543210
  3689. xx0110011x0xxxxx1110x1xxxxxxxxxx
  3690. cpyfertn. */
  3691. return 2549;
  3692. }
  3693. }
  3694. }
  3695. }
  3696. else
  3697. {
  3698. if (((word >> 13) & 0x1) == 0)
  3699. {
  3700. if (((word >> 14) & 0x1) == 0)
  3701. {
  3702. if (((word >> 15) & 0x1) == 0)
  3703. {
  3704. if (((word >> 22) & 0x1) == 0)
  3705. {
  3706. /* 33222222222211111111110000000000
  3707. 10987654321098765432109876543210
  3708. xx011001100xxxxx0001x1xxxxxxxxxx
  3709. cpyfewt. */
  3710. return 2528;
  3711. }
  3712. else
  3713. {
  3714. /* 33222222222211111111110000000000
  3715. 10987654321098765432109876543210
  3716. xx011001110xxxxx0001x1xxxxxxxxxx
  3717. setpt. */
  3718. return 2613;
  3719. }
  3720. }
  3721. else
  3722. {
  3723. if (((word >> 22) & 0x1) == 0)
  3724. {
  3725. /* 33222222222211111111110000000000
  3726. 10987654321098765432109876543210
  3727. xx011001100xxxxx1001x1xxxxxxxxxx
  3728. cpyfewtrn. */
  3729. return 2534;
  3730. }
  3731. else
  3732. {
  3733. /* 33222222222211111111110000000000
  3734. 10987654321098765432109876543210
  3735. xx011001110xxxxx1001x1xxxxxxxxxx
  3736. setet. */
  3737. return 2615;
  3738. }
  3739. }
  3740. }
  3741. else
  3742. {
  3743. if (((word >> 15) & 0x1) == 0)
  3744. {
  3745. if (((word >> 22) & 0x1) == 0)
  3746. {
  3747. /* 33222222222211111111110000000000
  3748. 10987654321098765432109876543210
  3749. xx011001100xxxxx0101x1xxxxxxxxxx
  3750. cpyfewtwn. */
  3751. return 2531;
  3752. }
  3753. else
  3754. {
  3755. /* 33222222222211111111110000000000
  3756. 10987654321098765432109876543210
  3757. xx011001110xxxxx0101x1xxxxxxxxxx
  3758. setmt. */
  3759. return 2614;
  3760. }
  3761. }
  3762. else
  3763. {
  3764. /* 33222222222211111111110000000000
  3765. 10987654321098765432109876543210
  3766. xx0110011x0xxxxx1101x1xxxxxxxxxx
  3767. cpyfewtn. */
  3768. return 2537;
  3769. }
  3770. }
  3771. }
  3772. else
  3773. {
  3774. if (((word >> 14) & 0x1) == 0)
  3775. {
  3776. if (((word >> 15) & 0x1) == 0)
  3777. {
  3778. if (((word >> 22) & 0x1) == 0)
  3779. {
  3780. /* 33222222222211111111110000000000
  3781. 10987654321098765432109876543210
  3782. xx011001100xxxxx0011x1xxxxxxxxxx
  3783. cpyfet. */
  3784. return 2552;
  3785. }
  3786. else
  3787. {
  3788. /* 33222222222211111111110000000000
  3789. 10987654321098765432109876543210
  3790. xx011001110xxxxx0011x1xxxxxxxxxx
  3791. setptn. */
  3792. return 2619;
  3793. }
  3794. }
  3795. else
  3796. {
  3797. if (((word >> 22) & 0x1) == 0)
  3798. {
  3799. /* 33222222222211111111110000000000
  3800. 10987654321098765432109876543210
  3801. xx011001100xxxxx1011x1xxxxxxxxxx
  3802. cpyfetrn. */
  3803. return 2558;
  3804. }
  3805. else
  3806. {
  3807. /* 33222222222211111111110000000000
  3808. 10987654321098765432109876543210
  3809. xx011001110xxxxx1011x1xxxxxxxxxx
  3810. setetn. */
  3811. return 2621;
  3812. }
  3813. }
  3814. }
  3815. else
  3816. {
  3817. if (((word >> 15) & 0x1) == 0)
  3818. {
  3819. if (((word >> 22) & 0x1) == 0)
  3820. {
  3821. /* 33222222222211111111110000000000
  3822. 10987654321098765432109876543210
  3823. xx011001100xxxxx0111x1xxxxxxxxxx
  3824. cpyfetwn. */
  3825. return 2555;
  3826. }
  3827. else
  3828. {
  3829. /* 33222222222211111111110000000000
  3830. 10987654321098765432109876543210
  3831. xx011001110xxxxx0111x1xxxxxxxxxx
  3832. setmtn. */
  3833. return 2620;
  3834. }
  3835. }
  3836. else
  3837. {
  3838. /* 33222222222211111111110000000000
  3839. 10987654321098765432109876543210
  3840. xx0110011x0xxxxx1111x1xxxxxxxxxx
  3841. cpyfetn. */
  3842. return 2561;
  3843. }
  3844. }
  3845. }
  3846. }
  3847. }
  3848. else
  3849. {
  3850. if (((word >> 22) & 0x1) == 0)
  3851. {
  3852. /* 33222222222211111111110000000000
  3853. 10987654321098765432109876543210
  3854. xx011001101xxxxxxxxxx1xxxxxxxxxx
  3855. st2g. */
  3856. return 887;
  3857. }
  3858. else
  3859. {
  3860. /* 33222222222211111111110000000000
  3861. 10987654321098765432109876543210
  3862. xx011001111xxxxxxxxxx1xxxxxxxxxx
  3863. stz2g. */
  3864. return 888;
  3865. }
  3866. }
  3867. }
  3868. }
  3869. else
  3870. {
  3871. if (((word >> 30) & 0x1) == 0)
  3872. {
  3873. if (((word >> 31) & 0x1) == 0)
  3874. {
  3875. /* 33222222222211111111110000000000
  3876. 10987654321098765432109876543210
  3877. 001110011xxxxxxxxxxxxxxxxxxxxxxx
  3878. ldrsb. */
  3879. return 891;
  3880. }
  3881. else
  3882. {
  3883. /* 33222222222211111111110000000000
  3884. 10987654321098765432109876543210
  3885. 101110011xxxxxxxxxxxxxxxxxxxxxxx
  3886. ldrsw. */
  3887. return 899;
  3888. }
  3889. }
  3890. else
  3891. {
  3892. if (((word >> 31) & 0x1) == 0)
  3893. {
  3894. /* 33222222222211111111110000000000
  3895. 10987654321098765432109876543210
  3896. 011110011xxxxxxxxxxxxxxxxxxxxxxx
  3897. ldrsh. */
  3898. return 896;
  3899. }
  3900. else
  3901. {
  3902. /* 33222222222211111111110000000000
  3903. 10987654321098765432109876543210
  3904. 111110011xxxxxxxxxxxxxxxxxxxxxxx
  3905. prfm. */
  3906. return 900;
  3907. }
  3908. }
  3909. }
  3910. }
  3911. }
  3912. }
  3913. }
  3914. }
  3915. else
  3916. {
  3917. if (((word >> 24) & 0x1) == 0)
  3918. {
  3919. if (((word >> 27) & 0x1) == 0)
  3920. {
  3921. if (((word >> 23) & 0x1) == 0)
  3922. {
  3923. if (((word >> 29) & 0x1) == 0)
  3924. {
  3925. if (((word >> 30) & 0x1) == 0)
  3926. {
  3927. /* 33222222222211111111110000000000
  3928. 10987654321098765432109876543210
  3929. x00x00100xxxxxxxxxxxxxxxxxxxxxxx
  3930. and. */
  3931. return 995;
  3932. }
  3933. else
  3934. {
  3935. /* 33222222222211111111110000000000
  3936. 10987654321098765432109876543210
  3937. x10x00100xxxxxxxxxxxxxxxxxxxxxxx
  3938. eor. */
  3939. return 999;
  3940. }
  3941. }
  3942. else
  3943. {
  3944. if (((word >> 30) & 0x1) == 0)
  3945. {
  3946. /* 33222222222211111111110000000000
  3947. 10987654321098765432109876543210
  3948. x01x00100xxxxxxxxxxxxxxxxxxxxxxx
  3949. orr. */
  3950. return 997;
  3951. }
  3952. else
  3953. {
  3954. /* 33222222222211111111110000000000
  3955. 10987654321098765432109876543210
  3956. x11x00100xxxxxxxxxxxxxxxxxxxxxxx
  3957. ands. */
  3958. return 1000;
  3959. }
  3960. }
  3961. }
  3962. else
  3963. {
  3964. if (((word >> 29) & 0x1) == 0)
  3965. {
  3966. if (((word >> 30) & 0x1) == 0)
  3967. {
  3968. /* 33222222222211111111110000000000
  3969. 10987654321098765432109876543210
  3970. x00x00101xxxxxxxxxxxxxxxxxxxxxxx
  3971. movn. */
  3972. return 1186;
  3973. }
  3974. else
  3975. {
  3976. /* 33222222222211111111110000000000
  3977. 10987654321098765432109876543210
  3978. x10x00101xxxxxxxxxxxxxxxxxxxxxxx
  3979. movz. */
  3980. return 1188;
  3981. }
  3982. }
  3983. else
  3984. {
  3985. /* 33222222222211111111110000000000
  3986. 10987654321098765432109876543210
  3987. xx1x00101xxxxxxxxxxxxxxxxxxxxxxx
  3988. movk. */
  3989. return 1190;
  3990. }
  3991. }
  3992. }
  3993. else
  3994. {
  3995. if (((word >> 21) & 0x1) == 0)
  3996. {
  3997. if (((word >> 28) & 0x1) == 0)
  3998. {
  3999. if (((word >> 29) & 0x1) == 0)
  4000. {
  4001. if (((word >> 30) & 0x1) == 0)
  4002. {
  4003. /* 33222222222211111111110000000000
  4004. 10987654321098765432109876543210
  4005. x0001010xx0xxxxxxxxxxxxxxxxxxxxx
  4006. and. */
  4007. return 1002;
  4008. }
  4009. else
  4010. {
  4011. /* 33222222222211111111110000000000
  4012. 10987654321098765432109876543210
  4013. x1001010xx0xxxxxxxxxxxxxxxxxxxxx
  4014. eor. */
  4015. return 1009;
  4016. }
  4017. }
  4018. else
  4019. {
  4020. if (((word >> 30) & 0x1) == 0)
  4021. {
  4022. /* 33222222222211111111110000000000
  4023. 10987654321098765432109876543210
  4024. x0101010xx0xxxxxxxxxxxxxxxxxxxxx
  4025. orr. */
  4026. return 1004;
  4027. }
  4028. else
  4029. {
  4030. /* 33222222222211111111110000000000
  4031. 10987654321098765432109876543210
  4032. x1101010xx0xxxxxxxxxxxxxxxxxxxxx
  4033. ands. */
  4034. return 1011;
  4035. }
  4036. }
  4037. }
  4038. else
  4039. {
  4040. if (((word >> 10) & 0x1) == 0)
  4041. {
  4042. if (((word >> 11) & 0x1) == 0)
  4043. {
  4044. if (((word >> 22) & 0x1) == 0)
  4045. {
  4046. if (((word >> 23) & 0x1) == 0)
  4047. {
  4048. if (((word >> 29) & 0x1) == 0)
  4049. {
  4050. if (((word >> 30) & 0x1) == 0)
  4051. {
  4052. /* 33222222222211111111110000000000
  4053. 10987654321098765432109876543210
  4054. x0011010000xxxxxxxxx00xxxxxxxxxx
  4055. adc. */
  4056. return 0;
  4057. }
  4058. else
  4059. {
  4060. /* 33222222222211111111110000000000
  4061. 10987654321098765432109876543210
  4062. x1011010000xxxxxxxxx00xxxxxxxxxx
  4063. sbc. */
  4064. return 2;
  4065. }
  4066. }
  4067. else
  4068. {
  4069. if (((word >> 30) & 0x1) == 0)
  4070. {
  4071. /* 33222222222211111111110000000000
  4072. 10987654321098765432109876543210
  4073. x0111010000xxxxxxxxx00xxxxxxxxxx
  4074. adcs. */
  4075. return 1;
  4076. }
  4077. else
  4078. {
  4079. /* 33222222222211111111110000000000
  4080. 10987654321098765432109876543210
  4081. x1111010000xxxxxxxxx00xxxxxxxxxx
  4082. sbcs. */
  4083. return 4;
  4084. }
  4085. }
  4086. }
  4087. else
  4088. {
  4089. if (((word >> 30) & 0x1) == 0)
  4090. {
  4091. /* 33222222222211111111110000000000
  4092. 10987654321098765432109876543210
  4093. x0x11010100xxxxxxxxx00xxxxxxxxxx
  4094. csel. */
  4095. return 662;
  4096. }
  4097. else
  4098. {
  4099. /* 33222222222211111111110000000000
  4100. 10987654321098765432109876543210
  4101. x1x11010100xxxxxxxxx00xxxxxxxxxx
  4102. csinv. */
  4103. return 666;
  4104. }
  4105. }
  4106. }
  4107. else
  4108. {
  4109. if (((word >> 23) & 0x1) == 0)
  4110. {
  4111. if (((word >> 30) & 0x1) == 0)
  4112. {
  4113. /* 33222222222211111111110000000000
  4114. 10987654321098765432109876543210
  4115. x0x11010010xxxxxxxxx00xxxxxxxxxx
  4116. ccmn. */
  4117. return 660;
  4118. }
  4119. else
  4120. {
  4121. /* 33222222222211111111110000000000
  4122. 10987654321098765432109876543210
  4123. x1x11010010xxxxxxxxx00xxxxxxxxxx
  4124. ccmp. */
  4125. return 661;
  4126. }
  4127. }
  4128. else
  4129. {
  4130. if (((word >> 12) & 0x1) == 0)
  4131. {
  4132. if (((word >> 13) & 0x1) == 0)
  4133. {
  4134. if (((word >> 14) & 0x1) == 0)
  4135. {
  4136. if (((word >> 29) & 0x1) == 0)
  4137. {
  4138. if (((word >> 30) & 0x1) == 0)
  4139. {
  4140. /* 33222222222211111111110000000000
  4141. 10987654321098765432109876543210
  4142. x0011010110xxxxxx00000xxxxxxxxxx
  4143. subp. */
  4144. return 721;
  4145. }
  4146. else
  4147. {
  4148. if (((word >> 16) & 0x1) == 0)
  4149. {
  4150. /* 33222222222211111111110000000000
  4151. 10987654321098765432109876543210
  4152. x1011010110xxxx0x00000xxxxxxxxxx
  4153. rbit. */
  4154. return 685;
  4155. }
  4156. else
  4157. {
  4158. /* 33222222222211111111110000000000
  4159. 10987654321098765432109876543210
  4160. x1011010110xxxx1x00000xxxxxxxxxx
  4161. pacia. */
  4162. return 693;
  4163. }
  4164. }
  4165. }
  4166. else
  4167. {
  4168. /* 33222222222211111111110000000000
  4169. 10987654321098765432109876543210
  4170. xx111010110xxxxxx00000xxxxxxxxxx
  4171. subps. */
  4172. return 722;
  4173. }
  4174. }
  4175. else
  4176. {
  4177. if (((word >> 30) & 0x1) == 0)
  4178. {
  4179. /* 33222222222211111111110000000000
  4180. 10987654321098765432109876543210
  4181. x0x11010110xxxxxx10000xxxxxxxxxx
  4182. crc32b. */
  4183. return 727;
  4184. }
  4185. else
  4186. {
  4187. /* 33222222222211111111110000000000
  4188. 10987654321098765432109876543210
  4189. x1x11010110xxxxxx10000xxxxxxxxxx
  4190. xpaci. */
  4191. return 709;
  4192. }
  4193. }
  4194. }
  4195. else
  4196. {
  4197. if (((word >> 30) & 0x1) == 0)
  4198. {
  4199. /* 33222222222211111111110000000000
  4200. 10987654321098765432109876543210
  4201. x0x11010110xxxxxxx1000xxxxxxxxxx
  4202. lslv. */
  4203. return 713;
  4204. }
  4205. else
  4206. {
  4207. /* 33222222222211111111110000000000
  4208. 10987654321098765432109876543210
  4209. x1x11010110xxxxxxx1000xxxxxxxxxx
  4210. paciza. */
  4211. return 701;
  4212. }
  4213. }
  4214. }
  4215. else
  4216. {
  4217. if (((word >> 13) & 0x1) == 0)
  4218. {
  4219. if (((word >> 14) & 0x1) == 0)
  4220. {
  4221. if (((word >> 30) & 0x1) == 0)
  4222. {
  4223. /* 33222222222211111111110000000000
  4224. 10987654321098765432109876543210
  4225. x0x11010110xxxxxx00100xxxxxxxxxx
  4226. irg. */
  4227. return 724;
  4228. }
  4229. else
  4230. {
  4231. if (((word >> 16) & 0x1) == 0)
  4232. {
  4233. /* 33222222222211111111110000000000
  4234. 10987654321098765432109876543210
  4235. x1x11010110xxxx0x00100xxxxxxxxxx
  4236. clz. */
  4237. return 690;
  4238. }
  4239. else
  4240. {
  4241. /* 33222222222211111111110000000000
  4242. 10987654321098765432109876543210
  4243. x1x11010110xxxx1x00100xxxxxxxxxx
  4244. autia. */
  4245. return 697;
  4246. }
  4247. }
  4248. }
  4249. else
  4250. {
  4251. /* 33222222222211111111110000000000
  4252. 10987654321098765432109876543210
  4253. xxx11010110xxxxxx10100xxxxxxxxxx
  4254. crc32cb. */
  4255. return 731;
  4256. }
  4257. }
  4258. else
  4259. {
  4260. if (((word >> 30) & 0x1) == 0)
  4261. {
  4262. /* 33222222222211111111110000000000
  4263. 10987654321098765432109876543210
  4264. x0x11010110xxxxxxx1100xxxxxxxxxx
  4265. pacga. */
  4266. return 726;
  4267. }
  4268. else
  4269. {
  4270. /* 33222222222211111111110000000000
  4271. 10987654321098765432109876543210
  4272. x1x11010110xxxxxxx1100xxxxxxxxxx
  4273. autiza. */
  4274. return 705;
  4275. }
  4276. }
  4277. }
  4278. }
  4279. }
  4280. }
  4281. else
  4282. {
  4283. if (((word >> 22) & 0x1) == 0)
  4284. {
  4285. if (((word >> 14) & 0x1) == 0)
  4286. {
  4287. /* 33222222222211111111110000000000
  4288. 10987654321098765432109876543210
  4289. xxx11010x00xxxxxx0xx10xxxxxxxxxx
  4290. setf8. */
  4291. return 2452;
  4292. }
  4293. else
  4294. {
  4295. /* 33222222222211111111110000000000
  4296. 10987654321098765432109876543210
  4297. xxx11010x00xxxxxx1xx10xxxxxxxxxx
  4298. setf16. */
  4299. return 2453;
  4300. }
  4301. }
  4302. else
  4303. {
  4304. if (((word >> 23) & 0x1) == 0)
  4305. {
  4306. if (((word >> 30) & 0x1) == 0)
  4307. {
  4308. /* 33222222222211111111110000000000
  4309. 10987654321098765432109876543210
  4310. x0x11010010xxxxxxxxx10xxxxxxxxxx
  4311. ccmn. */
  4312. return 658;
  4313. }
  4314. else
  4315. {
  4316. /* 33222222222211111111110000000000
  4317. 10987654321098765432109876543210
  4318. x1x11010010xxxxxxxxx10xxxxxxxxxx
  4319. ccmp. */
  4320. return 659;
  4321. }
  4322. }
  4323. else
  4324. {
  4325. if (((word >> 12) & 0x1) == 0)
  4326. {
  4327. if (((word >> 13) & 0x1) == 0)
  4328. {
  4329. if (((word >> 14) & 0x1) == 0)
  4330. {
  4331. if (((word >> 30) & 0x1) == 0)
  4332. {
  4333. /* 33222222222211111111110000000000
  4334. 10987654321098765432109876543210
  4335. x0x11010110xxxxxx00010xxxxxxxxxx
  4336. udiv. */
  4337. return 711;
  4338. }
  4339. else
  4340. {
  4341. if (((word >> 16) & 0x1) == 0)
  4342. {
  4343. if (((word >> 31) & 0x1) == 0)
  4344. {
  4345. /* 33222222222211111111110000000000
  4346. 10987654321098765432109876543210
  4347. 01x11010110xxxx0x00010xxxxxxxxxx
  4348. rev. */
  4349. return 687;
  4350. }
  4351. else
  4352. {
  4353. /* 33222222222211111111110000000000
  4354. 10987654321098765432109876543210
  4355. 11x11010110xxxx0x00010xxxxxxxxxx
  4356. rev32. */
  4357. return 692;
  4358. }
  4359. }
  4360. else
  4361. {
  4362. /* 33222222222211111111110000000000
  4363. 10987654321098765432109876543210
  4364. x1x11010110xxxx1x00010xxxxxxxxxx
  4365. pacda. */
  4366. return 695;
  4367. }
  4368. }
  4369. }
  4370. else
  4371. {
  4372. /* 33222222222211111111110000000000
  4373. 10987654321098765432109876543210
  4374. xxx11010110xxxxxx10010xxxxxxxxxx
  4375. crc32w. */
  4376. return 729;
  4377. }
  4378. }
  4379. else
  4380. {
  4381. if (((word >> 30) & 0x1) == 0)
  4382. {
  4383. /* 33222222222211111111110000000000
  4384. 10987654321098765432109876543210
  4385. x0x11010110xxxxxxx1010xxxxxxxxxx
  4386. asrv. */
  4387. return 717;
  4388. }
  4389. else
  4390. {
  4391. /* 33222222222211111111110000000000
  4392. 10987654321098765432109876543210
  4393. x1x11010110xxxxxxx1010xxxxxxxxxx
  4394. pacdza. */
  4395. return 703;
  4396. }
  4397. }
  4398. }
  4399. else
  4400. {
  4401. if (((word >> 13) & 0x1) == 0)
  4402. {
  4403. if (((word >> 14) & 0x1) == 0)
  4404. {
  4405. /* 33222222222211111111110000000000
  4406. 10987654321098765432109876543210
  4407. xxx11010110xxxxxx00110xxxxxxxxxx
  4408. autda. */
  4409. return 699;
  4410. }
  4411. else
  4412. {
  4413. /* 33222222222211111111110000000000
  4414. 10987654321098765432109876543210
  4415. xxx11010110xxxxxx10110xxxxxxxxxx
  4416. crc32cw. */
  4417. return 733;
  4418. }
  4419. }
  4420. else
  4421. {
  4422. /* 33222222222211111111110000000000
  4423. 10987654321098765432109876543210
  4424. xxx11010110xxxxxxx1110xxxxxxxxxx
  4425. autdza. */
  4426. return 707;
  4427. }
  4428. }
  4429. }
  4430. }
  4431. }
  4432. }
  4433. else
  4434. {
  4435. if (((word >> 11) & 0x1) == 0)
  4436. {
  4437. if (((word >> 22) & 0x1) == 0)
  4438. {
  4439. if (((word >> 23) & 0x1) == 0)
  4440. {
  4441. /* 33222222222211111111110000000000
  4442. 10987654321098765432109876543210
  4443. xxx11010000xxxxxxxxx01xxxxxxxxxx
  4444. rmif. */
  4445. return 2451;
  4446. }
  4447. else
  4448. {
  4449. if (((word >> 30) & 0x1) == 0)
  4450. {
  4451. /* 33222222222211111111110000000000
  4452. 10987654321098765432109876543210
  4453. x0x11010100xxxxxxxxx01xxxxxxxxxx
  4454. csinc. */
  4455. return 663;
  4456. }
  4457. else
  4458. {
  4459. /* 33222222222211111111110000000000
  4460. 10987654321098765432109876543210
  4461. x1x11010100xxxxxxxxx01xxxxxxxxxx
  4462. csneg. */
  4463. return 669;
  4464. }
  4465. }
  4466. }
  4467. else
  4468. {
  4469. if (((word >> 12) & 0x1) == 0)
  4470. {
  4471. if (((word >> 13) & 0x1) == 0)
  4472. {
  4473. if (((word >> 14) & 0x1) == 0)
  4474. {
  4475. if (((word >> 16) & 0x1) == 0)
  4476. {
  4477. /* 33222222222211111111110000000000
  4478. 10987654321098765432109876543210
  4479. xxx11010x10xxxx0x00001xxxxxxxxxx
  4480. rev16. */
  4481. return 686;
  4482. }
  4483. else
  4484. {
  4485. /* 33222222222211111111110000000000
  4486. 10987654321098765432109876543210
  4487. xxx11010x10xxxx1x00001xxxxxxxxxx
  4488. pacib. */
  4489. return 694;
  4490. }
  4491. }
  4492. else
  4493. {
  4494. if (((word >> 30) & 0x1) == 0)
  4495. {
  4496. /* 33222222222211111111110000000000
  4497. 10987654321098765432109876543210
  4498. x0x11010x10xxxxxx10001xxxxxxxxxx
  4499. crc32h. */
  4500. return 728;
  4501. }
  4502. else
  4503. {
  4504. /* 33222222222211111111110000000000
  4505. 10987654321098765432109876543210
  4506. x1x11010x10xxxxxx10001xxxxxxxxxx
  4507. xpacd. */
  4508. return 710;
  4509. }
  4510. }
  4511. }
  4512. else
  4513. {
  4514. if (((word >> 30) & 0x1) == 0)
  4515. {
  4516. /* 33222222222211111111110000000000
  4517. 10987654321098765432109876543210
  4518. x0x11010x10xxxxxxx1001xxxxxxxxxx
  4519. lsrv. */
  4520. return 715;
  4521. }
  4522. else
  4523. {
  4524. /* 33222222222211111111110000000000
  4525. 10987654321098765432109876543210
  4526. x1x11010x10xxxxxxx1001xxxxxxxxxx
  4527. pacizb. */
  4528. return 702;
  4529. }
  4530. }
  4531. }
  4532. else
  4533. {
  4534. if (((word >> 13) & 0x1) == 0)
  4535. {
  4536. if (((word >> 14) & 0x1) == 0)
  4537. {
  4538. if (((word >> 30) & 0x1) == 0)
  4539. {
  4540. /* 33222222222211111111110000000000
  4541. 10987654321098765432109876543210
  4542. x0x11010x10xxxxxx00101xxxxxxxxxx
  4543. gmi. */
  4544. return 725;
  4545. }
  4546. else
  4547. {
  4548. if (((word >> 16) & 0x1) == 0)
  4549. {
  4550. /* 33222222222211111111110000000000
  4551. 10987654321098765432109876543210
  4552. x1x11010x10xxxx0x00101xxxxxxxxxx
  4553. cls. */
  4554. return 691;
  4555. }
  4556. else
  4557. {
  4558. /* 33222222222211111111110000000000
  4559. 10987654321098765432109876543210
  4560. x1x11010x10xxxx1x00101xxxxxxxxxx
  4561. autib. */
  4562. return 698;
  4563. }
  4564. }
  4565. }
  4566. else
  4567. {
  4568. /* 33222222222211111111110000000000
  4569. 10987654321098765432109876543210
  4570. xxx11010x10xxxxxx10101xxxxxxxxxx
  4571. crc32ch. */
  4572. return 732;
  4573. }
  4574. }
  4575. else
  4576. {
  4577. /* 33222222222211111111110000000000
  4578. 10987654321098765432109876543210
  4579. xxx11010x10xxxxxxx1101xxxxxxxxxx
  4580. autizb. */
  4581. return 706;
  4582. }
  4583. }
  4584. }
  4585. }
  4586. else
  4587. {
  4588. if (((word >> 12) & 0x1) == 0)
  4589. {
  4590. if (((word >> 13) & 0x1) == 0)
  4591. {
  4592. if (((word >> 14) & 0x1) == 0)
  4593. {
  4594. if (((word >> 30) & 0x1) == 0)
  4595. {
  4596. /* 33222222222211111111110000000000
  4597. 10987654321098765432109876543210
  4598. x0x11010xx0xxxxxx00011xxxxxxxxxx
  4599. sdiv. */
  4600. return 712;
  4601. }
  4602. else
  4603. {
  4604. if (((word >> 16) & 0x1) == 0)
  4605. {
  4606. /* 33222222222211111111110000000000
  4607. 10987654321098765432109876543210
  4608. x1x11010xx0xxxx0x00011xxxxxxxxxx
  4609. rev. */
  4610. return 688;
  4611. }
  4612. else
  4613. {
  4614. /* 33222222222211111111110000000000
  4615. 10987654321098765432109876543210
  4616. x1x11010xx0xxxx1x00011xxxxxxxxxx
  4617. pacdb. */
  4618. return 696;
  4619. }
  4620. }
  4621. }
  4622. else
  4623. {
  4624. /* 33222222222211111111110000000000
  4625. 10987654321098765432109876543210
  4626. xxx11010xx0xxxxxx10011xxxxxxxxxx
  4627. crc32x. */
  4628. return 730;
  4629. }
  4630. }
  4631. else
  4632. {
  4633. if (((word >> 30) & 0x1) == 0)
  4634. {
  4635. /* 33222222222211111111110000000000
  4636. 10987654321098765432109876543210
  4637. x0x11010xx0xxxxxxx1011xxxxxxxxxx
  4638. rorv. */
  4639. return 719;
  4640. }
  4641. else
  4642. {
  4643. /* 33222222222211111111110000000000
  4644. 10987654321098765432109876543210
  4645. x1x11010xx0xxxxxxx1011xxxxxxxxxx
  4646. pacdzb. */
  4647. return 704;
  4648. }
  4649. }
  4650. }
  4651. else
  4652. {
  4653. if (((word >> 13) & 0x1) == 0)
  4654. {
  4655. if (((word >> 14) & 0x1) == 0)
  4656. {
  4657. /* 33222222222211111111110000000000
  4658. 10987654321098765432109876543210
  4659. xxx11010xx0xxxxxx00111xxxxxxxxxx
  4660. autdb. */
  4661. return 700;
  4662. }
  4663. else
  4664. {
  4665. /* 33222222222211111111110000000000
  4666. 10987654321098765432109876543210
  4667. xxx11010xx0xxxxxx10111xxxxxxxxxx
  4668. crc32cx. */
  4669. return 734;
  4670. }
  4671. }
  4672. else
  4673. {
  4674. /* 33222222222211111111110000000000
  4675. 10987654321098765432109876543210
  4676. xxx11010xx0xxxxxxx1111xxxxxxxxxx
  4677. autdzb. */
  4678. return 708;
  4679. }
  4680. }
  4681. }
  4682. }
  4683. }
  4684. }
  4685. else
  4686. {
  4687. if (((word >> 29) & 0x1) == 0)
  4688. {
  4689. if (((word >> 30) & 0x1) == 0)
  4690. {
  4691. /* 33222222222211111111110000000000
  4692. 10987654321098765432109876543210
  4693. x00x1010xx1xxxxxxxxxxxxxxxxxxxxx
  4694. bic. */
  4695. return 1003;
  4696. }
  4697. else
  4698. {
  4699. /* 33222222222211111111110000000000
  4700. 10987654321098765432109876543210
  4701. x10x1010xx1xxxxxxxxxxxxxxxxxxxxx
  4702. eon. */
  4703. return 1010;
  4704. }
  4705. }
  4706. else
  4707. {
  4708. if (((word >> 30) & 0x1) == 0)
  4709. {
  4710. /* 33222222222211111111110000000000
  4711. 10987654321098765432109876543210
  4712. x01x1010xx1xxxxxxxxxxxxxxxxxxxxx
  4713. orn. */
  4714. return 1007;
  4715. }
  4716. else
  4717. {
  4718. /* 33222222222211111111110000000000
  4719. 10987654321098765432109876543210
  4720. x11x1010xx1xxxxxxxxxxxxxxxxxxxxx
  4721. bics. */
  4722. return 1013;
  4723. }
  4724. }
  4725. }
  4726. }
  4727. }
  4728. else
  4729. {
  4730. if (((word >> 27) & 0x1) == 0)
  4731. {
  4732. if (((word >> 23) & 0x1) == 0)
  4733. {
  4734. if (((word >> 29) & 0x1) == 0)
  4735. {
  4736. if (((word >> 30) & 0x1) == 0)
  4737. {
  4738. /* 33222222222211111111110000000000
  4739. 10987654321098765432109876543210
  4740. x00x00110xxxxxxxxxxxxxxxxxxxxxxx
  4741. sbfm. */
  4742. return 618;
  4743. }
  4744. else
  4745. {
  4746. /* 33222222222211111111110000000000
  4747. 10987654321098765432109876543210
  4748. x10x00110xxxxxxxxxxxxxxxxxxxxxxx
  4749. ubfm. */
  4750. return 629;
  4751. }
  4752. }
  4753. else
  4754. {
  4755. /* 33222222222211111111110000000000
  4756. 10987654321098765432109876543210
  4757. xx1x00110xxxxxxxxxxxxxxxxxxxxxxx
  4758. bfm. */
  4759. return 625;
  4760. }
  4761. }
  4762. else
  4763. {
  4764. /* 33222222222211111111110000000000
  4765. 10987654321098765432109876543210
  4766. xxxx00111xxxxxxxxxxxxxxxxxxxxxxx
  4767. extr. */
  4768. return 758;
  4769. }
  4770. }
  4771. else
  4772. {
  4773. if (((word >> 21) & 0x1) == 0)
  4774. {
  4775. if (((word >> 28) & 0x1) == 0)
  4776. {
  4777. if (((word >> 29) & 0x1) == 0)
  4778. {
  4779. if (((word >> 30) & 0x1) == 0)
  4780. {
  4781. /* 33222222222211111111110000000000
  4782. 10987654321098765432109876543210
  4783. x0001011xx0xxxxxxxxxxxxxxxxxxxxx
  4784. add. */
  4785. return 21;
  4786. }
  4787. else
  4788. {
  4789. /* 33222222222211111111110000000000
  4790. 10987654321098765432109876543210
  4791. x1001011xx0xxxxxxxxxxxxxxxxxxxxx
  4792. sub. */
  4793. return 24;
  4794. }
  4795. }
  4796. else
  4797. {
  4798. if (((word >> 30) & 0x1) == 0)
  4799. {
  4800. /* 33222222222211111111110000000000
  4801. 10987654321098765432109876543210
  4802. x0101011xx0xxxxxxxxxxxxxxxxxxxxx
  4803. adds. */
  4804. return 22;
  4805. }
  4806. else
  4807. {
  4808. /* 33222222222211111111110000000000
  4809. 10987654321098765432109876543210
  4810. x1101011xx0xxxxxxxxxxxxxxxxxxxxx
  4811. subs. */
  4812. return 26;
  4813. }
  4814. }
  4815. }
  4816. else
  4817. {
  4818. if (((word >> 15) & 0x1) == 0)
  4819. {
  4820. if (((word >> 22) & 0x1) == 0)
  4821. {
  4822. /* 33222222222211111111110000000000
  4823. 10987654321098765432109876543210
  4824. xxx11011x00xxxxx0xxxxxxxxxxxxxxx
  4825. madd. */
  4826. return 735;
  4827. }
  4828. else
  4829. {
  4830. if (((word >> 23) & 0x1) == 0)
  4831. {
  4832. /* 33222222222211111111110000000000
  4833. 10987654321098765432109876543210
  4834. xxx11011010xxxxx0xxxxxxxxxxxxxxx
  4835. smulh. */
  4836. return 743;
  4837. }
  4838. else
  4839. {
  4840. /* 33222222222211111111110000000000
  4841. 10987654321098765432109876543210
  4842. xxx11011110xxxxx0xxxxxxxxxxxxxxx
  4843. umulh. */
  4844. return 748;
  4845. }
  4846. }
  4847. }
  4848. else
  4849. {
  4850. /* 33222222222211111111110000000000
  4851. 10987654321098765432109876543210
  4852. xxx11011xx0xxxxx1xxxxxxxxxxxxxxx
  4853. msub. */
  4854. return 737;
  4855. }
  4856. }
  4857. }
  4858. else
  4859. {
  4860. if (((word >> 23) & 0x1) == 0)
  4861. {
  4862. if (((word >> 28) & 0x1) == 0)
  4863. {
  4864. if (((word >> 29) & 0x1) == 0)
  4865. {
  4866. if (((word >> 30) & 0x1) == 0)
  4867. {
  4868. /* 33222222222211111111110000000000
  4869. 10987654321098765432109876543210
  4870. x00010110x1xxxxxxxxxxxxxxxxxxxxx
  4871. add. */
  4872. return 6;
  4873. }
  4874. else
  4875. {
  4876. /* 33222222222211111111110000000000
  4877. 10987654321098765432109876543210
  4878. x10010110x1xxxxxxxxxxxxxxxxxxxxx
  4879. sub. */
  4880. return 9;
  4881. }
  4882. }
  4883. else
  4884. {
  4885. if (((word >> 30) & 0x1) == 0)
  4886. {
  4887. /* 33222222222211111111110000000000
  4888. 10987654321098765432109876543210
  4889. x01010110x1xxxxxxxxxxxxxxxxxxxxx
  4890. adds. */
  4891. return 7;
  4892. }
  4893. else
  4894. {
  4895. /* 33222222222211111111110000000000
  4896. 10987654321098765432109876543210
  4897. x11010110x1xxxxxxxxxxxxxxxxxxxxx
  4898. subs. */
  4899. return 10;
  4900. }
  4901. }
  4902. }
  4903. else
  4904. {
  4905. if (((word >> 15) & 0x1) == 0)
  4906. {
  4907. /* 33222222222211111111110000000000
  4908. 10987654321098765432109876543210
  4909. xxx110110x1xxxxx0xxxxxxxxxxxxxxx
  4910. smaddl. */
  4911. return 739;
  4912. }
  4913. else
  4914. {
  4915. /* 33222222222211111111110000000000
  4916. 10987654321098765432109876543210
  4917. xxx110110x1xxxxx1xxxxxxxxxxxxxxx
  4918. smsubl. */
  4919. return 741;
  4920. }
  4921. }
  4922. }
  4923. else
  4924. {
  4925. if (((word >> 15) & 0x1) == 0)
  4926. {
  4927. /* 33222222222211111111110000000000
  4928. 10987654321098765432109876543210
  4929. xxxx10111x1xxxxx0xxxxxxxxxxxxxxx
  4930. umaddl. */
  4931. return 744;
  4932. }
  4933. else
  4934. {
  4935. /* 33222222222211111111110000000000
  4936. 10987654321098765432109876543210
  4937. xxxx10111x1xxxxx1xxxxxxxxxxxxxxx
  4938. umsubl. */
  4939. return 746;
  4940. }
  4941. }
  4942. }
  4943. }
  4944. }
  4945. }
  4946. }
  4947. else
  4948. {
  4949. if (((word >> 27) & 0x1) == 0)
  4950. {
  4951. if (((word >> 28) & 0x1) == 0)
  4952. {
  4953. if (((word >> 24) & 0x1) == 0)
  4954. {
  4955. if (((word >> 29) & 0x1) == 0)
  4956. {
  4957. if (((word >> 13) & 0x1) == 0)
  4958. {
  4959. if (((word >> 14) & 0x1) == 0)
  4960. {
  4961. if (((word >> 15) & 0x1) == 0)
  4962. {
  4963. if (((word >> 21) & 0x1) == 0)
  4964. {
  4965. if (((word >> 30) & 0x1) == 0)
  4966. {
  4967. if (((word >> 31) & 0x1) == 0)
  4968. {
  4969. if (((word >> 16) & 0x1) == 0)
  4970. {
  4971. if (((word >> 17) & 0x1) == 0)
  4972. {
  4973. if (((word >> 18) & 0x1) == 0)
  4974. {
  4975. if (((word >> 19) & 0x1) == 0)
  4976. {
  4977. if (((word >> 20) & 0x1) == 0)
  4978. {
  4979. /* 33222222222211111111110000000000
  4980. 10987654321098765432109876543210
  4981. 000001x0xx000000000xxxxxxxxxxxxx
  4982. add. */
  4983. return 1291;
  4984. }
  4985. else
  4986. {
  4987. /* 33222222222211111111110000000000
  4988. 10987654321098765432109876543210
  4989. 000001x0xx010000000xxxxxxxxxxxxx
  4990. mul. */
  4991. return 1760;
  4992. }
  4993. }
  4994. else
  4995. {
  4996. if (((word >> 20) & 0x1) == 0)
  4997. {
  4998. /* 33222222222211111111110000000000
  4999. 10987654321098765432109876543210
  5000. 000001x0xx001000000xxxxxxxxxxxxx
  5001. smax. */
  5002. return 1839;
  5003. }
  5004. else
  5005. {
  5006. /* 33222222222211111111110000000000
  5007. 10987654321098765432109876543210
  5008. 000001x0xx011000000xxxxxxxxxxxxx
  5009. orr. */
  5010. return 1771;
  5011. }
  5012. }
  5013. }
  5014. else
  5015. {
  5016. if (((word >> 19) & 0x1) == 0)
  5017. {
  5018. /* 33222222222211111111110000000000
  5019. 10987654321098765432109876543210
  5020. 000001x0xx0x0100000xxxxxxxxxxxxx
  5021. sdiv. */
  5022. return 1830;
  5023. }
  5024. else
  5025. {
  5026. /* 33222222222211111111110000000000
  5027. 10987654321098765432109876543210
  5028. 000001x0xx0x1100000xxxxxxxxxxxxx
  5029. sabd. */
  5030. return 1821;
  5031. }
  5032. }
  5033. }
  5034. else
  5035. {
  5036. if (((word >> 18) & 0x1) == 0)
  5037. {
  5038. if (((word >> 19) & 0x1) == 0)
  5039. {
  5040. /* 33222222222211111111110000000000
  5041. 10987654321098765432109876543210
  5042. 000001x0xx0x0010000xxxxxxxxxxxxx
  5043. smulh. */
  5044. return 1844;
  5045. }
  5046. else
  5047. {
  5048. if (((word >> 20) & 0x1) == 0)
  5049. {
  5050. /* 33222222222211111111110000000000
  5051. 10987654321098765432109876543210
  5052. 000001x0xx001010000xxxxxxxxxxxxx
  5053. smin. */
  5054. return 1842;
  5055. }
  5056. else
  5057. {
  5058. /* 33222222222211111111110000000000
  5059. 10987654321098765432109876543210
  5060. 000001x0xx011010000xxxxxxxxxxxxx
  5061. and. */
  5062. return 1299;
  5063. }
  5064. }
  5065. }
  5066. else
  5067. {
  5068. /* 33222222222211111111110000000000
  5069. 10987654321098765432109876543210
  5070. 000001x0xx0xx110000xxxxxxxxxxxxx
  5071. sdivr. */
  5072. return 1831;
  5073. }
  5074. }
  5075. }
  5076. else
  5077. {
  5078. if (((word >> 17) & 0x1) == 0)
  5079. {
  5080. if (((word >> 18) & 0x1) == 0)
  5081. {
  5082. if (((word >> 19) & 0x1) == 0)
  5083. {
  5084. /* 33222222222211111111110000000000
  5085. 10987654321098765432109876543210
  5086. 000001x0xx0x0001000xxxxxxxxxxxxx
  5087. sub. */
  5088. return 1960;
  5089. }
  5090. else
  5091. {
  5092. if (((word >> 20) & 0x1) == 0)
  5093. {
  5094. /* 33222222222211111111110000000000
  5095. 10987654321098765432109876543210
  5096. 000001x0xx001001000xxxxxxxxxxxxx
  5097. umax. */
  5098. return 1988;
  5099. }
  5100. else
  5101. {
  5102. /* 33222222222211111111110000000000
  5103. 10987654321098765432109876543210
  5104. 000001x0xx011001000xxxxxxxxxxxxx
  5105. eor. */
  5106. return 1386;
  5107. }
  5108. }
  5109. }
  5110. else
  5111. {
  5112. if (((word >> 19) & 0x1) == 0)
  5113. {
  5114. /* 33222222222211111111110000000000
  5115. 10987654321098765432109876543210
  5116. 000001x0xx0x0101000xxxxxxxxxxxxx
  5117. udiv. */
  5118. return 1982;
  5119. }
  5120. else
  5121. {
  5122. /* 33222222222211111111110000000000
  5123. 10987654321098765432109876543210
  5124. 000001x0xx0x1101000xxxxxxxxxxxxx
  5125. uabd. */
  5126. return 1973;
  5127. }
  5128. }
  5129. }
  5130. else
  5131. {
  5132. if (((word >> 18) & 0x1) == 0)
  5133. {
  5134. if (((word >> 19) & 0x1) == 0)
  5135. {
  5136. if (((word >> 20) & 0x1) == 0)
  5137. {
  5138. /* 33222222222211111111110000000000
  5139. 10987654321098765432109876543210
  5140. 000001x0xx000011000xxxxxxxxxxxxx
  5141. subr. */
  5142. return 1962;
  5143. }
  5144. else
  5145. {
  5146. /* 33222222222211111111110000000000
  5147. 10987654321098765432109876543210
  5148. 000001x0xx010011000xxxxxxxxxxxxx
  5149. umulh. */
  5150. return 1993;
  5151. }
  5152. }
  5153. else
  5154. {
  5155. if (((word >> 20) & 0x1) == 0)
  5156. {
  5157. /* 33222222222211111111110000000000
  5158. 10987654321098765432109876543210
  5159. 000001x0xx001011000xxxxxxxxxxxxx
  5160. umin. */
  5161. return 1991;
  5162. }
  5163. else
  5164. {
  5165. /* 33222222222211111111110000000000
  5166. 10987654321098765432109876543210
  5167. 000001x0xx011011000xxxxxxxxxxxxx
  5168. bic. */
  5169. return 1311;
  5170. }
  5171. }
  5172. }
  5173. else
  5174. {
  5175. /* 33222222222211111111110000000000
  5176. 10987654321098765432109876543210
  5177. 000001x0xx0xx111000xxxxxxxxxxxxx
  5178. udivr. */
  5179. return 1983;
  5180. }
  5181. }
  5182. }
  5183. }
  5184. else
  5185. {
  5186. if (((word >> 23) & 0x1) == 0)
  5187. {
  5188. /* 33222222222211111111110000000000
  5189. 10987654321098765432109876543210
  5190. 100001x00x0xxxxx000xxxxxxxxxxxxx
  5191. ld1sb. */
  5192. return 1573;
  5193. }
  5194. else
  5195. {
  5196. /* 33222222222211111111110000000000
  5197. 10987654321098765432109876543210
  5198. 100001x01x0xxxxx000xxxxxxxxxxxxx
  5199. ld1sh. */
  5200. return 1584;
  5201. }
  5202. }
  5203. }
  5204. else
  5205. {
  5206. if (((word >> 31) & 0x1) == 0)
  5207. {
  5208. if (((word >> 12) & 0x1) == 0)
  5209. {
  5210. if (((word >> 10) & 0x1) == 0)
  5211. {
  5212. if (((word >> 11) & 0x1) == 0)
  5213. {
  5214. /* 33222222222211111111110000000000
  5215. 10987654321098765432109876543210
  5216. 010001x0xx0xxxxx000000xxxxxxxxxx
  5217. sdot. */
  5218. return 1832;
  5219. }
  5220. else
  5221. {
  5222. /* 33222222222211111111110000000000
  5223. 10987654321098765432109876543210
  5224. 010001x0xx0xxxxx000010xxxxxxxxxx
  5225. sqdmlalbt. */
  5226. return 2182;
  5227. }
  5228. }
  5229. else
  5230. {
  5231. if (((word >> 11) & 0x1) == 0)
  5232. {
  5233. /* 33222222222211111111110000000000
  5234. 10987654321098765432109876543210
  5235. 010001x0xx0xxxxx000001xxxxxxxxxx
  5236. udot. */
  5237. return 1984;
  5238. }
  5239. else
  5240. {
  5241. /* 33222222222211111111110000000000
  5242. 10987654321098765432109876543210
  5243. 010001x0xx0xxxxx000011xxxxxxxxxx
  5244. sqdmlslbt. */
  5245. return 2189;
  5246. }
  5247. }
  5248. }
  5249. else
  5250. {
  5251. /* 33222222222211111111110000000000
  5252. 10987654321098765432109876543210
  5253. 010001x0xx0xxxxx0001xxxxxxxxxxxx
  5254. cdot. */
  5255. return 2071;
  5256. }
  5257. }
  5258. else
  5259. {
  5260. if (((word >> 23) & 0x1) == 0)
  5261. {
  5262. /* 33222222222211111111110000000000
  5263. 10987654321098765432109876543210
  5264. 110001x00x0xxxxx000xxxxxxxxxxxxx
  5265. ld1sb. */
  5266. return 1577;
  5267. }
  5268. else
  5269. {
  5270. /* 33222222222211111111110000000000
  5271. 10987654321098765432109876543210
  5272. 110001x01x0xxxxx000xxxxxxxxxxxxx
  5273. ld1sh. */
  5274. return 1588;
  5275. }
  5276. }
  5277. }
  5278. }
  5279. else
  5280. {
  5281. if (((word >> 30) & 0x1) == 0)
  5282. {
  5283. if (((word >> 31) & 0x1) == 0)
  5284. {
  5285. if (((word >> 10) & 0x1) == 0)
  5286. {
  5287. if (((word >> 11) & 0x1) == 0)
  5288. {
  5289. if (((word >> 12) & 0x1) == 0)
  5290. {
  5291. /* 33222222222211111111110000000000
  5292. 10987654321098765432109876543210
  5293. 000001x0xx1xxxxx000000xxxxxxxxxx
  5294. add. */
  5295. return 1289;
  5296. }
  5297. else
  5298. {
  5299. /* 33222222222211111111110000000000
  5300. 10987654321098765432109876543210
  5301. 000001x0xx1xxxxx000100xxxxxxxxxx
  5302. sqadd. */
  5303. return 1846;
  5304. }
  5305. }
  5306. else
  5307. {
  5308. /* 33222222222211111111110000000000
  5309. 10987654321098765432109876543210
  5310. 000001x0xx1xxxxx000x10xxxxxxxxxx
  5311. sqsub. */
  5312. return 1876;
  5313. }
  5314. }
  5315. else
  5316. {
  5317. if (((word >> 11) & 0x1) == 0)
  5318. {
  5319. if (((word >> 12) & 0x1) == 0)
  5320. {
  5321. /* 33222222222211111111110000000000
  5322. 10987654321098765432109876543210
  5323. 000001x0xx1xxxxx000001xxxxxxxxxx
  5324. sub. */
  5325. return 1958;
  5326. }
  5327. else
  5328. {
  5329. /* 33222222222211111111110000000000
  5330. 10987654321098765432109876543210
  5331. 000001x0xx1xxxxx000101xxxxxxxxxx
  5332. uqadd. */
  5333. return 1994;
  5334. }
  5335. }
  5336. else
  5337. {
  5338. /* 33222222222211111111110000000000
  5339. 10987654321098765432109876543210
  5340. 000001x0xx1xxxxx000x11xxxxxxxxxx
  5341. uqsub. */
  5342. return 2024;
  5343. }
  5344. }
  5345. }
  5346. else
  5347. {
  5348. if (((word >> 23) & 0x1) == 0)
  5349. {
  5350. /* 33222222222211111111110000000000
  5351. 10987654321098765432109876543210
  5352. 100001x00x1xxxxx000xxxxxxxxxxxxx
  5353. prfb. */
  5354. return 1779;
  5355. }
  5356. else
  5357. {
  5358. /* 33222222222211111111110000000000
  5359. 10987654321098765432109876543210
  5360. 100001x01x1xxxxx000xxxxxxxxxxxxx
  5361. ld1sh. */
  5362. return 1585;
  5363. }
  5364. }
  5365. }
  5366. else
  5367. {
  5368. if (((word >> 23) & 0x1) == 0)
  5369. {
  5370. if (((word >> 31) & 0x1) == 0)
  5371. {
  5372. if (((word >> 10) & 0x1) == 0)
  5373. {
  5374. if (((word >> 11) & 0x1) == 0)
  5375. {
  5376. /* 33222222222211111111110000000000
  5377. 10987654321098765432109876543210
  5378. 010001x00x1xxxxx000x00xxxxxxxxxx
  5379. sqrdmlah. */
  5380. return 2207;
  5381. }
  5382. else
  5383. {
  5384. /* 33222222222211111111110000000000
  5385. 10987654321098765432109876543210
  5386. 010001x00x1xxxxx000x10xxxxxxxxxx
  5387. mla. */
  5388. return 2114;
  5389. }
  5390. }
  5391. else
  5392. {
  5393. if (((word >> 11) & 0x1) == 0)
  5394. {
  5395. /* 33222222222211111111110000000000
  5396. 10987654321098765432109876543210
  5397. 010001x00x1xxxxx000x01xxxxxxxxxx
  5398. sqrdmlsh. */
  5399. return 2211;
  5400. }
  5401. else
  5402. {
  5403. /* 33222222222211111111110000000000
  5404. 10987654321098765432109876543210
  5405. 010001x00x1xxxxx000x11xxxxxxxxxx
  5406. mls. */
  5407. return 2117;
  5408. }
  5409. }
  5410. }
  5411. else
  5412. {
  5413. /* 33222222222211111111110000000000
  5414. 10987654321098765432109876543210
  5415. 110001x00x1xxxxx000xxxxxxxxxxxxx
  5416. prfb. */
  5417. return 1780;
  5418. }
  5419. }
  5420. else
  5421. {
  5422. if (((word >> 31) & 0x1) == 0)
  5423. {
  5424. if (((word >> 10) & 0x1) == 0)
  5425. {
  5426. if (((word >> 11) & 0x1) == 0)
  5427. {
  5428. if (((word >> 12) & 0x1) == 0)
  5429. {
  5430. if (((word >> 22) & 0x1) == 0)
  5431. {
  5432. /* 33222222222211111111110000000000
  5433. 10987654321098765432109876543210
  5434. 010001x0101xxxxx000000xxxxxxxxxx
  5435. sdot. */
  5436. return 1833;
  5437. }
  5438. else
  5439. {
  5440. /* 33222222222211111111110000000000
  5441. 10987654321098765432109876543210
  5442. 010001x0111xxxxx000000xxxxxxxxxx
  5443. sdot. */
  5444. return 1834;
  5445. }
  5446. }
  5447. else
  5448. {
  5449. if (((word >> 22) & 0x1) == 0)
  5450. {
  5451. /* 33222222222211111111110000000000
  5452. 10987654321098765432109876543210
  5453. 010001x0101xxxxx000100xxxxxxxxxx
  5454. sqrdmlah. */
  5455. return 2208;
  5456. }
  5457. else
  5458. {
  5459. /* 33222222222211111111110000000000
  5460. 10987654321098765432109876543210
  5461. 010001x0111xxxxx000100xxxxxxxxxx
  5462. sqrdmlah. */
  5463. return 2209;
  5464. }
  5465. }
  5466. }
  5467. else
  5468. {
  5469. if (((word >> 12) & 0x1) == 0)
  5470. {
  5471. if (((word >> 22) & 0x1) == 0)
  5472. {
  5473. /* 33222222222211111111110000000000
  5474. 10987654321098765432109876543210
  5475. 010001x0101xxxxx000010xxxxxxxxxx
  5476. mla. */
  5477. return 2115;
  5478. }
  5479. else
  5480. {
  5481. /* 33222222222211111111110000000000
  5482. 10987654321098765432109876543210
  5483. 010001x0111xxxxx000010xxxxxxxxxx
  5484. mla. */
  5485. return 2116;
  5486. }
  5487. }
  5488. else
  5489. {
  5490. /* 33222222222211111111110000000000
  5491. 10987654321098765432109876543210
  5492. 010001x01x1xxxxx000110xxxxxxxxxx
  5493. usdot. */
  5494. return 2471;
  5495. }
  5496. }
  5497. }
  5498. else
  5499. {
  5500. if (((word >> 11) & 0x1) == 0)
  5501. {
  5502. if (((word >> 12) & 0x1) == 0)
  5503. {
  5504. if (((word >> 22) & 0x1) == 0)
  5505. {
  5506. /* 33222222222211111111110000000000
  5507. 10987654321098765432109876543210
  5508. 010001x0101xxxxx000001xxxxxxxxxx
  5509. udot. */
  5510. return 1985;
  5511. }
  5512. else
  5513. {
  5514. /* 33222222222211111111110000000000
  5515. 10987654321098765432109876543210
  5516. 010001x0111xxxxx000001xxxxxxxxxx
  5517. udot. */
  5518. return 1986;
  5519. }
  5520. }
  5521. else
  5522. {
  5523. if (((word >> 22) & 0x1) == 0)
  5524. {
  5525. /* 33222222222211111111110000000000
  5526. 10987654321098765432109876543210
  5527. 010001x0101xxxxx000101xxxxxxxxxx
  5528. sqrdmlsh. */
  5529. return 2212;
  5530. }
  5531. else
  5532. {
  5533. /* 33222222222211111111110000000000
  5534. 10987654321098765432109876543210
  5535. 010001x0111xxxxx000101xxxxxxxxxx
  5536. sqrdmlsh. */
  5537. return 2213;
  5538. }
  5539. }
  5540. }
  5541. else
  5542. {
  5543. if (((word >> 12) & 0x1) == 0)
  5544. {
  5545. if (((word >> 22) & 0x1) == 0)
  5546. {
  5547. /* 33222222222211111111110000000000
  5548. 10987654321098765432109876543210
  5549. 010001x0101xxxxx000011xxxxxxxxxx
  5550. mls. */
  5551. return 2118;
  5552. }
  5553. else
  5554. {
  5555. /* 33222222222211111111110000000000
  5556. 10987654321098765432109876543210
  5557. 010001x0111xxxxx000011xxxxxxxxxx
  5558. mls. */
  5559. return 2119;
  5560. }
  5561. }
  5562. else
  5563. {
  5564. /* 33222222222211111111110000000000
  5565. 10987654321098765432109876543210
  5566. 010001x01x1xxxxx000111xxxxxxxxxx
  5567. sudot. */
  5568. return 2472;
  5569. }
  5570. }
  5571. }
  5572. }
  5573. else
  5574. {
  5575. /* 33222222222211111111110000000000
  5576. 10987654321098765432109876543210
  5577. 110001x01x1xxxxx000xxxxxxxxxxxxx
  5578. ld1sh. */
  5579. return 1589;
  5580. }
  5581. }
  5582. }
  5583. }
  5584. }
  5585. else
  5586. {
  5587. if (((word >> 31) & 0x1) == 0)
  5588. {
  5589. if (((word >> 21) & 0x1) == 0)
  5590. {
  5591. if (((word >> 16) & 0x1) == 0)
  5592. {
  5593. if (((word >> 17) & 0x1) == 0)
  5594. {
  5595. if (((word >> 18) & 0x1) == 0)
  5596. {
  5597. if (((word >> 19) & 0x1) == 0)
  5598. {
  5599. if (((word >> 20) & 0x1) == 0)
  5600. {
  5601. /* 33222222222211111111110000000000
  5602. 10987654321098765432109876543210
  5603. 0x0001x0xx000000100xxxxxxxxxxxxx
  5604. asr. */
  5605. return 1307;
  5606. }
  5607. else
  5608. {
  5609. if (((word >> 30) & 0x1) == 0)
  5610. {
  5611. /* 33222222222211111111110000000000
  5612. 10987654321098765432109876543210
  5613. 000001x0xx010000100xxxxxxxxxxxxx
  5614. asr. */
  5615. return 1305;
  5616. }
  5617. else
  5618. {
  5619. /* 33222222222211111111110000000000
  5620. 10987654321098765432109876543210
  5621. 010001x0xx010000100xxxxxxxxxxxxx
  5622. shadd. */
  5623. return 2148;
  5624. }
  5625. }
  5626. }
  5627. else
  5628. {
  5629. if (((word >> 20) & 0x1) == 0)
  5630. {
  5631. /* 33222222222211111111110000000000
  5632. 10987654321098765432109876543210
  5633. 0x0001x0xx001000100xxxxxxxxxxxxx
  5634. sqshl. */
  5635. return 2226;
  5636. }
  5637. else
  5638. {
  5639. if (((word >> 30) & 0x1) == 0)
  5640. {
  5641. /* 33222222222211111111110000000000
  5642. 10987654321098765432109876543210
  5643. 000001x0xx011000100xxxxxxxxxxxxx
  5644. asr. */
  5645. return 1306;
  5646. }
  5647. else
  5648. {
  5649. /* 33222222222211111111110000000000
  5650. 10987654321098765432109876543210
  5651. 010001x0xx011000100xxxxxxxxxxxxx
  5652. sqadd. */
  5653. return 2177;
  5654. }
  5655. }
  5656. }
  5657. }
  5658. else
  5659. {
  5660. if (((word >> 19) & 0x1) == 0)
  5661. {
  5662. if (((word >> 20) & 0x1) == 0)
  5663. {
  5664. /* 33222222222211111111110000000000
  5665. 10987654321098765432109876543210
  5666. 0x0001x0xx000100100xxxxxxxxxxxxx
  5667. asrd. */
  5668. return 1308;
  5669. }
  5670. else
  5671. {
  5672. if (((word >> 30) & 0x1) == 0)
  5673. {
  5674. /* 33222222222211111111110000000000
  5675. 10987654321098765432109876543210
  5676. 000001x0xx010100100xxxxxxxxxxxxx
  5677. asrr. */
  5678. return 1309;
  5679. }
  5680. else
  5681. {
  5682. /* 33222222222211111111110000000000
  5683. 10987654321098765432109876543210
  5684. 010001x0xx010100100xxxxxxxxxxxxx
  5685. srhadd. */
  5686. return 2239;
  5687. }
  5688. }
  5689. }
  5690. else
  5691. {
  5692. if (((word >> 20) & 0x1) == 0)
  5693. {
  5694. if (((word >> 30) & 0x1) == 0)
  5695. {
  5696. /* 33222222222211111111110000000000
  5697. 10987654321098765432109876543210
  5698. 000001x0xx001100100xxxxxxxxxxxxx
  5699. srshr. */
  5700. return 2243;
  5701. }
  5702. else
  5703. {
  5704. /* 33222222222211111111110000000000
  5705. 10987654321098765432109876543210
  5706. 010001x0xx001100100xxxxxxxxxxxxx
  5707. sqshlr. */
  5708. return 2227;
  5709. }
  5710. }
  5711. else
  5712. {
  5713. /* 33222222222211111111110000000000
  5714. 10987654321098765432109876543210
  5715. 0x0001x0xx011100100xxxxxxxxxxxxx
  5716. suqadd. */
  5717. return 2263;
  5718. }
  5719. }
  5720. }
  5721. }
  5722. else
  5723. {
  5724. if (((word >> 18) & 0x1) == 0)
  5725. {
  5726. if (((word >> 19) & 0x1) == 0)
  5727. {
  5728. if (((word >> 20) & 0x1) == 0)
  5729. {
  5730. /* 33222222222211111111110000000000
  5731. 10987654321098765432109876543210
  5732. 0x0001x0xx000010100xxxxxxxxxxxxx
  5733. srshl. */
  5734. return 2241;
  5735. }
  5736. else
  5737. {
  5738. /* 33222222222211111111110000000000
  5739. 10987654321098765432109876543210
  5740. 0x0001x0xx010010100xxxxxxxxxxxxx
  5741. shsub. */
  5742. return 2151;
  5743. }
  5744. }
  5745. else
  5746. {
  5747. if (((word >> 20) & 0x1) == 0)
  5748. {
  5749. /* 33222222222211111111110000000000
  5750. 10987654321098765432109876543210
  5751. 0x0001x0xx001010100xxxxxxxxxxxxx
  5752. sqrshl. */
  5753. return 2219;
  5754. }
  5755. else
  5756. {
  5757. /* 33222222222211111111110000000000
  5758. 10987654321098765432109876543210
  5759. 0x0001x0xx011010100xxxxxxxxxxxxx
  5760. sqsub. */
  5761. return 2233;
  5762. }
  5763. }
  5764. }
  5765. else
  5766. {
  5767. if (((word >> 19) & 0x1) == 0)
  5768. {
  5769. if (((word >> 20) & 0x1) == 0)
  5770. {
  5771. if (((word >> 30) & 0x1) == 0)
  5772. {
  5773. /* 33222222222211111111110000000000
  5774. 10987654321098765432109876543210
  5775. 000001x0xx000110100xxxxxxxxxxxxx
  5776. sqshl. */
  5777. return 2225;
  5778. }
  5779. else
  5780. {
  5781. /* 33222222222211111111110000000000
  5782. 10987654321098765432109876543210
  5783. 010001x0xx000110100xxxxxxxxxxxxx
  5784. srshlr. */
  5785. return 2242;
  5786. }
  5787. }
  5788. else
  5789. {
  5790. /* 33222222222211111111110000000000
  5791. 10987654321098765432109876543210
  5792. 0x0001x0xx010110100xxxxxxxxxxxxx
  5793. shsubr. */
  5794. return 2152;
  5795. }
  5796. }
  5797. else
  5798. {
  5799. if (((word >> 20) & 0x1) == 0)
  5800. {
  5801. /* 33222222222211111111110000000000
  5802. 10987654321098765432109876543210
  5803. 0x0001x0xx001110100xxxxxxxxxxxxx
  5804. sqrshlr. */
  5805. return 2220;
  5806. }
  5807. else
  5808. {
  5809. /* 33222222222211111111110000000000
  5810. 10987654321098765432109876543210
  5811. 0x0001x0xx011110100xxxxxxxxxxxxx
  5812. sqsubr. */
  5813. return 2234;
  5814. }
  5815. }
  5816. }
  5817. }
  5818. }
  5819. else
  5820. {
  5821. if (((word >> 17) & 0x1) == 0)
  5822. {
  5823. if (((word >> 18) & 0x1) == 0)
  5824. {
  5825. if (((word >> 19) & 0x1) == 0)
  5826. {
  5827. if (((word >> 20) & 0x1) == 0)
  5828. {
  5829. /* 33222222222211111111110000000000
  5830. 10987654321098765432109876543210
  5831. 0x0001x0xx000001100xxxxxxxxxxxxx
  5832. lsr. */
  5833. return 1751;
  5834. }
  5835. else
  5836. {
  5837. if (((word >> 30) & 0x1) == 0)
  5838. {
  5839. /* 33222222222211111111110000000000
  5840. 10987654321098765432109876543210
  5841. 000001x0xx010001100xxxxxxxxxxxxx
  5842. lsr. */
  5843. return 1749;
  5844. }
  5845. else
  5846. {
  5847. /* 33222222222211111111110000000000
  5848. 10987654321098765432109876543210
  5849. 010001x0xx010001100xxxxxxxxxxxxx
  5850. uhadd. */
  5851. return 2276;
  5852. }
  5853. }
  5854. }
  5855. else
  5856. {
  5857. if (((word >> 20) & 0x1) == 0)
  5858. {
  5859. /* 33222222222211111111110000000000
  5860. 10987654321098765432109876543210
  5861. 0x0001x0xx001001100xxxxxxxxxxxxx
  5862. uqshl. */
  5863. return 2306;
  5864. }
  5865. else
  5866. {
  5867. if (((word >> 30) & 0x1) == 0)
  5868. {
  5869. /* 33222222222211111111110000000000
  5870. 10987654321098765432109876543210
  5871. 000001x0xx011001100xxxxxxxxxxxxx
  5872. lsr. */
  5873. return 1750;
  5874. }
  5875. else
  5876. {
  5877. /* 33222222222211111111110000000000
  5878. 10987654321098765432109876543210
  5879. 010001x0xx011001100xxxxxxxxxxxxx
  5880. uqadd. */
  5881. return 2300;
  5882. }
  5883. }
  5884. }
  5885. }
  5886. else
  5887. {
  5888. if (((word >> 19) & 0x1) == 0)
  5889. {
  5890. if (((word >> 30) & 0x1) == 0)
  5891. {
  5892. /* 33222222222211111111110000000000
  5893. 10987654321098765432109876543210
  5894. 000001x0xx0x0101100xxxxxxxxxxxxx
  5895. lsrr. */
  5896. return 1752;
  5897. }
  5898. else
  5899. {
  5900. /* 33222222222211111111110000000000
  5901. 10987654321098765432109876543210
  5902. 010001x0xx0x0101100xxxxxxxxxxxxx
  5903. urhadd. */
  5904. return 2315;
  5905. }
  5906. }
  5907. else
  5908. {
  5909. if (((word >> 20) & 0x1) == 0)
  5910. {
  5911. if (((word >> 30) & 0x1) == 0)
  5912. {
  5913. /* 33222222222211111111110000000000
  5914. 10987654321098765432109876543210
  5915. 000001x0xx001101100xxxxxxxxxxxxx
  5916. urshr. */
  5917. return 2318;
  5918. }
  5919. else
  5920. {
  5921. /* 33222222222211111111110000000000
  5922. 10987654321098765432109876543210
  5923. 010001x0xx001101100xxxxxxxxxxxxx
  5924. uqshlr. */
  5925. return 2307;
  5926. }
  5927. }
  5928. else
  5929. {
  5930. /* 33222222222211111111110000000000
  5931. 10987654321098765432109876543210
  5932. 0x0001x0xx011101100xxxxxxxxxxxxx
  5933. usqadd. */
  5934. return 2323;
  5935. }
  5936. }
  5937. }
  5938. }
  5939. else
  5940. {
  5941. if (((word >> 18) & 0x1) == 0)
  5942. {
  5943. if (((word >> 19) & 0x1) == 0)
  5944. {
  5945. if (((word >> 20) & 0x1) == 0)
  5946. {
  5947. if (((word >> 30) & 0x1) == 0)
  5948. {
  5949. /* 33222222222211111111110000000000
  5950. 10987654321098765432109876543210
  5951. 000001x0xx000011100xxxxxxxxxxxxx
  5952. lsl. */
  5953. return 1745;
  5954. }
  5955. else
  5956. {
  5957. /* 33222222222211111111110000000000
  5958. 10987654321098765432109876543210
  5959. 010001x0xx000011100xxxxxxxxxxxxx
  5960. urshl. */
  5961. return 2316;
  5962. }
  5963. }
  5964. else
  5965. {
  5966. if (((word >> 30) & 0x1) == 0)
  5967. {
  5968. /* 33222222222211111111110000000000
  5969. 10987654321098765432109876543210
  5970. 000001x0xx010011100xxxxxxxxxxxxx
  5971. lsl. */
  5972. return 1743;
  5973. }
  5974. else
  5975. {
  5976. /* 33222222222211111111110000000000
  5977. 10987654321098765432109876543210
  5978. 010001x0xx010011100xxxxxxxxxxxxx
  5979. uhsub. */
  5980. return 2277;
  5981. }
  5982. }
  5983. }
  5984. else
  5985. {
  5986. if (((word >> 20) & 0x1) == 0)
  5987. {
  5988. /* 33222222222211111111110000000000
  5989. 10987654321098765432109876543210
  5990. 0x0001x0xx001011100xxxxxxxxxxxxx
  5991. uqrshl. */
  5992. return 2301;
  5993. }
  5994. else
  5995. {
  5996. if (((word >> 30) & 0x1) == 0)
  5997. {
  5998. /* 33222222222211111111110000000000
  5999. 10987654321098765432109876543210
  6000. 000001x0xx011011100xxxxxxxxxxxxx
  6001. lsl. */
  6002. return 1744;
  6003. }
  6004. else
  6005. {
  6006. /* 33222222222211111111110000000000
  6007. 10987654321098765432109876543210
  6008. 010001x0xx011011100xxxxxxxxxxxxx
  6009. uqsub. */
  6010. return 2310;
  6011. }
  6012. }
  6013. }
  6014. }
  6015. else
  6016. {
  6017. if (((word >> 19) & 0x1) == 0)
  6018. {
  6019. if (((word >> 20) & 0x1) == 0)
  6020. {
  6021. if (((word >> 30) & 0x1) == 0)
  6022. {
  6023. /* 33222222222211111111110000000000
  6024. 10987654321098765432109876543210
  6025. 000001x0xx000111100xxxxxxxxxxxxx
  6026. uqshl. */
  6027. return 2305;
  6028. }
  6029. else
  6030. {
  6031. /* 33222222222211111111110000000000
  6032. 10987654321098765432109876543210
  6033. 010001x0xx000111100xxxxxxxxxxxxx
  6034. urshlr. */
  6035. return 2317;
  6036. }
  6037. }
  6038. else
  6039. {
  6040. if (((word >> 30) & 0x1) == 0)
  6041. {
  6042. /* 33222222222211111111110000000000
  6043. 10987654321098765432109876543210
  6044. 000001x0xx010111100xxxxxxxxxxxxx
  6045. lslr. */
  6046. return 1746;
  6047. }
  6048. else
  6049. {
  6050. /* 33222222222211111111110000000000
  6051. 10987654321098765432109876543210
  6052. 010001x0xx010111100xxxxxxxxxxxxx
  6053. uhsubr. */
  6054. return 2278;
  6055. }
  6056. }
  6057. }
  6058. else
  6059. {
  6060. if (((word >> 20) & 0x1) == 0)
  6061. {
  6062. if (((word >> 30) & 0x1) == 0)
  6063. {
  6064. /* 33222222222211111111110000000000
  6065. 10987654321098765432109876543210
  6066. 000001x0xx001111100xxxxxxxxxxxxx
  6067. sqshlu. */
  6068. return 2228;
  6069. }
  6070. else
  6071. {
  6072. /* 33222222222211111111110000000000
  6073. 10987654321098765432109876543210
  6074. 010001x0xx001111100xxxxxxxxxxxxx
  6075. uqrshlr. */
  6076. return 2302;
  6077. }
  6078. }
  6079. else
  6080. {
  6081. /* 33222222222211111111110000000000
  6082. 10987654321098765432109876543210
  6083. 0x0001x0xx011111100xxxxxxxxxxxxx
  6084. uqsubr. */
  6085. return 2311;
  6086. }
  6087. }
  6088. }
  6089. }
  6090. }
  6091. }
  6092. else
  6093. {
  6094. if (((word >> 10) & 0x1) == 0)
  6095. {
  6096. if (((word >> 12) & 0x1) == 0)
  6097. {
  6098. if (((word >> 30) & 0x1) == 0)
  6099. {
  6100. /* 33222222222211111111110000000000
  6101. 10987654321098765432109876543210
  6102. 000001x0xx1xxxxx1000x0xxxxxxxxxx
  6103. asr. */
  6104. return 1303;
  6105. }
  6106. else
  6107. {
  6108. if (((word >> 22) & 0x1) == 0)
  6109. {
  6110. /* 33222222222211111111110000000000
  6111. 10987654321098765432109876543210
  6112. 010001x0x01xxxxx1000x0xxxxxxxxxx
  6113. smlalb. */
  6114. return 2156;
  6115. }
  6116. else
  6117. {
  6118. /* 33222222222211111111110000000000
  6119. 10987654321098765432109876543210
  6120. 010001x0x11xxxxx1000x0xxxxxxxxxx
  6121. smlalb. */
  6122. return 2157;
  6123. }
  6124. }
  6125. }
  6126. else
  6127. {
  6128. if (((word >> 30) & 0x1) == 0)
  6129. {
  6130. /* 33222222222211111111110000000000
  6131. 10987654321098765432109876543210
  6132. 000001x0xx1xxxxx1001x0xxxxxxxxxx
  6133. asr. */
  6134. return 1304;
  6135. }
  6136. else
  6137. {
  6138. if (((word >> 22) & 0x1) == 0)
  6139. {
  6140. /* 33222222222211111111110000000000
  6141. 10987654321098765432109876543210
  6142. 010001x0x01xxxxx1001x0xxxxxxxxxx
  6143. umlalb. */
  6144. return 2281;
  6145. }
  6146. else
  6147. {
  6148. /* 33222222222211111111110000000000
  6149. 10987654321098765432109876543210
  6150. 010001x0x11xxxxx1001x0xxxxxxxxxx
  6151. umlalb. */
  6152. return 2282;
  6153. }
  6154. }
  6155. }
  6156. }
  6157. else
  6158. {
  6159. if (((word >> 12) & 0x1) == 0)
  6160. {
  6161. if (((word >> 30) & 0x1) == 0)
  6162. {
  6163. if (((word >> 11) & 0x1) == 0)
  6164. {
  6165. /* 33222222222211111111110000000000
  6166. 10987654321098765432109876543210
  6167. 000001x0xx1xxxxx100001xxxxxxxxxx
  6168. lsr. */
  6169. return 1747;
  6170. }
  6171. else
  6172. {
  6173. /* 33222222222211111111110000000000
  6174. 10987654321098765432109876543210
  6175. 000001x0xx1xxxxx100011xxxxxxxxxx
  6176. lsl. */
  6177. return 1741;
  6178. }
  6179. }
  6180. else
  6181. {
  6182. if (((word >> 22) & 0x1) == 0)
  6183. {
  6184. /* 33222222222211111111110000000000
  6185. 10987654321098765432109876543210
  6186. 010001x0x01xxxxx1000x1xxxxxxxxxx
  6187. smlalt. */
  6188. return 2159;
  6189. }
  6190. else
  6191. {
  6192. /* 33222222222211111111110000000000
  6193. 10987654321098765432109876543210
  6194. 010001x0x11xxxxx1000x1xxxxxxxxxx
  6195. smlalt. */
  6196. return 2160;
  6197. }
  6198. }
  6199. }
  6200. else
  6201. {
  6202. if (((word >> 30) & 0x1) == 0)
  6203. {
  6204. if (((word >> 11) & 0x1) == 0)
  6205. {
  6206. /* 33222222222211111111110000000000
  6207. 10987654321098765432109876543210
  6208. 000001x0xx1xxxxx100101xxxxxxxxxx
  6209. lsr. */
  6210. return 1748;
  6211. }
  6212. else
  6213. {
  6214. /* 33222222222211111111110000000000
  6215. 10987654321098765432109876543210
  6216. 000001x0xx1xxxxx100111xxxxxxxxxx
  6217. lsl. */
  6218. return 1742;
  6219. }
  6220. }
  6221. else
  6222. {
  6223. if (((word >> 22) & 0x1) == 0)
  6224. {
  6225. /* 33222222222211111111110000000000
  6226. 10987654321098765432109876543210
  6227. 010001x0x01xxxxx1001x1xxxxxxxxxx
  6228. umlalt. */
  6229. return 2284;
  6230. }
  6231. else
  6232. {
  6233. /* 33222222222211111111110000000000
  6234. 10987654321098765432109876543210
  6235. 010001x0x11xxxxx1001x1xxxxxxxxxx
  6236. umlalt. */
  6237. return 2285;
  6238. }
  6239. }
  6240. }
  6241. }
  6242. }
  6243. }
  6244. else
  6245. {
  6246. if (((word >> 22) & 0x1) == 0)
  6247. {
  6248. if (((word >> 21) & 0x1) == 0)
  6249. {
  6250. if (((word >> 23) & 0x1) == 0)
  6251. {
  6252. /* 33222222222211111111110000000000
  6253. 10987654321098765432109876543210
  6254. 1x0001x0000xxxxx100xxxxxxxxxxxxx
  6255. ldnt1sb. */
  6256. return 2108;
  6257. }
  6258. else
  6259. {
  6260. /* 33222222222211111111110000000000
  6261. 10987654321098765432109876543210
  6262. 1x0001x0100xxxxx100xxxxxxxxxxxxx
  6263. ldnt1sh. */
  6264. return 2109;
  6265. }
  6266. }
  6267. else
  6268. {
  6269. if (((word >> 23) & 0x1) == 0)
  6270. {
  6271. if (((word >> 30) & 0x1) == 0)
  6272. {
  6273. /* 33222222222211111111110000000000
  6274. 10987654321098765432109876543210
  6275. 100001x0001xxxxx100xxxxxxxxxxxxx
  6276. ld1sb. */
  6277. return 1579;
  6278. }
  6279. else
  6280. {
  6281. /* 33222222222211111111110000000000
  6282. 10987654321098765432109876543210
  6283. 110001x0001xxxxx100xxxxxxxxxxxxx
  6284. ld1sb. */
  6285. return 1583;
  6286. }
  6287. }
  6288. else
  6289. {
  6290. if (((word >> 30) & 0x1) == 0)
  6291. {
  6292. /* 33222222222211111111110000000000
  6293. 10987654321098765432109876543210
  6294. 100001x0101xxxxx100xxxxxxxxxxxxx
  6295. ld1sh. */
  6296. return 1592;
  6297. }
  6298. else
  6299. {
  6300. /* 33222222222211111111110000000000
  6301. 10987654321098765432109876543210
  6302. 110001x0101xxxxx100xxxxxxxxxxxxx
  6303. ld1sh. */
  6304. return 1595;
  6305. }
  6306. }
  6307. }
  6308. }
  6309. else
  6310. {
  6311. if (((word >> 23) & 0x1) == 0)
  6312. {
  6313. if (((word >> 30) & 0x1) == 0)
  6314. {
  6315. /* 33222222222211111111110000000000
  6316. 10987654321098765432109876543210
  6317. 100001x001xxxxxx100xxxxxxxxxxxxx
  6318. ld1rb. */
  6319. return 1549;
  6320. }
  6321. else
  6322. {
  6323. if (((word >> 21) & 0x1) == 0)
  6324. {
  6325. /* 33222222222211111111110000000000
  6326. 10987654321098765432109876543210
  6327. 110001x0010xxxxx100xxxxxxxxxxxxx
  6328. ld1sb. */
  6329. return 1578;
  6330. }
  6331. else
  6332. {
  6333. /* 33222222222211111111110000000000
  6334. 10987654321098765432109876543210
  6335. 110001x0011xxxxx100xxxxxxxxxxxxx
  6336. prfb. */
  6337. return 1781;
  6338. }
  6339. }
  6340. }
  6341. else
  6342. {
  6343. if (((word >> 30) & 0x1) == 0)
  6344. {
  6345. /* 33222222222211111111110000000000
  6346. 10987654321098765432109876543210
  6347. 100001x011xxxxxx100xxxxxxxxxxxxx
  6348. ld1rsw. */
  6349. return 1570;
  6350. }
  6351. else
  6352. {
  6353. if (((word >> 21) & 0x1) == 0)
  6354. {
  6355. /* 33222222222211111111110000000000
  6356. 10987654321098765432109876543210
  6357. 110001x0110xxxxx100xxxxxxxxxxxxx
  6358. ld1sh. */
  6359. return 1590;
  6360. }
  6361. else
  6362. {
  6363. /* 33222222222211111111110000000000
  6364. 10987654321098765432109876543210
  6365. 110001x0111xxxxx100xxxxxxxxxxxxx
  6366. ld1sh. */
  6367. return 1591;
  6368. }
  6369. }
  6370. }
  6371. }
  6372. }
  6373. }
  6374. }
  6375. else
  6376. {
  6377. if (((word >> 15) & 0x1) == 0)
  6378. {
  6379. if (((word >> 21) & 0x1) == 0)
  6380. {
  6381. if (((word >> 30) & 0x1) == 0)
  6382. {
  6383. if (((word >> 31) & 0x1) == 0)
  6384. {
  6385. /* 33222222222211111111110000000000
  6386. 10987654321098765432109876543210
  6387. 000001x0xx0xxxxx010xxxxxxxxxxxxx
  6388. mla. */
  6389. return 1754;
  6390. }
  6391. else
  6392. {
  6393. if (((word >> 23) & 0x1) == 0)
  6394. {
  6395. /* 33222222222211111111110000000000
  6396. 10987654321098765432109876543210
  6397. 100001x00x0xxxxx010xxxxxxxxxxxxx
  6398. ld1b. */
  6399. return 1515;
  6400. }
  6401. else
  6402. {
  6403. /* 33222222222211111111110000000000
  6404. 10987654321098765432109876543210
  6405. 100001x01x0xxxxx010xxxxxxxxxxxxx
  6406. ld1h. */
  6407. return 1535;
  6408. }
  6409. }
  6410. }
  6411. else
  6412. {
  6413. if (((word >> 31) & 0x1) == 0)
  6414. {
  6415. if (((word >> 10) & 0x1) == 0)
  6416. {
  6417. if (((word >> 11) & 0x1) == 0)
  6418. {
  6419. if (((word >> 12) & 0x1) == 0)
  6420. {
  6421. /* 33222222222211111111110000000000
  6422. 10987654321098765432109876543210
  6423. 010001x0xx0xxxxx010000xxxxxxxxxx
  6424. smlalb. */
  6425. return 2158;
  6426. }
  6427. else
  6428. {
  6429. /* 33222222222211111111110000000000
  6430. 10987654321098765432109876543210
  6431. 010001x0xx0xxxxx010100xxxxxxxxxx
  6432. smlslb. */
  6433. return 2164;
  6434. }
  6435. }
  6436. else
  6437. {
  6438. if (((word >> 12) & 0x1) == 0)
  6439. {
  6440. /* 33222222222211111111110000000000
  6441. 10987654321098765432109876543210
  6442. 010001x0xx0xxxxx010010xxxxxxxxxx
  6443. umlalb. */
  6444. return 2283;
  6445. }
  6446. else
  6447. {
  6448. /* 33222222222211111111110000000000
  6449. 10987654321098765432109876543210
  6450. 010001x0xx0xxxxx010110xxxxxxxxxx
  6451. umlslb. */
  6452. return 2289;
  6453. }
  6454. }
  6455. }
  6456. else
  6457. {
  6458. if (((word >> 11) & 0x1) == 0)
  6459. {
  6460. if (((word >> 12) & 0x1) == 0)
  6461. {
  6462. /* 33222222222211111111110000000000
  6463. 10987654321098765432109876543210
  6464. 010001x0xx0xxxxx010001xxxxxxxxxx
  6465. smlalt. */
  6466. return 2161;
  6467. }
  6468. else
  6469. {
  6470. /* 33222222222211111111110000000000
  6471. 10987654321098765432109876543210
  6472. 010001x0xx0xxxxx010101xxxxxxxxxx
  6473. smlslt. */
  6474. return 2167;
  6475. }
  6476. }
  6477. else
  6478. {
  6479. if (((word >> 12) & 0x1) == 0)
  6480. {
  6481. /* 33222222222211111111110000000000
  6482. 10987654321098765432109876543210
  6483. 010001x0xx0xxxxx010011xxxxxxxxxx
  6484. umlalt. */
  6485. return 2286;
  6486. }
  6487. else
  6488. {
  6489. /* 33222222222211111111110000000000
  6490. 10987654321098765432109876543210
  6491. 010001x0xx0xxxxx010111xxxxxxxxxx
  6492. umlslt. */
  6493. return 2292;
  6494. }
  6495. }
  6496. }
  6497. }
  6498. else
  6499. {
  6500. if (((word >> 23) & 0x1) == 0)
  6501. {
  6502. /* 33222222222211111111110000000000
  6503. 10987654321098765432109876543210
  6504. 110001x00x0xxxxx010xxxxxxxxxxxxx
  6505. ld1b. */
  6506. return 1520;
  6507. }
  6508. else
  6509. {
  6510. /* 33222222222211111111110000000000
  6511. 10987654321098765432109876543210
  6512. 110001x01x0xxxxx010xxxxxxxxxxxxx
  6513. ld1h. */
  6514. return 1540;
  6515. }
  6516. }
  6517. }
  6518. }
  6519. else
  6520. {
  6521. if (((word >> 30) & 0x1) == 0)
  6522. {
  6523. if (((word >> 31) & 0x1) == 0)
  6524. {
  6525. if (((word >> 11) & 0x1) == 0)
  6526. {
  6527. if (((word >> 12) & 0x1) == 0)
  6528. {
  6529. if (((word >> 10) & 0x1) == 0)
  6530. {
  6531. /* 33222222222211111111110000000000
  6532. 10987654321098765432109876543210
  6533. 000001x0xx1xxxxx010000xxxxxxxxxx
  6534. index. */
  6535. return 1506;
  6536. }
  6537. else
  6538. {
  6539. /* 33222222222211111111110000000000
  6540. 10987654321098765432109876543210
  6541. 000001x0xx1xxxxx010001xxxxxxxxxx
  6542. index. */
  6543. return 1507;
  6544. }
  6545. }
  6546. else
  6547. {
  6548. if (((word >> 22) & 0x1) == 0)
  6549. {
  6550. if (((word >> 23) & 0x1) == 0)
  6551. {
  6552. /* 33222222222211111111110000000000
  6553. 10987654321098765432109876543210
  6554. 000001x0001xxxxx01010xxxxxxxxxxx
  6555. addvl. */
  6556. return 1293;
  6557. }
  6558. else
  6559. {
  6560. /* 33222222222211111111110000000000
  6561. 10987654321098765432109876543210
  6562. 000001x0101xxxxx01010xxxxxxxxxxx
  6563. rdvl. */
  6564. return 1815;
  6565. }
  6566. }
  6567. else
  6568. {
  6569. /* 33222222222211111111110000000000
  6570. 10987654321098765432109876543210
  6571. 000001x0x11xxxxx01010xxxxxxxxxxx
  6572. addpl. */
  6573. return 1292;
  6574. }
  6575. }
  6576. }
  6577. else
  6578. {
  6579. if (((word >> 12) & 0x1) == 0)
  6580. {
  6581. if (((word >> 10) & 0x1) == 0)
  6582. {
  6583. /* 33222222222211111111110000000000
  6584. 10987654321098765432109876543210
  6585. 000001x0xx1xxxxx010010xxxxxxxxxx
  6586. index. */
  6587. return 1508;
  6588. }
  6589. else
  6590. {
  6591. /* 33222222222211111111110000000000
  6592. 10987654321098765432109876543210
  6593. 000001x0xx1xxxxx010011xxxxxxxxxx
  6594. index. */
  6595. return 1505;
  6596. }
  6597. }
  6598. else
  6599. {
  6600. if (((word >> 22) & 0x1) == 0)
  6601. {
  6602. if (((word >> 23) & 0x1) == 0)
  6603. {
  6604. /* 33222222222211111111110000000000
  6605. 10987654321098765432109876543210
  6606. 000001x0001xxxxx01011xxxxxxxxxxx
  6607. addsvl. */
  6608. return 2355;
  6609. }
  6610. else
  6611. {
  6612. /* 33222222222211111111110000000000
  6613. 10987654321098765432109876543210
  6614. 000001x0101xxxxx01011xxxxxxxxxxx
  6615. rdsvl. */
  6616. return 2366;
  6617. }
  6618. }
  6619. else
  6620. {
  6621. /* 33222222222211111111110000000000
  6622. 10987654321098765432109876543210
  6623. 000001x0x11xxxxx01011xxxxxxxxxxx
  6624. addspl. */
  6625. return 2354;
  6626. }
  6627. }
  6628. }
  6629. }
  6630. else
  6631. {
  6632. if (((word >> 23) & 0x1) == 0)
  6633. {
  6634. /* 33222222222211111111110000000000
  6635. 10987654321098765432109876543210
  6636. 100001x00x1xxxxx010xxxxxxxxxxxxx
  6637. prfw. */
  6638. return 1799;
  6639. }
  6640. else
  6641. {
  6642. /* 33222222222211111111110000000000
  6643. 10987654321098765432109876543210
  6644. 100001x01x1xxxxx010xxxxxxxxxxxxx
  6645. ld1h. */
  6646. return 1536;
  6647. }
  6648. }
  6649. }
  6650. else
  6651. {
  6652. if (((word >> 23) & 0x1) == 0)
  6653. {
  6654. /* 33222222222211111111110000000000
  6655. 10987654321098765432109876543210
  6656. x10001x00x1xxxxx010xxxxxxxxxxxxx
  6657. prfw. */
  6658. return 1801;
  6659. }
  6660. else
  6661. {
  6662. if (((word >> 31) & 0x1) == 0)
  6663. {
  6664. if (((word >> 22) & 0x1) == 0)
  6665. {
  6666. /* 33222222222211111111110000000000
  6667. 10987654321098765432109876543210
  6668. 010001x0101xxxxx010xxxxxxxxxxxxx
  6669. cdot. */
  6670. return 2073;
  6671. }
  6672. else
  6673. {
  6674. /* 33222222222211111111110000000000
  6675. 10987654321098765432109876543210
  6676. 010001x0111xxxxx010xxxxxxxxxxxxx
  6677. cdot. */
  6678. return 2072;
  6679. }
  6680. }
  6681. else
  6682. {
  6683. /* 33222222222211111111110000000000
  6684. 10987654321098765432109876543210
  6685. 110001x01x1xxxxx010xxxxxxxxxxxxx
  6686. ld1h. */
  6687. return 1541;
  6688. }
  6689. }
  6690. }
  6691. }
  6692. }
  6693. else
  6694. {
  6695. if (((word >> 30) & 0x1) == 0)
  6696. {
  6697. if (((word >> 31) & 0x1) == 0)
  6698. {
  6699. if (((word >> 21) & 0x1) == 0)
  6700. {
  6701. /* 33222222222211111111110000000000
  6702. 10987654321098765432109876543210
  6703. 000001x0xx0xxxxx110xxxxxxxxxxxxx
  6704. mad. */
  6705. return 1753;
  6706. }
  6707. else
  6708. {
  6709. if (((word >> 10) & 0x1) == 0)
  6710. {
  6711. if (((word >> 11) & 0x1) == 0)
  6712. {
  6713. if (((word >> 20) & 0x1) == 0)
  6714. {
  6715. if (((word >> 22) & 0x1) == 0)
  6716. {
  6717. /* 33222222222211111111110000000000
  6718. 10987654321098765432109876543210
  6719. 000001x0x010xxxx110x00xxxxxxxxxx
  6720. sqincw. */
  6721. return 1873;
  6722. }
  6723. else
  6724. {
  6725. if (((word >> 23) & 0x1) == 0)
  6726. {
  6727. /* 33222222222211111111110000000000
  6728. 10987654321098765432109876543210
  6729. 000001x00110xxxx110x00xxxxxxxxxx
  6730. sqinch. */
  6731. return 1867;
  6732. }
  6733. else
  6734. {
  6735. /* 33222222222211111111110000000000
  6736. 10987654321098765432109876543210
  6737. 000001x01110xxxx110x00xxxxxxxxxx
  6738. sqincd. */
  6739. return 1864;
  6740. }
  6741. }
  6742. }
  6743. else
  6744. {
  6745. if (((word >> 22) & 0x1) == 0)
  6746. {
  6747. /* 33222222222211111111110000000000
  6748. 10987654321098765432109876543210
  6749. 000001x0x011xxxx110x00xxxxxxxxxx
  6750. incw. */
  6751. return 1503;
  6752. }
  6753. else
  6754. {
  6755. if (((word >> 23) & 0x1) == 0)
  6756. {
  6757. /* 33222222222211111111110000000000
  6758. 10987654321098765432109876543210
  6759. 000001x00111xxxx110x00xxxxxxxxxx
  6760. inch. */
  6761. return 1499;
  6762. }
  6763. else
  6764. {
  6765. /* 33222222222211111111110000000000
  6766. 10987654321098765432109876543210
  6767. 000001x01111xxxx110x00xxxxxxxxxx
  6768. incd. */
  6769. return 1497;
  6770. }
  6771. }
  6772. }
  6773. }
  6774. else
  6775. {
  6776. if (((word >> 22) & 0x1) == 0)
  6777. {
  6778. /* 33222222222211111111110000000000
  6779. 10987654321098765432109876543210
  6780. 000001x0x01xxxxx110x10xxxxxxxxxx
  6781. sqdecw. */
  6782. return 1859;
  6783. }
  6784. else
  6785. {
  6786. if (((word >> 23) & 0x1) == 0)
  6787. {
  6788. /* 33222222222211111111110000000000
  6789. 10987654321098765432109876543210
  6790. 000001x0011xxxxx110x10xxxxxxxxxx
  6791. sqdech. */
  6792. return 1853;
  6793. }
  6794. else
  6795. {
  6796. /* 33222222222211111111110000000000
  6797. 10987654321098765432109876543210
  6798. 000001x0111xxxxx110x10xxxxxxxxxx
  6799. sqdecd. */
  6800. return 1850;
  6801. }
  6802. }
  6803. }
  6804. }
  6805. else
  6806. {
  6807. if (((word >> 11) & 0x1) == 0)
  6808. {
  6809. if (((word >> 20) & 0x1) == 0)
  6810. {
  6811. if (((word >> 22) & 0x1) == 0)
  6812. {
  6813. /* 33222222222211111111110000000000
  6814. 10987654321098765432109876543210
  6815. 000001x0x010xxxx110x01xxxxxxxxxx
  6816. uqincw. */
  6817. return 2021;
  6818. }
  6819. else
  6820. {
  6821. if (((word >> 23) & 0x1) == 0)
  6822. {
  6823. /* 33222222222211111111110000000000
  6824. 10987654321098765432109876543210
  6825. 000001x00110xxxx110x01xxxxxxxxxx
  6826. uqinch. */
  6827. return 2015;
  6828. }
  6829. else
  6830. {
  6831. /* 33222222222211111111110000000000
  6832. 10987654321098765432109876543210
  6833. 000001x01110xxxx110x01xxxxxxxxxx
  6834. uqincd. */
  6835. return 2012;
  6836. }
  6837. }
  6838. }
  6839. else
  6840. {
  6841. if (((word >> 22) & 0x1) == 0)
  6842. {
  6843. /* 33222222222211111111110000000000
  6844. 10987654321098765432109876543210
  6845. 000001x0x011xxxx110x01xxxxxxxxxx
  6846. decw. */
  6847. return 1378;
  6848. }
  6849. else
  6850. {
  6851. if (((word >> 23) & 0x1) == 0)
  6852. {
  6853. /* 33222222222211111111110000000000
  6854. 10987654321098765432109876543210
  6855. 000001x00111xxxx110x01xxxxxxxxxx
  6856. dech. */
  6857. return 1374;
  6858. }
  6859. else
  6860. {
  6861. /* 33222222222211111111110000000000
  6862. 10987654321098765432109876543210
  6863. 000001x01111xxxx110x01xxxxxxxxxx
  6864. decd. */
  6865. return 1372;
  6866. }
  6867. }
  6868. }
  6869. }
  6870. else
  6871. {
  6872. if (((word >> 22) & 0x1) == 0)
  6873. {
  6874. /* 33222222222211111111110000000000
  6875. 10987654321098765432109876543210
  6876. 000001x0x01xxxxx110x11xxxxxxxxxx
  6877. uqdecw. */
  6878. return 2007;
  6879. }
  6880. else
  6881. {
  6882. if (((word >> 23) & 0x1) == 0)
  6883. {
  6884. /* 33222222222211111111110000000000
  6885. 10987654321098765432109876543210
  6886. 000001x0011xxxxx110x11xxxxxxxxxx
  6887. uqdech. */
  6888. return 2001;
  6889. }
  6890. else
  6891. {
  6892. /* 33222222222211111111110000000000
  6893. 10987654321098765432109876543210
  6894. 000001x0111xxxxx110x11xxxxxxxxxx
  6895. uqdecd. */
  6896. return 1998;
  6897. }
  6898. }
  6899. }
  6900. }
  6901. }
  6902. }
  6903. else
  6904. {
  6905. if (((word >> 22) & 0x1) == 0)
  6906. {
  6907. if (((word >> 21) & 0x1) == 0)
  6908. {
  6909. if (((word >> 23) & 0x1) == 0)
  6910. {
  6911. /* 33222222222211111111110000000000
  6912. 10987654321098765432109876543210
  6913. 100001x0000xxxxx110xxxxxxxxxxxxx
  6914. prfb. */
  6915. return 1778;
  6916. }
  6917. else
  6918. {
  6919. /* 33222222222211111111110000000000
  6920. 10987654321098765432109876543210
  6921. 100001x0100xxxxx110xxxxxxxxxxxxx
  6922. prfh. */
  6923. return 1793;
  6924. }
  6925. }
  6926. else
  6927. {
  6928. if (((word >> 23) & 0x1) == 0)
  6929. {
  6930. /* 33222222222211111111110000000000
  6931. 10987654321098765432109876543210
  6932. 100001x0001xxxxx110xxxxxxxxxxxxx
  6933. ld1b. */
  6934. return 1522;
  6935. }
  6936. else
  6937. {
  6938. /* 33222222222211111111110000000000
  6939. 10987654321098765432109876543210
  6940. 100001x0101xxxxx110xxxxxxxxxxxxx
  6941. ld1h. */
  6942. return 1544;
  6943. }
  6944. }
  6945. }
  6946. else
  6947. {
  6948. if (((word >> 23) & 0x1) == 0)
  6949. {
  6950. /* 33222222222211111111110000000000
  6951. 10987654321098765432109876543210
  6952. 100001x001xxxxxx110xxxxxxxxxxxxx
  6953. ld1rb. */
  6954. return 1551;
  6955. }
  6956. else
  6957. {
  6958. /* 33222222222211111111110000000000
  6959. 10987654321098765432109876543210
  6960. 100001x011xxxxxx110xxxxxxxxxxxxx
  6961. ld1rh. */
  6962. return 1555;
  6963. }
  6964. }
  6965. }
  6966. }
  6967. else
  6968. {
  6969. if (((word >> 21) & 0x1) == 0)
  6970. {
  6971. if (((word >> 31) & 0x1) == 0)
  6972. {
  6973. if (((word >> 10) & 0x1) == 0)
  6974. {
  6975. /* 33222222222211111111110000000000
  6976. 10987654321098765432109876543210
  6977. 010001x0xx0xxxxx110xx0xxxxxxxxxx
  6978. sclamp. */
  6979. return 2411;
  6980. }
  6981. else
  6982. {
  6983. /* 33222222222211111111110000000000
  6984. 10987654321098765432109876543210
  6985. 010001x0xx0xxxxx110xx1xxxxxxxxxx
  6986. uclamp. */
  6987. return 2412;
  6988. }
  6989. }
  6990. else
  6991. {
  6992. if (((word >> 22) & 0x1) == 0)
  6993. {
  6994. if (((word >> 23) & 0x1) == 0)
  6995. {
  6996. /* 33222222222211111111110000000000
  6997. 10987654321098765432109876543210
  6998. 110001x0000xxxxx110xxxxxxxxxxxxx
  6999. ldnt1b. */
  7000. return 2104;
  7001. }
  7002. else
  7003. {
  7004. /* 33222222222211111111110000000000
  7005. 10987654321098765432109876543210
  7006. 110001x0100xxxxx110xxxxxxxxxxxxx
  7007. ldnt1h. */
  7008. return 2107;
  7009. }
  7010. }
  7011. else
  7012. {
  7013. if (((word >> 23) & 0x1) == 0)
  7014. {
  7015. /* 33222222222211111111110000000000
  7016. 10987654321098765432109876543210
  7017. 110001x0010xxxxx110xxxxxxxxxxxxx
  7018. ld1b. */
  7019. return 1521;
  7020. }
  7021. else
  7022. {
  7023. /* 33222222222211111111110000000000
  7024. 10987654321098765432109876543210
  7025. 110001x0110xxxxx110xxxxxxxxxxxxx
  7026. ld1h. */
  7027. return 1542;
  7028. }
  7029. }
  7030. }
  7031. }
  7032. else
  7033. {
  7034. if (((word >> 22) & 0x1) == 0)
  7035. {
  7036. if (((word >> 23) & 0x1) == 0)
  7037. {
  7038. /* 33222222222211111111110000000000
  7039. 10987654321098765432109876543210
  7040. x10001x0001xxxxx110xxxxxxxxxxxxx
  7041. ld1b. */
  7042. return 1527;
  7043. }
  7044. else
  7045. {
  7046. if (((word >> 31) & 0x1) == 0)
  7047. {
  7048. if (((word >> 10) & 0x1) == 0)
  7049. {
  7050. if (((word >> 12) & 0x1) == 0)
  7051. {
  7052. /* 33222222222211111111110000000000
  7053. 10987654321098765432109876543210
  7054. 010001x0101xxxxx1100x0xxxxxxxxxx
  7055. smullb. */
  7056. return 2169;
  7057. }
  7058. else
  7059. {
  7060. /* 33222222222211111111110000000000
  7061. 10987654321098765432109876543210
  7062. 010001x0101xxxxx1101x0xxxxxxxxxx
  7063. umullb. */
  7064. return 2294;
  7065. }
  7066. }
  7067. else
  7068. {
  7069. if (((word >> 12) & 0x1) == 0)
  7070. {
  7071. /* 33222222222211111111110000000000
  7072. 10987654321098765432109876543210
  7073. 010001x0101xxxxx1100x1xxxxxxxxxx
  7074. smullt. */
  7075. return 2172;
  7076. }
  7077. else
  7078. {
  7079. /* 33222222222211111111110000000000
  7080. 10987654321098765432109876543210
  7081. 010001x0101xxxxx1101x1xxxxxxxxxx
  7082. umullt. */
  7083. return 2297;
  7084. }
  7085. }
  7086. }
  7087. else
  7088. {
  7089. /* 33222222222211111111110000000000
  7090. 10987654321098765432109876543210
  7091. 110001x0101xxxxx110xxxxxxxxxxxxx
  7092. ld1h. */
  7093. return 1548;
  7094. }
  7095. }
  7096. }
  7097. else
  7098. {
  7099. if (((word >> 23) & 0x1) == 0)
  7100. {
  7101. /* 33222222222211111111110000000000
  7102. 10987654321098765432109876543210
  7103. x10001x0011xxxxx110xxxxxxxxxxxxx
  7104. prfw. */
  7105. return 1802;
  7106. }
  7107. else
  7108. {
  7109. if (((word >> 31) & 0x1) == 0)
  7110. {
  7111. if (((word >> 10) & 0x1) == 0)
  7112. {
  7113. if (((word >> 12) & 0x1) == 0)
  7114. {
  7115. /* 33222222222211111111110000000000
  7116. 10987654321098765432109876543210
  7117. 010001x0111xxxxx1100x0xxxxxxxxxx
  7118. smullb. */
  7119. return 2170;
  7120. }
  7121. else
  7122. {
  7123. /* 33222222222211111111110000000000
  7124. 10987654321098765432109876543210
  7125. 010001x0111xxxxx1101x0xxxxxxxxxx
  7126. umullb. */
  7127. return 2295;
  7128. }
  7129. }
  7130. else
  7131. {
  7132. if (((word >> 12) & 0x1) == 0)
  7133. {
  7134. /* 33222222222211111111110000000000
  7135. 10987654321098765432109876543210
  7136. 010001x0111xxxxx1100x1xxxxxxxxxx
  7137. smullt. */
  7138. return 2173;
  7139. }
  7140. else
  7141. {
  7142. /* 33222222222211111111110000000000
  7143. 10987654321098765432109876543210
  7144. 010001x0111xxxxx1101x1xxxxxxxxxx
  7145. umullt. */
  7146. return 2298;
  7147. }
  7148. }
  7149. }
  7150. else
  7151. {
  7152. /* 33222222222211111111110000000000
  7153. 10987654321098765432109876543210
  7154. 110001x0111xxxxx110xxxxxxxxxxxxx
  7155. ld1h. */
  7156. return 1543;
  7157. }
  7158. }
  7159. }
  7160. }
  7161. }
  7162. }
  7163. }
  7164. }
  7165. else
  7166. {
  7167. if (((word >> 14) & 0x1) == 0)
  7168. {
  7169. if (((word >> 15) & 0x1) == 0)
  7170. {
  7171. if (((word >> 21) & 0x1) == 0)
  7172. {
  7173. if (((word >> 30) & 0x1) == 0)
  7174. {
  7175. if (((word >> 31) & 0x1) == 0)
  7176. {
  7177. if (((word >> 17) & 0x1) == 0)
  7178. {
  7179. if (((word >> 19) & 0x1) == 0)
  7180. {
  7181. if (((word >> 20) & 0x1) == 0)
  7182. {
  7183. if (((word >> 16) & 0x1) == 0)
  7184. {
  7185. /* 33222222222211111111110000000000
  7186. 10987654321098765432109876543210
  7187. 000001x0xx000x00001xxxxxxxxxxxxx
  7188. saddv. */
  7189. return 1822;
  7190. }
  7191. else
  7192. {
  7193. /* 33222222222211111111110000000000
  7194. 10987654321098765432109876543210
  7195. 000001x0xx000x01001xxxxxxxxxxxxx
  7196. uaddv. */
  7197. return 1974;
  7198. }
  7199. }
  7200. else
  7201. {
  7202. /* 33222222222211111111110000000000
  7203. 10987654321098765432109876543210
  7204. 000001x0xx010x0x001xxxxxxxxxxxxx
  7205. movprfx. */
  7206. return 1757;
  7207. }
  7208. }
  7209. else
  7210. {
  7211. if (((word >> 16) & 0x1) == 0)
  7212. {
  7213. if (((word >> 20) & 0x1) == 0)
  7214. {
  7215. /* 33222222222211111111110000000000
  7216. 10987654321098765432109876543210
  7217. 000001x0xx001x00001xxxxxxxxxxxxx
  7218. smaxv. */
  7219. return 1840;
  7220. }
  7221. else
  7222. {
  7223. /* 33222222222211111111110000000000
  7224. 10987654321098765432109876543210
  7225. 000001x0xx011x00001xxxxxxxxxxxxx
  7226. orv. */
  7227. return 1774;
  7228. }
  7229. }
  7230. else
  7231. {
  7232. if (((word >> 20) & 0x1) == 0)
  7233. {
  7234. /* 33222222222211111111110000000000
  7235. 10987654321098765432109876543210
  7236. 000001x0xx001x01001xxxxxxxxxxxxx
  7237. umaxv. */
  7238. return 1989;
  7239. }
  7240. else
  7241. {
  7242. /* 33222222222211111111110000000000
  7243. 10987654321098765432109876543210
  7244. 000001x0xx011x01001xxxxxxxxxxxxx
  7245. eorv. */
  7246. return 1389;
  7247. }
  7248. }
  7249. }
  7250. }
  7251. else
  7252. {
  7253. if (((word >> 16) & 0x1) == 0)
  7254. {
  7255. if (((word >> 20) & 0x1) == 0)
  7256. {
  7257. /* 33222222222211111111110000000000
  7258. 10987654321098765432109876543210
  7259. 000001x0xx00xx10001xxxxxxxxxxxxx
  7260. sminv. */
  7261. return 1843;
  7262. }
  7263. else
  7264. {
  7265. /* 33222222222211111111110000000000
  7266. 10987654321098765432109876543210
  7267. 000001x0xx01xx10001xxxxxxxxxxxxx
  7268. andv. */
  7269. return 1302;
  7270. }
  7271. }
  7272. else
  7273. {
  7274. /* 33222222222211111111110000000000
  7275. 10987654321098765432109876543210
  7276. 000001x0xx0xxx11001xxxxxxxxxxxxx
  7277. uminv. */
  7278. return 1992;
  7279. }
  7280. }
  7281. }
  7282. else
  7283. {
  7284. if (((word >> 23) & 0x1) == 0)
  7285. {
  7286. /* 33222222222211111111110000000000
  7287. 10987654321098765432109876543210
  7288. 100001x00x0xxxxx001xxxxxxxxxxxxx
  7289. ldff1sb. */
  7290. return 1673;
  7291. }
  7292. else
  7293. {
  7294. /* 33222222222211111111110000000000
  7295. 10987654321098765432109876543210
  7296. 100001x01x0xxxxx001xxxxxxxxxxxxx
  7297. ldff1sh. */
  7298. return 1684;
  7299. }
  7300. }
  7301. }
  7302. else
  7303. {
  7304. if (((word >> 31) & 0x1) == 0)
  7305. {
  7306. if (((word >> 12) & 0x1) == 0)
  7307. {
  7308. /* 33222222222211111111110000000000
  7309. 10987654321098765432109876543210
  7310. 010001x0xx0xxxxx0010xxxxxxxxxxxx
  7311. cmla. */
  7312. return 2074;
  7313. }
  7314. else
  7315. {
  7316. /* 33222222222211111111110000000000
  7317. 10987654321098765432109876543210
  7318. 010001x0xx0xxxxx0011xxxxxxxxxxxx
  7319. sqrdcmlah. */
  7320. return 2206;
  7321. }
  7322. }
  7323. else
  7324. {
  7325. if (((word >> 23) & 0x1) == 0)
  7326. {
  7327. /* 33222222222211111111110000000000
  7328. 10987654321098765432109876543210
  7329. 110001x00x0xxxxx001xxxxxxxxxxxxx
  7330. ldff1sb. */
  7331. return 1680;
  7332. }
  7333. else
  7334. {
  7335. /* 33222222222211111111110000000000
  7336. 10987654321098765432109876543210
  7337. 110001x01x0xxxxx001xxxxxxxxxxxxx
  7338. ldff1sh. */
  7339. return 1690;
  7340. }
  7341. }
  7342. }
  7343. }
  7344. else
  7345. {
  7346. if (((word >> 30) & 0x1) == 0)
  7347. {
  7348. if (((word >> 31) & 0x1) == 0)
  7349. {
  7350. if (((word >> 10) & 0x1) == 0)
  7351. {
  7352. if (((word >> 11) & 0x1) == 0)
  7353. {
  7354. if (((word >> 22) & 0x1) == 0)
  7355. {
  7356. if (((word >> 23) & 0x1) == 0)
  7357. {
  7358. /* 33222222222211111111110000000000
  7359. 10987654321098765432109876543210
  7360. 000001x0001xxxxx001x00xxxxxxxxxx
  7361. and. */
  7362. return 1297;
  7363. }
  7364. else
  7365. {
  7366. /* 33222222222211111111110000000000
  7367. 10987654321098765432109876543210
  7368. 000001x0101xxxxx001x00xxxxxxxxxx
  7369. eor. */
  7370. return 1384;
  7371. }
  7372. }
  7373. else
  7374. {
  7375. if (((word >> 23) & 0x1) == 0)
  7376. {
  7377. /* 33222222222211111111110000000000
  7378. 10987654321098765432109876543210
  7379. 000001x0011xxxxx001x00xxxxxxxxxx
  7380. orr. */
  7381. return 1769;
  7382. }
  7383. else
  7384. {
  7385. /* 33222222222211111111110000000000
  7386. 10987654321098765432109876543210
  7387. 000001x0111xxxxx001x00xxxxxxxxxx
  7388. bic. */
  7389. return 1310;
  7390. }
  7391. }
  7392. }
  7393. else
  7394. {
  7395. if (((word >> 22) & 0x1) == 0)
  7396. {
  7397. /* 33222222222211111111110000000000
  7398. 10987654321098765432109876543210
  7399. 000001x0x01xxxxx001x10xxxxxxxxxx
  7400. eor3. */
  7401. return 2077;
  7402. }
  7403. else
  7404. {
  7405. /* 33222222222211111111110000000000
  7406. 10987654321098765432109876543210
  7407. 000001x0x11xxxxx001x10xxxxxxxxxx
  7408. bcax. */
  7409. return 2066;
  7410. }
  7411. }
  7412. }
  7413. else
  7414. {
  7415. if (((word >> 11) & 0x1) == 0)
  7416. {
  7417. /* 33222222222211111111110000000000
  7418. 10987654321098765432109876543210
  7419. 000001x0xx1xxxxx001x01xxxxxxxxxx
  7420. xar. */
  7421. return 2339;
  7422. }
  7423. else
  7424. {
  7425. if (((word >> 22) & 0x1) == 0)
  7426. {
  7427. if (((word >> 23) & 0x1) == 0)
  7428. {
  7429. /* 33222222222211111111110000000000
  7430. 10987654321098765432109876543210
  7431. 000001x0001xxxxx001x11xxxxxxxxxx
  7432. bsl. */
  7433. return 2067;
  7434. }
  7435. else
  7436. {
  7437. /* 33222222222211111111110000000000
  7438. 10987654321098765432109876543210
  7439. 000001x0101xxxxx001x11xxxxxxxxxx
  7440. bsl2n. */
  7441. return 2069;
  7442. }
  7443. }
  7444. else
  7445. {
  7446. if (((word >> 23) & 0x1) == 0)
  7447. {
  7448. /* 33222222222211111111110000000000
  7449. 10987654321098765432109876543210
  7450. 000001x0011xxxxx001x11xxxxxxxxxx
  7451. bsl1n. */
  7452. return 2068;
  7453. }
  7454. else
  7455. {
  7456. /* 33222222222211111111110000000000
  7457. 10987654321098765432109876543210
  7458. 000001x0111xxxxx001x11xxxxxxxxxx
  7459. nbsl. */
  7460. return 2124;
  7461. }
  7462. }
  7463. }
  7464. }
  7465. }
  7466. else
  7467. {
  7468. if (((word >> 23) & 0x1) == 0)
  7469. {
  7470. /* 33222222222211111111110000000000
  7471. 10987654321098765432109876543210
  7472. 100001x00x1xxxxx001xxxxxxxxxxxxx
  7473. prfh. */
  7474. return 1792;
  7475. }
  7476. else
  7477. {
  7478. /* 33222222222211111111110000000000
  7479. 10987654321098765432109876543210
  7480. 100001x01x1xxxxx001xxxxxxxxxxxxx
  7481. ldff1sh. */
  7482. return 1685;
  7483. }
  7484. }
  7485. }
  7486. else
  7487. {
  7488. if (((word >> 23) & 0x1) == 0)
  7489. {
  7490. /* 33222222222211111111110000000000
  7491. 10987654321098765432109876543210
  7492. x10001x00x1xxxxx001xxxxxxxxxxxxx
  7493. prfh. */
  7494. return 1794;
  7495. }
  7496. else
  7497. {
  7498. if (((word >> 31) & 0x1) == 0)
  7499. {
  7500. if (((word >> 10) & 0x1) == 0)
  7501. {
  7502. if (((word >> 12) & 0x1) == 0)
  7503. {
  7504. if (((word >> 22) & 0x1) == 0)
  7505. {
  7506. /* 33222222222211111111110000000000
  7507. 10987654321098765432109876543210
  7508. 010001x0101xxxxx0010x0xxxxxxxxxx
  7509. sqdmlalb. */
  7510. return 2179;
  7511. }
  7512. else
  7513. {
  7514. /* 33222222222211111111110000000000
  7515. 10987654321098765432109876543210
  7516. 010001x0111xxxxx0010x0xxxxxxxxxx
  7517. sqdmlalb. */
  7518. return 2180;
  7519. }
  7520. }
  7521. else
  7522. {
  7523. if (((word >> 22) & 0x1) == 0)
  7524. {
  7525. /* 33222222222211111111110000000000
  7526. 10987654321098765432109876543210
  7527. 010001x0101xxxxx0011x0xxxxxxxxxx
  7528. sqdmlslb. */
  7529. return 2186;
  7530. }
  7531. else
  7532. {
  7533. /* 33222222222211111111110000000000
  7534. 10987654321098765432109876543210
  7535. 010001x0111xxxxx0011x0xxxxxxxxxx
  7536. sqdmlslb. */
  7537. return 2187;
  7538. }
  7539. }
  7540. }
  7541. else
  7542. {
  7543. if (((word >> 12) & 0x1) == 0)
  7544. {
  7545. if (((word >> 22) & 0x1) == 0)
  7546. {
  7547. /* 33222222222211111111110000000000
  7548. 10987654321098765432109876543210
  7549. 010001x0101xxxxx0010x1xxxxxxxxxx
  7550. sqdmlalt. */
  7551. return 2183;
  7552. }
  7553. else
  7554. {
  7555. /* 33222222222211111111110000000000
  7556. 10987654321098765432109876543210
  7557. 010001x0111xxxxx0010x1xxxxxxxxxx
  7558. sqdmlalt. */
  7559. return 2184;
  7560. }
  7561. }
  7562. else
  7563. {
  7564. if (((word >> 22) & 0x1) == 0)
  7565. {
  7566. /* 33222222222211111111110000000000
  7567. 10987654321098765432109876543210
  7568. 010001x0101xxxxx0011x1xxxxxxxxxx
  7569. sqdmlslt. */
  7570. return 2190;
  7571. }
  7572. else
  7573. {
  7574. /* 33222222222211111111110000000000
  7575. 10987654321098765432109876543210
  7576. 010001x0111xxxxx0011x1xxxxxxxxxx
  7577. sqdmlslt. */
  7578. return 2191;
  7579. }
  7580. }
  7581. }
  7582. }
  7583. else
  7584. {
  7585. /* 33222222222211111111110000000000
  7586. 10987654321098765432109876543210
  7587. 110001x01x1xxxxx001xxxxxxxxxxxxx
  7588. ldff1sh. */
  7589. return 1691;
  7590. }
  7591. }
  7592. }
  7593. }
  7594. }
  7595. else
  7596. {
  7597. if (((word >> 30) & 0x1) == 0)
  7598. {
  7599. if (((word >> 31) & 0x1) == 0)
  7600. {
  7601. if (((word >> 21) & 0x1) == 0)
  7602. {
  7603. if (((word >> 16) & 0x1) == 0)
  7604. {
  7605. if (((word >> 17) & 0x1) == 0)
  7606. {
  7607. if (((word >> 18) & 0x1) == 0)
  7608. {
  7609. if (((word >> 19) & 0x1) == 0)
  7610. {
  7611. /* 33222222222211111111110000000000
  7612. 10987654321098765432109876543210
  7613. 000001x0xx0x0000101xxxxxxxxxxxxx
  7614. sxtb. */
  7615. return 1965;
  7616. }
  7617. else
  7618. {
  7619. /* 33222222222211111111110000000000
  7620. 10987654321098765432109876543210
  7621. 000001x0xx0x1000101xxxxxxxxxxxxx
  7622. cls. */
  7623. return 1330;
  7624. }
  7625. }
  7626. else
  7627. {
  7628. if (((word >> 19) & 0x1) == 0)
  7629. {
  7630. /* 33222222222211111111110000000000
  7631. 10987654321098765432109876543210
  7632. 000001x0xx0x0100101xxxxxxxxxxxxx
  7633. sxtw. */
  7634. return 1967;
  7635. }
  7636. else
  7637. {
  7638. /* 33222222222211111111110000000000
  7639. 10987654321098765432109876543210
  7640. 000001x0xx0x1100101xxxxxxxxxxxxx
  7641. fabs. */
  7642. return 1392;
  7643. }
  7644. }
  7645. }
  7646. else
  7647. {
  7648. if (((word >> 18) & 0x1) == 0)
  7649. {
  7650. if (((word >> 19) & 0x1) == 0)
  7651. {
  7652. /* 33222222222211111111110000000000
  7653. 10987654321098765432109876543210
  7654. 000001x0xx0x0010101xxxxxxxxxxxxx
  7655. sxth. */
  7656. return 1966;
  7657. }
  7658. else
  7659. {
  7660. /* 33222222222211111111110000000000
  7661. 10987654321098765432109876543210
  7662. 000001x0xx0x1010101xxxxxxxxxxxxx
  7663. cnt. */
  7664. return 1359;
  7665. }
  7666. }
  7667. else
  7668. {
  7669. if (((word >> 19) & 0x1) == 0)
  7670. {
  7671. /* 33222222222211111111110000000000
  7672. 10987654321098765432109876543210
  7673. 000001x0xx0x0110101xxxxxxxxxxxxx
  7674. abs. */
  7675. return 1288;
  7676. }
  7677. else
  7678. {
  7679. /* 33222222222211111111110000000000
  7680. 10987654321098765432109876543210
  7681. 000001x0xx0x1110101xxxxxxxxxxxxx
  7682. not. */
  7683. return 1766;
  7684. }
  7685. }
  7686. }
  7687. }
  7688. else
  7689. {
  7690. if (((word >> 17) & 0x1) == 0)
  7691. {
  7692. if (((word >> 18) & 0x1) == 0)
  7693. {
  7694. if (((word >> 19) & 0x1) == 0)
  7695. {
  7696. /* 33222222222211111111110000000000
  7697. 10987654321098765432109876543210
  7698. 000001x0xx0x0001101xxxxxxxxxxxxx
  7699. uxtb. */
  7700. return 2028;
  7701. }
  7702. else
  7703. {
  7704. /* 33222222222211111111110000000000
  7705. 10987654321098765432109876543210
  7706. 000001x0xx0x1001101xxxxxxxxxxxxx
  7707. clz. */
  7708. return 1331;
  7709. }
  7710. }
  7711. else
  7712. {
  7713. if (((word >> 19) & 0x1) == 0)
  7714. {
  7715. /* 33222222222211111111110000000000
  7716. 10987654321098765432109876543210
  7717. 000001x0xx0x0101101xxxxxxxxxxxxx
  7718. uxtw. */
  7719. return 2030;
  7720. }
  7721. else
  7722. {
  7723. /* 33222222222211111111110000000000
  7724. 10987654321098765432109876543210
  7725. 000001x0xx0x1101101xxxxxxxxxxxxx
  7726. fneg. */
  7727. return 1469;
  7728. }
  7729. }
  7730. }
  7731. else
  7732. {
  7733. if (((word >> 18) & 0x1) == 0)
  7734. {
  7735. if (((word >> 19) & 0x1) == 0)
  7736. {
  7737. /* 33222222222211111111110000000000
  7738. 10987654321098765432109876543210
  7739. 000001x0xx0x0011101xxxxxxxxxxxxx
  7740. uxth. */
  7741. return 2029;
  7742. }
  7743. else
  7744. {
  7745. /* 33222222222211111111110000000000
  7746. 10987654321098765432109876543210
  7747. 000001x0xx0x1011101xxxxxxxxxxxxx
  7748. cnot. */
  7749. return 1358;
  7750. }
  7751. }
  7752. else
  7753. {
  7754. /* 33222222222211111111110000000000
  7755. 10987654321098765432109876543210
  7756. 000001x0xx0xx111101xxxxxxxxxxxxx
  7757. neg. */
  7758. return 1763;
  7759. }
  7760. }
  7761. }
  7762. }
  7763. else
  7764. {
  7765. if (((word >> 12) & 0x1) == 0)
  7766. {
  7767. if (((word >> 23) & 0x1) == 0)
  7768. {
  7769. if (((word >> 22) & 0x1) == 0)
  7770. {
  7771. /* 33222222222211111111110000000000
  7772. 10987654321098765432109876543210
  7773. 000001x0001xxxxx1010xxxxxxxxxxxx
  7774. adr. */
  7775. return 1294;
  7776. }
  7777. else
  7778. {
  7779. /* 33222222222211111111110000000000
  7780. 10987654321098765432109876543210
  7781. 000001x0011xxxxx1010xxxxxxxxxxxx
  7782. adr. */
  7783. return 1295;
  7784. }
  7785. }
  7786. else
  7787. {
  7788. /* 33222222222211111111110000000000
  7789. 10987654321098765432109876543210
  7790. 000001x01x1xxxxx1010xxxxxxxxxxxx
  7791. adr. */
  7792. return 1296;
  7793. }
  7794. }
  7795. else
  7796. {
  7797. if (((word >> 10) & 0x1) == 0)
  7798. {
  7799. if (((word >> 11) & 0x1) == 0)
  7800. {
  7801. /* 33222222222211111111110000000000
  7802. 10987654321098765432109876543210
  7803. 000001x0xx1xxxxx101100xxxxxxxxxx
  7804. ftssel. */
  7805. return 1495;
  7806. }
  7807. else
  7808. {
  7809. /* 33222222222211111111110000000000
  7810. 10987654321098765432109876543210
  7811. 000001x0xx1xxxxx101110xxxxxxxxxx
  7812. fexpa. */
  7813. return 1439;
  7814. }
  7815. }
  7816. else
  7817. {
  7818. /* 33222222222211111111110000000000
  7819. 10987654321098765432109876543210
  7820. 000001x0xx1xxxxx1011x1xxxxxxxxxx
  7821. movprfx. */
  7822. return 1756;
  7823. }
  7824. }
  7825. }
  7826. }
  7827. else
  7828. {
  7829. if (((word >> 22) & 0x1) == 0)
  7830. {
  7831. if (((word >> 21) & 0x1) == 0)
  7832. {
  7833. if (((word >> 23) & 0x1) == 0)
  7834. {
  7835. /* 33222222222211111111110000000000
  7836. 10987654321098765432109876543210
  7837. 100001x0000xxxxx101xxxxxxxxxxxxx
  7838. ldnt1b. */
  7839. return 2103;
  7840. }
  7841. else
  7842. {
  7843. /* 33222222222211111111110000000000
  7844. 10987654321098765432109876543210
  7845. 100001x0100xxxxx101xxxxxxxxxxxxx
  7846. ldnt1h. */
  7847. return 2106;
  7848. }
  7849. }
  7850. else
  7851. {
  7852. if (((word >> 23) & 0x1) == 0)
  7853. {
  7854. /* 33222222222211111111110000000000
  7855. 10987654321098765432109876543210
  7856. 100001x0001xxxxx101xxxxxxxxxxxxx
  7857. ldff1sb. */
  7858. return 1682;
  7859. }
  7860. else
  7861. {
  7862. /* 33222222222211111111110000000000
  7863. 10987654321098765432109876543210
  7864. 100001x0101xxxxx101xxxxxxxxxxxxx
  7865. ldff1sh. */
  7866. return 1694;
  7867. }
  7868. }
  7869. }
  7870. else
  7871. {
  7872. if (((word >> 23) & 0x1) == 0)
  7873. {
  7874. /* 33222222222211111111110000000000
  7875. 10987654321098765432109876543210
  7876. 100001x001xxxxxx101xxxxxxxxxxxxx
  7877. ld1rb. */
  7878. return 1550;
  7879. }
  7880. else
  7881. {
  7882. /* 33222222222211111111110000000000
  7883. 10987654321098765432109876543210
  7884. 100001x011xxxxxx101xxxxxxxxxxxxx
  7885. ld1rh. */
  7886. return 1554;
  7887. }
  7888. }
  7889. }
  7890. }
  7891. else
  7892. {
  7893. if (((word >> 21) & 0x1) == 0)
  7894. {
  7895. if (((word >> 31) & 0x1) == 0)
  7896. {
  7897. if (((word >> 16) & 0x1) == 0)
  7898. {
  7899. if (((word >> 17) & 0x1) == 0)
  7900. {
  7901. if (((word >> 18) & 0x1) == 0)
  7902. {
  7903. if (((word >> 19) & 0x1) == 0)
  7904. {
  7905. /* 33222222222211111111110000000000
  7906. 10987654321098765432109876543210
  7907. 010001x0xx0x0000101xxxxxxxxxxxxx
  7908. urecpe. */
  7909. return 2314;
  7910. }
  7911. else
  7912. {
  7913. /* 33222222222211111111110000000000
  7914. 10987654321098765432109876543210
  7915. 010001x0xx0x1000101xxxxxxxxxxxxx
  7916. sqabs. */
  7917. return 2176;
  7918. }
  7919. }
  7920. else
  7921. {
  7922. if (((word >> 20) & 0x1) == 0)
  7923. {
  7924. /* 33222222222211111111110000000000
  7925. 10987654321098765432109876543210
  7926. 010001x0xx00x100101xxxxxxxxxxxxx
  7927. sadalp. */
  7928. return 2140;
  7929. }
  7930. else
  7931. {
  7932. /* 33222222222211111111110000000000
  7933. 10987654321098765432109876543210
  7934. 010001x0xx01x100101xxxxxxxxxxxxx
  7935. smaxp. */
  7936. return 2154;
  7937. }
  7938. }
  7939. }
  7940. else
  7941. {
  7942. /* 33222222222211111111110000000000
  7943. 10987654321098765432109876543210
  7944. 010001x0xx0xxx10101xxxxxxxxxxxxx
  7945. sminp. */
  7946. return 2155;
  7947. }
  7948. }
  7949. else
  7950. {
  7951. if (((word >> 17) & 0x1) == 0)
  7952. {
  7953. if (((word >> 18) & 0x1) == 0)
  7954. {
  7955. if (((word >> 19) & 0x1) == 0)
  7956. {
  7957. if (((word >> 20) & 0x1) == 0)
  7958. {
  7959. /* 33222222222211111111110000000000
  7960. 10987654321098765432109876543210
  7961. 010001x0xx000001101xxxxxxxxxxxxx
  7962. ursqrte. */
  7963. return 2319;
  7964. }
  7965. else
  7966. {
  7967. /* 33222222222211111111110000000000
  7968. 10987654321098765432109876543210
  7969. 010001x0xx010001101xxxxxxxxxxxxx
  7970. addp. */
  7971. return 2065;
  7972. }
  7973. }
  7974. else
  7975. {
  7976. /* 33222222222211111111110000000000
  7977. 10987654321098765432109876543210
  7978. 010001x0xx0x1001101xxxxxxxxxxxxx
  7979. sqneg. */
  7980. return 2203;
  7981. }
  7982. }
  7983. else
  7984. {
  7985. if (((word >> 20) & 0x1) == 0)
  7986. {
  7987. /* 33222222222211111111110000000000
  7988. 10987654321098765432109876543210
  7989. 010001x0xx00x101101xxxxxxxxxxxxx
  7990. uadalp. */
  7991. return 2271;
  7992. }
  7993. else
  7994. {
  7995. /* 33222222222211111111110000000000
  7996. 10987654321098765432109876543210
  7997. 010001x0xx01x101101xxxxxxxxxxxxx
  7998. umaxp. */
  7999. return 2279;
  8000. }
  8001. }
  8002. }
  8003. else
  8004. {
  8005. /* 33222222222211111111110000000000
  8006. 10987654321098765432109876543210
  8007. 010001x0xx0xxx11101xxxxxxxxxxxxx
  8008. uminp. */
  8009. return 2280;
  8010. }
  8011. }
  8012. }
  8013. else
  8014. {
  8015. if (((word >> 23) & 0x1) == 0)
  8016. {
  8017. /* 33222222222211111111110000000000
  8018. 10987654321098765432109876543210
  8019. 110001x00x0xxxxx101xxxxxxxxxxxxx
  8020. ldff1sb. */
  8021. return 1681;
  8022. }
  8023. else
  8024. {
  8025. /* 33222222222211111111110000000000
  8026. 10987654321098765432109876543210
  8027. 110001x01x0xxxxx101xxxxxxxxxxxxx
  8028. ldff1sh. */
  8029. return 1692;
  8030. }
  8031. }
  8032. }
  8033. else
  8034. {
  8035. if (((word >> 22) & 0x1) == 0)
  8036. {
  8037. if (((word >> 23) & 0x1) == 0)
  8038. {
  8039. /* 33222222222211111111110000000000
  8040. 10987654321098765432109876543210
  8041. x10001x0001xxxxx101xxxxxxxxxxxxx
  8042. ldff1sb. */
  8043. return 1683;
  8044. }
  8045. else
  8046. {
  8047. if (((word >> 31) & 0x1) == 0)
  8048. {
  8049. if (((word >> 10) & 0x1) == 0)
  8050. {
  8051. if (((word >> 12) & 0x1) == 0)
  8052. {
  8053. /* 33222222222211111111110000000000
  8054. 10987654321098765432109876543210
  8055. 010001x0101xxxxx1010x0xxxxxxxxxx
  8056. smlslb. */
  8057. return 2162;
  8058. }
  8059. else
  8060. {
  8061. /* 33222222222211111111110000000000
  8062. 10987654321098765432109876543210
  8063. 010001x0101xxxxx1011x0xxxxxxxxxx
  8064. umlslb. */
  8065. return 2287;
  8066. }
  8067. }
  8068. else
  8069. {
  8070. if (((word >> 12) & 0x1) == 0)
  8071. {
  8072. /* 33222222222211111111110000000000
  8073. 10987654321098765432109876543210
  8074. 010001x0101xxxxx1010x1xxxxxxxxxx
  8075. smlslt. */
  8076. return 2165;
  8077. }
  8078. else
  8079. {
  8080. /* 33222222222211111111110000000000
  8081. 10987654321098765432109876543210
  8082. 010001x0101xxxxx1011x1xxxxxxxxxx
  8083. umlslt. */
  8084. return 2290;
  8085. }
  8086. }
  8087. }
  8088. else
  8089. {
  8090. /* 33222222222211111111110000000000
  8091. 10987654321098765432109876543210
  8092. 110001x0101xxxxx101xxxxxxxxxxxxx
  8093. ldff1sh. */
  8094. return 1695;
  8095. }
  8096. }
  8097. }
  8098. else
  8099. {
  8100. if (((word >> 23) & 0x1) == 0)
  8101. {
  8102. /* 33222222222211111111110000000000
  8103. 10987654321098765432109876543210
  8104. x10001x0011xxxxx101xxxxxxxxxxxxx
  8105. prfh. */
  8106. return 1795;
  8107. }
  8108. else
  8109. {
  8110. if (((word >> 31) & 0x1) == 0)
  8111. {
  8112. if (((word >> 10) & 0x1) == 0)
  8113. {
  8114. if (((word >> 12) & 0x1) == 0)
  8115. {
  8116. /* 33222222222211111111110000000000
  8117. 10987654321098765432109876543210
  8118. 010001x0111xxxxx1010x0xxxxxxxxxx
  8119. smlslb. */
  8120. return 2163;
  8121. }
  8122. else
  8123. {
  8124. /* 33222222222211111111110000000000
  8125. 10987654321098765432109876543210
  8126. 010001x0111xxxxx1011x0xxxxxxxxxx
  8127. umlslb. */
  8128. return 2288;
  8129. }
  8130. }
  8131. else
  8132. {
  8133. if (((word >> 12) & 0x1) == 0)
  8134. {
  8135. /* 33222222222211111111110000000000
  8136. 10987654321098765432109876543210
  8137. 010001x0111xxxxx1010x1xxxxxxxxxx
  8138. smlslt. */
  8139. return 2166;
  8140. }
  8141. else
  8142. {
  8143. /* 33222222222211111111110000000000
  8144. 10987654321098765432109876543210
  8145. 010001x0111xxxxx1011x1xxxxxxxxxx
  8146. umlslt. */
  8147. return 2291;
  8148. }
  8149. }
  8150. }
  8151. else
  8152. {
  8153. /* 33222222222211111111110000000000
  8154. 10987654321098765432109876543210
  8155. 110001x0111xxxxx101xxxxxxxxxxxxx
  8156. ldff1sh. */
  8157. return 1693;
  8158. }
  8159. }
  8160. }
  8161. }
  8162. }
  8163. }
  8164. }
  8165. else
  8166. {
  8167. if (((word >> 15) & 0x1) == 0)
  8168. {
  8169. if (((word >> 21) & 0x1) == 0)
  8170. {
  8171. if (((word >> 30) & 0x1) == 0)
  8172. {
  8173. if (((word >> 31) & 0x1) == 0)
  8174. {
  8175. /* 33222222222211111111110000000000
  8176. 10987654321098765432109876543210
  8177. 000001x0xx0xxxxx011xxxxxxxxxxxxx
  8178. mls. */
  8179. return 1755;
  8180. }
  8181. else
  8182. {
  8183. if (((word >> 23) & 0x1) == 0)
  8184. {
  8185. /* 33222222222211111111110000000000
  8186. 10987654321098765432109876543210
  8187. 100001x00x0xxxxx011xxxxxxxxxxxxx
  8188. ldff1b. */
  8189. return 1639;
  8190. }
  8191. else
  8192. {
  8193. /* 33222222222211111111110000000000
  8194. 10987654321098765432109876543210
  8195. 100001x01x0xxxxx011xxxxxxxxxxxxx
  8196. ldff1h. */
  8197. return 1659;
  8198. }
  8199. }
  8200. }
  8201. else
  8202. {
  8203. if (((word >> 31) & 0x1) == 0)
  8204. {
  8205. if (((word >> 10) & 0x1) == 0)
  8206. {
  8207. if (((word >> 11) & 0x1) == 0)
  8208. {
  8209. if (((word >> 12) & 0x1) == 0)
  8210. {
  8211. /* 33222222222211111111110000000000
  8212. 10987654321098765432109876543210
  8213. 010001x0xx0xxxxx011000xxxxxxxxxx
  8214. sqdmlalb. */
  8215. return 2181;
  8216. }
  8217. else
  8218. {
  8219. /* 33222222222211111111110000000000
  8220. 10987654321098765432109876543210
  8221. 010001x0xx0xxxxx011100xxxxxxxxxx
  8222. sqrdmlah. */
  8223. return 2210;
  8224. }
  8225. }
  8226. else
  8227. {
  8228. if (((word >> 12) & 0x1) == 0)
  8229. {
  8230. /* 33222222222211111111110000000000
  8231. 10987654321098765432109876543210
  8232. 010001x0xx0xxxxx011010xxxxxxxxxx
  8233. sqdmlslb. */
  8234. return 2188;
  8235. }
  8236. else
  8237. {
  8238. /* 33222222222211111111110000000000
  8239. 10987654321098765432109876543210
  8240. 010001x0xx0xxxxx011110xxxxxxxxxx
  8241. usdot. */
  8242. return 2470;
  8243. }
  8244. }
  8245. }
  8246. else
  8247. {
  8248. if (((word >> 11) & 0x1) == 0)
  8249. {
  8250. if (((word >> 12) & 0x1) == 0)
  8251. {
  8252. /* 33222222222211111111110000000000
  8253. 10987654321098765432109876543210
  8254. 010001x0xx0xxxxx011001xxxxxxxxxx
  8255. sqdmlalt. */
  8256. return 2185;
  8257. }
  8258. else
  8259. {
  8260. /* 33222222222211111111110000000000
  8261. 10987654321098765432109876543210
  8262. 010001x0xx0xxxxx011101xxxxxxxxxx
  8263. sqrdmlsh. */
  8264. return 2214;
  8265. }
  8266. }
  8267. else
  8268. {
  8269. /* 33222222222211111111110000000000
  8270. 10987654321098765432109876543210
  8271. 010001x0xx0xxxxx011x11xxxxxxxxxx
  8272. sqdmlslt. */
  8273. return 2192;
  8274. }
  8275. }
  8276. }
  8277. else
  8278. {
  8279. if (((word >> 23) & 0x1) == 0)
  8280. {
  8281. /* 33222222222211111111110000000000
  8282. 10987654321098765432109876543210
  8283. 110001x00x0xxxxx011xxxxxxxxxxxxx
  8284. ldff1b. */
  8285. return 1648;
  8286. }
  8287. else
  8288. {
  8289. /* 33222222222211111111110000000000
  8290. 10987654321098765432109876543210
  8291. 110001x01x0xxxxx011xxxxxxxxxxxxx
  8292. ldff1h. */
  8293. return 1667;
  8294. }
  8295. }
  8296. }
  8297. }
  8298. else
  8299. {
  8300. if (((word >> 30) & 0x1) == 0)
  8301. {
  8302. if (((word >> 31) & 0x1) == 0)
  8303. {
  8304. if (((word >> 10) & 0x1) == 0)
  8305. {
  8306. if (((word >> 11) & 0x1) == 0)
  8307. {
  8308. if (((word >> 12) & 0x1) == 0)
  8309. {
  8310. /* 33222222222211111111110000000000
  8311. 10987654321098765432109876543210
  8312. 000001x0xx1xxxxx011000xxxxxxxxxx
  8313. mul. */
  8314. return 2123;
  8315. }
  8316. else
  8317. {
  8318. /* 33222222222211111111110000000000
  8319. 10987654321098765432109876543210
  8320. 000001x0xx1xxxxx011100xxxxxxxxxx
  8321. sqdmulh. */
  8322. return 2196;
  8323. }
  8324. }
  8325. else
  8326. {
  8327. /* 33222222222211111111110000000000
  8328. 10987654321098765432109876543210
  8329. 000001x0xx1xxxxx011x10xxxxxxxxxx
  8330. smulh. */
  8331. return 2168;
  8332. }
  8333. }
  8334. else
  8335. {
  8336. if (((word >> 11) & 0x1) == 0)
  8337. {
  8338. if (((word >> 12) & 0x1) == 0)
  8339. {
  8340. /* 33222222222211111111110000000000
  8341. 10987654321098765432109876543210
  8342. 000001x0xx1xxxxx011001xxxxxxxxxx
  8343. pmul. */
  8344. return 2126;
  8345. }
  8346. else
  8347. {
  8348. /* 33222222222211111111110000000000
  8349. 10987654321098765432109876543210
  8350. 000001x0xx1xxxxx011101xxxxxxxxxx
  8351. sqrdmulh. */
  8352. return 2218;
  8353. }
  8354. }
  8355. else
  8356. {
  8357. /* 33222222222211111111110000000000
  8358. 10987654321098765432109876543210
  8359. 000001x0xx1xxxxx011x11xxxxxxxxxx
  8360. umulh. */
  8361. return 2293;
  8362. }
  8363. }
  8364. }
  8365. else
  8366. {
  8367. if (((word >> 23) & 0x1) == 0)
  8368. {
  8369. /* 33222222222211111111110000000000
  8370. 10987654321098765432109876543210
  8371. 100001x00x1xxxxx011xxxxxxxxxxxxx
  8372. prfd. */
  8373. return 1785;
  8374. }
  8375. else
  8376. {
  8377. /* 33222222222211111111110000000000
  8378. 10987654321098765432109876543210
  8379. 100001x01x1xxxxx011xxxxxxxxxxxxx
  8380. ldff1h. */
  8381. return 1660;
  8382. }
  8383. }
  8384. }
  8385. else
  8386. {
  8387. if (((word >> 23) & 0x1) == 0)
  8388. {
  8389. /* 33222222222211111111110000000000
  8390. 10987654321098765432109876543210
  8391. x10001x00x1xxxxx011xxxxxxxxxxxxx
  8392. prfd. */
  8393. return 1787;
  8394. }
  8395. else
  8396. {
  8397. if (((word >> 31) & 0x1) == 0)
  8398. {
  8399. if (((word >> 12) & 0x1) == 0)
  8400. {
  8401. if (((word >> 22) & 0x1) == 0)
  8402. {
  8403. /* 33222222222211111111110000000000
  8404. 10987654321098765432109876543210
  8405. 010001x0101xxxxx0110xxxxxxxxxxxx
  8406. cmla. */
  8407. return 2075;
  8408. }
  8409. else
  8410. {
  8411. /* 33222222222211111111110000000000
  8412. 10987654321098765432109876543210
  8413. 010001x0111xxxxx0110xxxxxxxxxxxx
  8414. cmla. */
  8415. return 2076;
  8416. }
  8417. }
  8418. else
  8419. {
  8420. if (((word >> 22) & 0x1) == 0)
  8421. {
  8422. /* 33222222222211111111110000000000
  8423. 10987654321098765432109876543210
  8424. 010001x0101xxxxx0111xxxxxxxxxxxx
  8425. sqrdcmlah. */
  8426. return 2204;
  8427. }
  8428. else
  8429. {
  8430. /* 33222222222211111111110000000000
  8431. 10987654321098765432109876543210
  8432. 010001x0111xxxxx0111xxxxxxxxxxxx
  8433. sqrdcmlah. */
  8434. return 2205;
  8435. }
  8436. }
  8437. }
  8438. else
  8439. {
  8440. /* 33222222222211111111110000000000
  8441. 10987654321098765432109876543210
  8442. 110001x01x1xxxxx011xxxxxxxxxxxxx
  8443. ldff1h. */
  8444. return 1668;
  8445. }
  8446. }
  8447. }
  8448. }
  8449. }
  8450. else
  8451. {
  8452. if (((word >> 30) & 0x1) == 0)
  8453. {
  8454. if (((word >> 31) & 0x1) == 0)
  8455. {
  8456. if (((word >> 21) & 0x1) == 0)
  8457. {
  8458. /* 33222222222211111111110000000000
  8459. 10987654321098765432109876543210
  8460. 000001x0xx0xxxxx111xxxxxxxxxxxxx
  8461. msb. */
  8462. return 1758;
  8463. }
  8464. else
  8465. {
  8466. if (((word >> 10) & 0x1) == 0)
  8467. {
  8468. if (((word >> 11) & 0x1) == 0)
  8469. {
  8470. if (((word >> 12) & 0x1) == 0)
  8471. {
  8472. if (((word >> 20) & 0x1) == 0)
  8473. {
  8474. if (((word >> 22) & 0x1) == 0)
  8475. {
  8476. if (((word >> 23) & 0x1) == 0)
  8477. {
  8478. /* 33222222222211111111110000000000
  8479. 10987654321098765432109876543210
  8480. 000001x00010xxxx111000xxxxxxxxxx
  8481. cntb. */
  8482. return 1360;
  8483. }
  8484. else
  8485. {
  8486. /* 33222222222211111111110000000000
  8487. 10987654321098765432109876543210
  8488. 000001x01010xxxx111000xxxxxxxxxx
  8489. cntw. */
  8490. return 1364;
  8491. }
  8492. }
  8493. else
  8494. {
  8495. if (((word >> 23) & 0x1) == 0)
  8496. {
  8497. /* 33222222222211111111110000000000
  8498. 10987654321098765432109876543210
  8499. 000001x00110xxxx111000xxxxxxxxxx
  8500. cnth. */
  8501. return 1362;
  8502. }
  8503. else
  8504. {
  8505. /* 33222222222211111111110000000000
  8506. 10987654321098765432109876543210
  8507. 000001x01110xxxx111000xxxxxxxxxx
  8508. cntd. */
  8509. return 1361;
  8510. }
  8511. }
  8512. }
  8513. else
  8514. {
  8515. if (((word >> 22) & 0x1) == 0)
  8516. {
  8517. if (((word >> 23) & 0x1) == 0)
  8518. {
  8519. /* 33222222222211111111110000000000
  8520. 10987654321098765432109876543210
  8521. 000001x00011xxxx111000xxxxxxxxxx
  8522. incb. */
  8523. return 1496;
  8524. }
  8525. else
  8526. {
  8527. /* 33222222222211111111110000000000
  8528. 10987654321098765432109876543210
  8529. 000001x01011xxxx111000xxxxxxxxxx
  8530. incw. */
  8531. return 1504;
  8532. }
  8533. }
  8534. else
  8535. {
  8536. if (((word >> 23) & 0x1) == 0)
  8537. {
  8538. /* 33222222222211111111110000000000
  8539. 10987654321098765432109876543210
  8540. 000001x00111xxxx111000xxxxxxxxxx
  8541. inch. */
  8542. return 1500;
  8543. }
  8544. else
  8545. {
  8546. /* 33222222222211111111110000000000
  8547. 10987654321098765432109876543210
  8548. 000001x01111xxxx111000xxxxxxxxxx
  8549. incd. */
  8550. return 1498;
  8551. }
  8552. }
  8553. }
  8554. }
  8555. else
  8556. {
  8557. if (((word >> 20) & 0x1) == 0)
  8558. {
  8559. if (((word >> 22) & 0x1) == 0)
  8560. {
  8561. if (((word >> 23) & 0x1) == 0)
  8562. {
  8563. /* 33222222222211111111110000000000
  8564. 10987654321098765432109876543210
  8565. 000001x00010xxxx111100xxxxxxxxxx
  8566. sqincb. */
  8567. return 1863;
  8568. }
  8569. else
  8570. {
  8571. /* 33222222222211111111110000000000
  8572. 10987654321098765432109876543210
  8573. 000001x01010xxxx111100xxxxxxxxxx
  8574. sqincw. */
  8575. return 1875;
  8576. }
  8577. }
  8578. else
  8579. {
  8580. if (((word >> 23) & 0x1) == 0)
  8581. {
  8582. /* 33222222222211111111110000000000
  8583. 10987654321098765432109876543210
  8584. 000001x00110xxxx111100xxxxxxxxxx
  8585. sqinch. */
  8586. return 1869;
  8587. }
  8588. else
  8589. {
  8590. /* 33222222222211111111110000000000
  8591. 10987654321098765432109876543210
  8592. 000001x01110xxxx111100xxxxxxxxxx
  8593. sqincd. */
  8594. return 1866;
  8595. }
  8596. }
  8597. }
  8598. else
  8599. {
  8600. if (((word >> 22) & 0x1) == 0)
  8601. {
  8602. if (((word >> 23) & 0x1) == 0)
  8603. {
  8604. /* 33222222222211111111110000000000
  8605. 10987654321098765432109876543210
  8606. 000001x00011xxxx111100xxxxxxxxxx
  8607. sqincb. */
  8608. return 1862;
  8609. }
  8610. else
  8611. {
  8612. /* 33222222222211111111110000000000
  8613. 10987654321098765432109876543210
  8614. 000001x01011xxxx111100xxxxxxxxxx
  8615. sqincw. */
  8616. return 1874;
  8617. }
  8618. }
  8619. else
  8620. {
  8621. if (((word >> 23) & 0x1) == 0)
  8622. {
  8623. /* 33222222222211111111110000000000
  8624. 10987654321098765432109876543210
  8625. 000001x00111xxxx111100xxxxxxxxxx
  8626. sqinch. */
  8627. return 1868;
  8628. }
  8629. else
  8630. {
  8631. /* 33222222222211111111110000000000
  8632. 10987654321098765432109876543210
  8633. 000001x01111xxxx111100xxxxxxxxxx
  8634. sqincd. */
  8635. return 1865;
  8636. }
  8637. }
  8638. }
  8639. }
  8640. }
  8641. else
  8642. {
  8643. if (((word >> 20) & 0x1) == 0)
  8644. {
  8645. if (((word >> 22) & 0x1) == 0)
  8646. {
  8647. if (((word >> 23) & 0x1) == 0)
  8648. {
  8649. /* 33222222222211111111110000000000
  8650. 10987654321098765432109876543210
  8651. 000001x00010xxxx111x10xxxxxxxxxx
  8652. sqdecb. */
  8653. return 1849;
  8654. }
  8655. else
  8656. {
  8657. /* 33222222222211111111110000000000
  8658. 10987654321098765432109876543210
  8659. 000001x01010xxxx111x10xxxxxxxxxx
  8660. sqdecw. */
  8661. return 1861;
  8662. }
  8663. }
  8664. else
  8665. {
  8666. if (((word >> 23) & 0x1) == 0)
  8667. {
  8668. /* 33222222222211111111110000000000
  8669. 10987654321098765432109876543210
  8670. 000001x00110xxxx111x10xxxxxxxxxx
  8671. sqdech. */
  8672. return 1855;
  8673. }
  8674. else
  8675. {
  8676. /* 33222222222211111111110000000000
  8677. 10987654321098765432109876543210
  8678. 000001x01110xxxx111x10xxxxxxxxxx
  8679. sqdecd. */
  8680. return 1852;
  8681. }
  8682. }
  8683. }
  8684. else
  8685. {
  8686. if (((word >> 22) & 0x1) == 0)
  8687. {
  8688. if (((word >> 23) & 0x1) == 0)
  8689. {
  8690. /* 33222222222211111111110000000000
  8691. 10987654321098765432109876543210
  8692. 000001x00011xxxx111x10xxxxxxxxxx
  8693. sqdecb. */
  8694. return 1848;
  8695. }
  8696. else
  8697. {
  8698. /* 33222222222211111111110000000000
  8699. 10987654321098765432109876543210
  8700. 000001x01011xxxx111x10xxxxxxxxxx
  8701. sqdecw. */
  8702. return 1860;
  8703. }
  8704. }
  8705. else
  8706. {
  8707. if (((word >> 23) & 0x1) == 0)
  8708. {
  8709. /* 33222222222211111111110000000000
  8710. 10987654321098765432109876543210
  8711. 000001x00111xxxx111x10xxxxxxxxxx
  8712. sqdech. */
  8713. return 1854;
  8714. }
  8715. else
  8716. {
  8717. /* 33222222222211111111110000000000
  8718. 10987654321098765432109876543210
  8719. 000001x01111xxxx111x10xxxxxxxxxx
  8720. sqdecd. */
  8721. return 1851;
  8722. }
  8723. }
  8724. }
  8725. }
  8726. }
  8727. else
  8728. {
  8729. if (((word >> 11) & 0x1) == 0)
  8730. {
  8731. if (((word >> 12) & 0x1) == 0)
  8732. {
  8733. if (((word >> 22) & 0x1) == 0)
  8734. {
  8735. if (((word >> 23) & 0x1) == 0)
  8736. {
  8737. /* 33222222222211111111110000000000
  8738. 10987654321098765432109876543210
  8739. 000001x0001xxxxx111001xxxxxxxxxx
  8740. decb. */
  8741. return 1371;
  8742. }
  8743. else
  8744. {
  8745. /* 33222222222211111111110000000000
  8746. 10987654321098765432109876543210
  8747. 000001x0101xxxxx111001xxxxxxxxxx
  8748. decw. */
  8749. return 1379;
  8750. }
  8751. }
  8752. else
  8753. {
  8754. if (((word >> 23) & 0x1) == 0)
  8755. {
  8756. /* 33222222222211111111110000000000
  8757. 10987654321098765432109876543210
  8758. 000001x0011xxxxx111001xxxxxxxxxx
  8759. dech. */
  8760. return 1375;
  8761. }
  8762. else
  8763. {
  8764. /* 33222222222211111111110000000000
  8765. 10987654321098765432109876543210
  8766. 000001x0111xxxxx111001xxxxxxxxxx
  8767. decd. */
  8768. return 1373;
  8769. }
  8770. }
  8771. }
  8772. else
  8773. {
  8774. if (((word >> 20) & 0x1) == 0)
  8775. {
  8776. if (((word >> 22) & 0x1) == 0)
  8777. {
  8778. if (((word >> 23) & 0x1) == 0)
  8779. {
  8780. /* 33222222222211111111110000000000
  8781. 10987654321098765432109876543210
  8782. 000001x00010xxxx111101xxxxxxxxxx
  8783. uqincb. */
  8784. return 2010;
  8785. }
  8786. else
  8787. {
  8788. /* 33222222222211111111110000000000
  8789. 10987654321098765432109876543210
  8790. 000001x01010xxxx111101xxxxxxxxxx
  8791. uqincw. */
  8792. return 2022;
  8793. }
  8794. }
  8795. else
  8796. {
  8797. if (((word >> 23) & 0x1) == 0)
  8798. {
  8799. /* 33222222222211111111110000000000
  8800. 10987654321098765432109876543210
  8801. 000001x00110xxxx111101xxxxxxxxxx
  8802. uqinch. */
  8803. return 2016;
  8804. }
  8805. else
  8806. {
  8807. /* 33222222222211111111110000000000
  8808. 10987654321098765432109876543210
  8809. 000001x01110xxxx111101xxxxxxxxxx
  8810. uqincd. */
  8811. return 2013;
  8812. }
  8813. }
  8814. }
  8815. else
  8816. {
  8817. if (((word >> 22) & 0x1) == 0)
  8818. {
  8819. if (((word >> 23) & 0x1) == 0)
  8820. {
  8821. /* 33222222222211111111110000000000
  8822. 10987654321098765432109876543210
  8823. 000001x00011xxxx111101xxxxxxxxxx
  8824. uqincb. */
  8825. return 2011;
  8826. }
  8827. else
  8828. {
  8829. /* 33222222222211111111110000000000
  8830. 10987654321098765432109876543210
  8831. 000001x01011xxxx111101xxxxxxxxxx
  8832. uqincw. */
  8833. return 2023;
  8834. }
  8835. }
  8836. else
  8837. {
  8838. if (((word >> 23) & 0x1) == 0)
  8839. {
  8840. /* 33222222222211111111110000000000
  8841. 10987654321098765432109876543210
  8842. 000001x00111xxxx111101xxxxxxxxxx
  8843. uqinch. */
  8844. return 2017;
  8845. }
  8846. else
  8847. {
  8848. /* 33222222222211111111110000000000
  8849. 10987654321098765432109876543210
  8850. 000001x01111xxxx111101xxxxxxxxxx
  8851. uqincd. */
  8852. return 2014;
  8853. }
  8854. }
  8855. }
  8856. }
  8857. }
  8858. else
  8859. {
  8860. if (((word >> 20) & 0x1) == 0)
  8861. {
  8862. if (((word >> 22) & 0x1) == 0)
  8863. {
  8864. if (((word >> 23) & 0x1) == 0)
  8865. {
  8866. /* 33222222222211111111110000000000
  8867. 10987654321098765432109876543210
  8868. 000001x00010xxxx111x11xxxxxxxxxx
  8869. uqdecb. */
  8870. return 1996;
  8871. }
  8872. else
  8873. {
  8874. /* 33222222222211111111110000000000
  8875. 10987654321098765432109876543210
  8876. 000001x01010xxxx111x11xxxxxxxxxx
  8877. uqdecw. */
  8878. return 2008;
  8879. }
  8880. }
  8881. else
  8882. {
  8883. if (((word >> 23) & 0x1) == 0)
  8884. {
  8885. /* 33222222222211111111110000000000
  8886. 10987654321098765432109876543210
  8887. 000001x00110xxxx111x11xxxxxxxxxx
  8888. uqdech. */
  8889. return 2002;
  8890. }
  8891. else
  8892. {
  8893. /* 33222222222211111111110000000000
  8894. 10987654321098765432109876543210
  8895. 000001x01110xxxx111x11xxxxxxxxxx
  8896. uqdecd. */
  8897. return 1999;
  8898. }
  8899. }
  8900. }
  8901. else
  8902. {
  8903. if (((word >> 22) & 0x1) == 0)
  8904. {
  8905. if (((word >> 23) & 0x1) == 0)
  8906. {
  8907. /* 33222222222211111111110000000000
  8908. 10987654321098765432109876543210
  8909. 000001x00011xxxx111x11xxxxxxxxxx
  8910. uqdecb. */
  8911. return 1997;
  8912. }
  8913. else
  8914. {
  8915. /* 33222222222211111111110000000000
  8916. 10987654321098765432109876543210
  8917. 000001x01011xxxx111x11xxxxxxxxxx
  8918. uqdecw. */
  8919. return 2009;
  8920. }
  8921. }
  8922. else
  8923. {
  8924. if (((word >> 23) & 0x1) == 0)
  8925. {
  8926. /* 33222222222211111111110000000000
  8927. 10987654321098765432109876543210
  8928. 000001x00111xxxx111x11xxxxxxxxxx
  8929. uqdech. */
  8930. return 2003;
  8931. }
  8932. else
  8933. {
  8934. /* 33222222222211111111110000000000
  8935. 10987654321098765432109876543210
  8936. 000001x01111xxxx111x11xxxxxxxxxx
  8937. uqdecd. */
  8938. return 2000;
  8939. }
  8940. }
  8941. }
  8942. }
  8943. }
  8944. }
  8945. }
  8946. else
  8947. {
  8948. if (((word >> 22) & 0x1) == 0)
  8949. {
  8950. if (((word >> 21) & 0x1) == 0)
  8951. {
  8952. if (((word >> 23) & 0x1) == 0)
  8953. {
  8954. /* 33222222222211111111110000000000
  8955. 10987654321098765432109876543210
  8956. 100001x0000xxxxx111xxxxxxxxxxxxx
  8957. prfb. */
  8958. return 1782;
  8959. }
  8960. else
  8961. {
  8962. /* 33222222222211111111110000000000
  8963. 10987654321098765432109876543210
  8964. 100001x0100xxxxx111xxxxxxxxxxxxx
  8965. prfh. */
  8966. return 1796;
  8967. }
  8968. }
  8969. else
  8970. {
  8971. if (((word >> 23) & 0x1) == 0)
  8972. {
  8973. /* 33222222222211111111110000000000
  8974. 10987654321098765432109876543210
  8975. 100001x0001xxxxx111xxxxxxxxxxxxx
  8976. ldff1b. */
  8977. return 1650;
  8978. }
  8979. else
  8980. {
  8981. /* 33222222222211111111110000000000
  8982. 10987654321098765432109876543210
  8983. 100001x0101xxxxx111xxxxxxxxxxxxx
  8984. ldff1h. */
  8985. return 1671;
  8986. }
  8987. }
  8988. }
  8989. else
  8990. {
  8991. if (((word >> 23) & 0x1) == 0)
  8992. {
  8993. /* 33222222222211111111110000000000
  8994. 10987654321098765432109876543210
  8995. 100001x001xxxxxx111xxxxxxxxxxxxx
  8996. ld1rb. */
  8997. return 1552;
  8998. }
  8999. else
  9000. {
  9001. /* 33222222222211111111110000000000
  9002. 10987654321098765432109876543210
  9003. 100001x011xxxxxx111xxxxxxxxxxxxx
  9004. ld1rh. */
  9005. return 1556;
  9006. }
  9007. }
  9008. }
  9009. }
  9010. else
  9011. {
  9012. if (((word >> 21) & 0x1) == 0)
  9013. {
  9014. if (((word >> 22) & 0x1) == 0)
  9015. {
  9016. if (((word >> 23) & 0x1) == 0)
  9017. {
  9018. /* 33222222222211111111110000000000
  9019. 10987654321098765432109876543210
  9020. x10001x0000xxxxx111xxxxxxxxxxxxx
  9021. prfb. */
  9022. return 1784;
  9023. }
  9024. else
  9025. {
  9026. /* 33222222222211111111110000000000
  9027. 10987654321098765432109876543210
  9028. x10001x0100xxxxx111xxxxxxxxxxxxx
  9029. prfh. */
  9030. return 1798;
  9031. }
  9032. }
  9033. else
  9034. {
  9035. if (((word >> 23) & 0x1) == 0)
  9036. {
  9037. /* 33222222222211111111110000000000
  9038. 10987654321098765432109876543210
  9039. x10001x0010xxxxx111xxxxxxxxxxxxx
  9040. ldff1b. */
  9041. return 1649;
  9042. }
  9043. else
  9044. {
  9045. /* 33222222222211111111110000000000
  9046. 10987654321098765432109876543210
  9047. x10001x0110xxxxx111xxxxxxxxxxxxx
  9048. ldff1h. */
  9049. return 1669;
  9050. }
  9051. }
  9052. }
  9053. else
  9054. {
  9055. if (((word >> 23) & 0x1) == 0)
  9056. {
  9057. if (((word >> 31) & 0x1) == 0)
  9058. {
  9059. if (((word >> 10) & 0x1) == 0)
  9060. {
  9061. if (((word >> 11) & 0x1) == 0)
  9062. {
  9063. /* 33222222222211111111110000000000
  9064. 10987654321098765432109876543210
  9065. 010001x00x1xxxxx111x00xxxxxxxxxx
  9066. sqdmulh. */
  9067. return 2193;
  9068. }
  9069. else
  9070. {
  9071. /* 33222222222211111111110000000000
  9072. 10987654321098765432109876543210
  9073. 010001x00x1xxxxx111x10xxxxxxxxxx
  9074. mul. */
  9075. return 2120;
  9076. }
  9077. }
  9078. else
  9079. {
  9080. /* 33222222222211111111110000000000
  9081. 10987654321098765432109876543210
  9082. 010001x00x1xxxxx111xx1xxxxxxxxxx
  9083. sqrdmulh. */
  9084. return 2215;
  9085. }
  9086. }
  9087. else
  9088. {
  9089. if (((word >> 22) & 0x1) == 0)
  9090. {
  9091. /* 33222222222211111111110000000000
  9092. 10987654321098765432109876543210
  9093. 110001x0001xxxxx111xxxxxxxxxxxxx
  9094. ldff1b. */
  9095. return 1651;
  9096. }
  9097. else
  9098. {
  9099. /* 33222222222211111111110000000000
  9100. 10987654321098765432109876543210
  9101. 110001x0011xxxxx111xxxxxxxxxxxxx
  9102. prfd. */
  9103. return 1788;
  9104. }
  9105. }
  9106. }
  9107. else
  9108. {
  9109. if (((word >> 22) & 0x1) == 0)
  9110. {
  9111. if (((word >> 31) & 0x1) == 0)
  9112. {
  9113. if (((word >> 10) & 0x1) == 0)
  9114. {
  9115. if (((word >> 12) & 0x1) == 0)
  9116. {
  9117. /* 33222222222211111111110000000000
  9118. 10987654321098765432109876543210
  9119. 010001x0101xxxxx1110x0xxxxxxxxxx
  9120. sqdmullb. */
  9121. return 2197;
  9122. }
  9123. else
  9124. {
  9125. if (((word >> 11) & 0x1) == 0)
  9126. {
  9127. /* 33222222222211111111110000000000
  9128. 10987654321098765432109876543210
  9129. 010001x0101xxxxx111100xxxxxxxxxx
  9130. sqdmulh. */
  9131. return 2194;
  9132. }
  9133. else
  9134. {
  9135. /* 33222222222211111111110000000000
  9136. 10987654321098765432109876543210
  9137. 010001x0101xxxxx111110xxxxxxxxxx
  9138. mul. */
  9139. return 2121;
  9140. }
  9141. }
  9142. }
  9143. else
  9144. {
  9145. if (((word >> 12) & 0x1) == 0)
  9146. {
  9147. /* 33222222222211111111110000000000
  9148. 10987654321098765432109876543210
  9149. 010001x0101xxxxx1110x1xxxxxxxxxx
  9150. sqdmullt. */
  9151. return 2200;
  9152. }
  9153. else
  9154. {
  9155. /* 33222222222211111111110000000000
  9156. 10987654321098765432109876543210
  9157. 010001x0101xxxxx1111x1xxxxxxxxxx
  9158. sqrdmulh. */
  9159. return 2216;
  9160. }
  9161. }
  9162. }
  9163. else
  9164. {
  9165. /* 33222222222211111111110000000000
  9166. 10987654321098765432109876543210
  9167. 110001x0101xxxxx111xxxxxxxxxxxxx
  9168. ldff1h. */
  9169. return 1672;
  9170. }
  9171. }
  9172. else
  9173. {
  9174. if (((word >> 31) & 0x1) == 0)
  9175. {
  9176. if (((word >> 10) & 0x1) == 0)
  9177. {
  9178. if (((word >> 12) & 0x1) == 0)
  9179. {
  9180. /* 33222222222211111111110000000000
  9181. 10987654321098765432109876543210
  9182. 010001x0111xxxxx1110x0xxxxxxxxxx
  9183. sqdmullb. */
  9184. return 2198;
  9185. }
  9186. else
  9187. {
  9188. if (((word >> 11) & 0x1) == 0)
  9189. {
  9190. /* 33222222222211111111110000000000
  9191. 10987654321098765432109876543210
  9192. 010001x0111xxxxx111100xxxxxxxxxx
  9193. sqdmulh. */
  9194. return 2195;
  9195. }
  9196. else
  9197. {
  9198. /* 33222222222211111111110000000000
  9199. 10987654321098765432109876543210
  9200. 010001x0111xxxxx111110xxxxxxxxxx
  9201. mul. */
  9202. return 2122;
  9203. }
  9204. }
  9205. }
  9206. else
  9207. {
  9208. if (((word >> 12) & 0x1) == 0)
  9209. {
  9210. /* 33222222222211111111110000000000
  9211. 10987654321098765432109876543210
  9212. 010001x0111xxxxx1110x1xxxxxxxxxx
  9213. sqdmullt. */
  9214. return 2201;
  9215. }
  9216. else
  9217. {
  9218. /* 33222222222211111111110000000000
  9219. 10987654321098765432109876543210
  9220. 010001x0111xxxxx1111x1xxxxxxxxxx
  9221. sqrdmulh. */
  9222. return 2217;
  9223. }
  9224. }
  9225. }
  9226. else
  9227. {
  9228. /* 33222222222211111111110000000000
  9229. 10987654321098765432109876543210
  9230. 110001x0111xxxxx111xxxxxxxxxxxxx
  9231. ldff1h. */
  9232. return 1670;
  9233. }
  9234. }
  9235. }
  9236. }
  9237. }
  9238. }
  9239. }
  9240. }
  9241. }
  9242. else
  9243. {
  9244. if (((word >> 21) & 0x1) == 0)
  9245. {
  9246. if (((word >> 15) & 0x1) == 0)
  9247. {
  9248. if (((word >> 30) & 0x1) == 0)
  9249. {
  9250. if (((word >> 13) & 0x1) == 0)
  9251. {
  9252. if (((word >> 14) & 0x1) == 0)
  9253. {
  9254. if (((word >> 31) & 0x1) == 0)
  9255. {
  9256. if (((word >> 4) & 0x1) == 0)
  9257. {
  9258. /* 33222222222211111111110000000000
  9259. 10987654321098765432109876543210
  9260. 001001x0xx0xxxxx000xxxxxxxx0xxxx
  9261. cmphs. */
  9262. return 1344;
  9263. }
  9264. else
  9265. {
  9266. /* 33222222222211111111110000000000
  9267. 10987654321098765432109876543210
  9268. 001001x0xx0xxxxx000xxxxxxxx1xxxx
  9269. cmphi. */
  9270. return 1341;
  9271. }
  9272. }
  9273. else
  9274. {
  9275. if (((word >> 23) & 0x1) == 0)
  9276. {
  9277. /* 33222222222211111111110000000000
  9278. 10987654321098765432109876543210
  9279. 101001x00x0xxxxx000xxxxxxxxxxxxx
  9280. ld1rqb. */
  9281. return 1558;
  9282. }
  9283. else
  9284. {
  9285. /* 33222222222211111111110000000000
  9286. 10987654321098765432109876543210
  9287. 101001x01x0xxxxx000xxxxxxxxxxxxx
  9288. ld1rqh. */
  9289. return 1562;
  9290. }
  9291. }
  9292. }
  9293. else
  9294. {
  9295. if (((word >> 31) & 0x1) == 0)
  9296. {
  9297. if (((word >> 4) & 0x1) == 0)
  9298. {
  9299. /* 33222222222211111111110000000000
  9300. 10987654321098765432109876543210
  9301. 001001x0xx0xxxxx010xxxxxxxx0xxxx
  9302. cmpge. */
  9303. return 1335;
  9304. }
  9305. else
  9306. {
  9307. /* 33222222222211111111110000000000
  9308. 10987654321098765432109876543210
  9309. 001001x0xx0xxxxx010xxxxxxxx1xxxx
  9310. cmpgt. */
  9311. return 1338;
  9312. }
  9313. }
  9314. else
  9315. {
  9316. if (((word >> 22) & 0x1) == 0)
  9317. {
  9318. if (((word >> 23) & 0x1) == 0)
  9319. {
  9320. /* 33222222222211111111110000000000
  9321. 10987654321098765432109876543210
  9322. 101001x0000xxxxx010xxxxxxxxxxxxx
  9323. ld1b. */
  9324. return 1516;
  9325. }
  9326. else
  9327. {
  9328. /* 33222222222211111111110000000000
  9329. 10987654321098765432109876543210
  9330. 101001x0100xxxxx010xxxxxxxxxxxxx
  9331. ld1sw. */
  9332. return 1596;
  9333. }
  9334. }
  9335. else
  9336. {
  9337. if (((word >> 23) & 0x1) == 0)
  9338. {
  9339. /* 33222222222211111111110000000000
  9340. 10987654321098765432109876543210
  9341. 101001x0010xxxxx010xxxxxxxxxxxxx
  9342. ld1b. */
  9343. return 1518;
  9344. }
  9345. else
  9346. {
  9347. /* 33222222222211111111110000000000
  9348. 10987654321098765432109876543210
  9349. 101001x0110xxxxx010xxxxxxxxxxxxx
  9350. ld1h. */
  9351. return 1538;
  9352. }
  9353. }
  9354. }
  9355. }
  9356. }
  9357. else
  9358. {
  9359. if (((word >> 14) & 0x1) == 0)
  9360. {
  9361. if (((word >> 31) & 0x1) == 0)
  9362. {
  9363. if (((word >> 4) & 0x1) == 0)
  9364. {
  9365. /* 33222222222211111111110000000000
  9366. 10987654321098765432109876543210
  9367. 001001x0xx0xxxxx001xxxxxxxx0xxxx
  9368. cmpeq. */
  9369. return 1332;
  9370. }
  9371. else
  9372. {
  9373. /* 33222222222211111111110000000000
  9374. 10987654321098765432109876543210
  9375. 001001x0xx0xxxxx001xxxxxxxx1xxxx
  9376. cmpne. */
  9377. return 1355;
  9378. }
  9379. }
  9380. else
  9381. {
  9382. if (((word >> 23) & 0x1) == 0)
  9383. {
  9384. /* 33222222222211111111110000000000
  9385. 10987654321098765432109876543210
  9386. 101001x00x0xxxxx001xxxxxxxxxxxxx
  9387. ld1rqb. */
  9388. return 1557;
  9389. }
  9390. else
  9391. {
  9392. /* 33222222222211111111110000000000
  9393. 10987654321098765432109876543210
  9394. 101001x01x0xxxxx001xxxxxxxxxxxxx
  9395. ld1rqh. */
  9396. return 1561;
  9397. }
  9398. }
  9399. }
  9400. else
  9401. {
  9402. if (((word >> 31) & 0x1) == 0)
  9403. {
  9404. if (((word >> 4) & 0x1) == 0)
  9405. {
  9406. /* 33222222222211111111110000000000
  9407. 10987654321098765432109876543210
  9408. 001001x0xx0xxxxx011xxxxxxxx0xxxx
  9409. cmplt. */
  9410. return 1353;
  9411. }
  9412. else
  9413. {
  9414. /* 33222222222211111111110000000000
  9415. 10987654321098765432109876543210
  9416. 001001x0xx0xxxxx011xxxxxxxx1xxxx
  9417. cmple. */
  9418. return 1347;
  9419. }
  9420. }
  9421. else
  9422. {
  9423. if (((word >> 22) & 0x1) == 0)
  9424. {
  9425. if (((word >> 23) & 0x1) == 0)
  9426. {
  9427. /* 33222222222211111111110000000000
  9428. 10987654321098765432109876543210
  9429. 101001x0000xxxxx011xxxxxxxxxxxxx
  9430. ldff1b. */
  9431. return 1640;
  9432. }
  9433. else
  9434. {
  9435. /* 33222222222211111111110000000000
  9436. 10987654321098765432109876543210
  9437. 101001x0100xxxxx011xxxxxxxxxxxxx
  9438. ldff1sw. */
  9439. return 1696;
  9440. }
  9441. }
  9442. else
  9443. {
  9444. if (((word >> 23) & 0x1) == 0)
  9445. {
  9446. /* 33222222222211111111110000000000
  9447. 10987654321098765432109876543210
  9448. 101001x0010xxxxx011xxxxxxxxxxxxx
  9449. ldff1b. */
  9450. return 1644;
  9451. }
  9452. else
  9453. {
  9454. /* 33222222222211111111110000000000
  9455. 10987654321098765432109876543210
  9456. 101001x0110xxxxx011xxxxxxxxxxxxx
  9457. ldff1h. */
  9458. return 1663;
  9459. }
  9460. }
  9461. }
  9462. }
  9463. }
  9464. }
  9465. else
  9466. {
  9467. if (((word >> 31) & 0x1) == 0)
  9468. {
  9469. /* 33222222222211111111110000000000
  9470. 10987654321098765432109876543210
  9471. 011001x0xx0xxxxx0xxxxxxxxxxxxxxx
  9472. fcmla. */
  9473. return 1401;
  9474. }
  9475. else
  9476. {
  9477. if (((word >> 13) & 0x1) == 0)
  9478. {
  9479. if (((word >> 22) & 0x1) == 0)
  9480. {
  9481. /* 33222222222211111111110000000000
  9482. 10987654321098765432109876543210
  9483. 111001x0x00xxxxx0x0xxxxxxxxxxxxx
  9484. st1b. */
  9485. return 1878;
  9486. }
  9487. else
  9488. {
  9489. if (((word >> 23) & 0x1) == 0)
  9490. {
  9491. /* 33222222222211111111110000000000
  9492. 10987654321098765432109876543210
  9493. 111001x0010xxxxx0x0xxxxxxxxxxxxx
  9494. st1b. */
  9495. return 1882;
  9496. }
  9497. else
  9498. {
  9499. /* 33222222222211111111110000000000
  9500. 10987654321098765432109876543210
  9501. 111001x0110xxxxx0x0xxxxxxxxxxxxx
  9502. st1h. */
  9503. return 1903;
  9504. }
  9505. }
  9506. }
  9507. else
  9508. {
  9509. if (((word >> 14) & 0x1) == 0)
  9510. {
  9511. if (((word >> 22) & 0x1) == 0)
  9512. {
  9513. if (((word >> 23) & 0x1) == 0)
  9514. {
  9515. /* 33222222222211111111110000000000
  9516. 10987654321098765432109876543210
  9517. 111001x0000xxxxx001xxxxxxxxxxxxx
  9518. stnt1b. */
  9519. return 2255;
  9520. }
  9521. else
  9522. {
  9523. /* 33222222222211111111110000000000
  9524. 10987654321098765432109876543210
  9525. 111001x0100xxxxx001xxxxxxxxxxxxx
  9526. stnt1h. */
  9527. return 2258;
  9528. }
  9529. }
  9530. else
  9531. {
  9532. if (((word >> 23) & 0x1) == 0)
  9533. {
  9534. /* 33222222222211111111110000000000
  9535. 10987654321098765432109876543210
  9536. 111001x0010xxxxx001xxxxxxxxxxxxx
  9537. stnt1b. */
  9538. return 2254;
  9539. }
  9540. else
  9541. {
  9542. /* 33222222222211111111110000000000
  9543. 10987654321098765432109876543210
  9544. 111001x0110xxxxx001xxxxxxxxxxxxx
  9545. stnt1h. */
  9546. return 2257;
  9547. }
  9548. }
  9549. }
  9550. else
  9551. {
  9552. if (((word >> 22) & 0x1) == 0)
  9553. {
  9554. if (((word >> 23) & 0x1) == 0)
  9555. {
  9556. /* 33222222222211111111110000000000
  9557. 10987654321098765432109876543210
  9558. 111001x0000xxxxx011xxxxxxxxxxxxx
  9559. stnt1b. */
  9560. return 1948;
  9561. }
  9562. else
  9563. {
  9564. /* 33222222222211111111110000000000
  9565. 10987654321098765432109876543210
  9566. 111001x0100xxxxx011xxxxxxxxxxxxx
  9567. stnt1h. */
  9568. return 1952;
  9569. }
  9570. }
  9571. else
  9572. {
  9573. if (((word >> 23) & 0x1) == 0)
  9574. {
  9575. /* 33222222222211111111110000000000
  9576. 10987654321098765432109876543210
  9577. 111001x0010xxxxx011xxxxxxxxxxxxx
  9578. st3b. */
  9579. return 1932;
  9580. }
  9581. else
  9582. {
  9583. /* 33222222222211111111110000000000
  9584. 10987654321098765432109876543210
  9585. 111001x0110xxxxx011xxxxxxxxxxxxx
  9586. st3h. */
  9587. return 1936;
  9588. }
  9589. }
  9590. }
  9591. }
  9592. }
  9593. }
  9594. }
  9595. else
  9596. {
  9597. if (((word >> 13) & 0x1) == 0)
  9598. {
  9599. if (((word >> 30) & 0x1) == 0)
  9600. {
  9601. if (((word >> 14) & 0x1) == 0)
  9602. {
  9603. if (((word >> 4) & 0x1) == 0)
  9604. {
  9605. /* 33222222222211111111110000000000
  9606. 10987654321098765432109876543210
  9607. x01001x0xx0xxxxx100xxxxxxxx0xxxx
  9608. cmpge. */
  9609. return 1336;
  9610. }
  9611. else
  9612. {
  9613. /* 33222222222211111111110000000000
  9614. 10987654321098765432109876543210
  9615. x01001x0xx0xxxxx100xxxxxxxx1xxxx
  9616. cmpgt. */
  9617. return 1339;
  9618. }
  9619. }
  9620. else
  9621. {
  9622. if (((word >> 31) & 0x1) == 0)
  9623. {
  9624. if (((word >> 4) & 0x1) == 0)
  9625. {
  9626. /* 33222222222211111111110000000000
  9627. 10987654321098765432109876543210
  9628. 001001x0xx0xxxxx110xxxxxxxx0xxxx
  9629. cmphs. */
  9630. return 1345;
  9631. }
  9632. else
  9633. {
  9634. /* 33222222222211111111110000000000
  9635. 10987654321098765432109876543210
  9636. 001001x0xx0xxxxx110xxxxxxxx1xxxx
  9637. cmphi. */
  9638. return 1342;
  9639. }
  9640. }
  9641. else
  9642. {
  9643. if (((word >> 22) & 0x1) == 0)
  9644. {
  9645. if (((word >> 23) & 0x1) == 0)
  9646. {
  9647. /* 33222222222211111111110000000000
  9648. 10987654321098765432109876543210
  9649. 101001x0000xxxxx110xxxxxxxxxxxxx
  9650. ldnt1b. */
  9651. return 1731;
  9652. }
  9653. else
  9654. {
  9655. /* 33222222222211111111110000000000
  9656. 10987654321098765432109876543210
  9657. 101001x0100xxxxx110xxxxxxxxxxxxx
  9658. ldnt1h. */
  9659. return 1735;
  9660. }
  9661. }
  9662. else
  9663. {
  9664. if (((word >> 23) & 0x1) == 0)
  9665. {
  9666. /* 33222222222211111111110000000000
  9667. 10987654321098765432109876543210
  9668. 101001x0010xxxxx110xxxxxxxxxxxxx
  9669. ld3b. */
  9670. return 1623;
  9671. }
  9672. else
  9673. {
  9674. /* 33222222222211111111110000000000
  9675. 10987654321098765432109876543210
  9676. 101001x0110xxxxx110xxxxxxxxxxxxx
  9677. ld3h. */
  9678. return 1627;
  9679. }
  9680. }
  9681. }
  9682. }
  9683. }
  9684. else
  9685. {
  9686. if (((word >> 31) & 0x1) == 0)
  9687. {
  9688. if (((word >> 17) & 0x1) == 0)
  9689. {
  9690. if (((word >> 18) & 0x1) == 0)
  9691. {
  9692. if (((word >> 20) & 0x1) == 0)
  9693. {
  9694. /* 33222222222211111111110000000000
  9695. 10987654321098765432109876543210
  9696. 011001x0xx00x00x1x0xxxxxxxxxxxxx
  9697. fcadd. */
  9698. return 1400;
  9699. }
  9700. else
  9701. {
  9702. /* 33222222222211111111110000000000
  9703. 10987654321098765432109876543210
  9704. 011001x0xx01x00x1x0xxxxxxxxxxxxx
  9705. faddp. */
  9706. return 2081;
  9707. }
  9708. }
  9709. else
  9710. {
  9711. if (((word >> 16) & 0x1) == 0)
  9712. {
  9713. /* 33222222222211111111110000000000
  9714. 10987654321098765432109876543210
  9715. 011001x0xx0xx1001x0xxxxxxxxxxxxx
  9716. fmaxnmp. */
  9717. return 2089;
  9718. }
  9719. else
  9720. {
  9721. /* 33222222222211111111110000000000
  9722. 10987654321098765432109876543210
  9723. 011001x0xx0xx1011x0xxxxxxxxxxxxx
  9724. fminnmp. */
  9725. return 2091;
  9726. }
  9727. }
  9728. }
  9729. else
  9730. {
  9731. if (((word >> 16) & 0x1) == 0)
  9732. {
  9733. /* 33222222222211111111110000000000
  9734. 10987654321098765432109876543210
  9735. 011001x0xx0xxx101x0xxxxxxxxxxxxx
  9736. fmaxp. */
  9737. return 2090;
  9738. }
  9739. else
  9740. {
  9741. /* 33222222222211111111110000000000
  9742. 10987654321098765432109876543210
  9743. 011001x0xx0xxx111x0xxxxxxxxxxxxx
  9744. fminp. */
  9745. return 2092;
  9746. }
  9747. }
  9748. }
  9749. else
  9750. {
  9751. if (((word >> 22) & 0x1) == 0)
  9752. {
  9753. if (((word >> 23) & 0x1) == 0)
  9754. {
  9755. /* 33222222222211111111110000000000
  9756. 10987654321098765432109876543210
  9757. 111001x0000xxxxx1x0xxxxxxxxxxxxx
  9758. st1b. */
  9759. return 1879;
  9760. }
  9761. else
  9762. {
  9763. /* 33222222222211111111110000000000
  9764. 10987654321098765432109876543210
  9765. 111001x0100xxxxx1x0xxxxxxxxxxxxx
  9766. st1h. */
  9767. return 1898;
  9768. }
  9769. }
  9770. else
  9771. {
  9772. if (((word >> 23) & 0x1) == 0)
  9773. {
  9774. /* 33222222222211111111110000000000
  9775. 10987654321098765432109876543210
  9776. 111001x0010xxxxx1x0xxxxxxxxxxxxx
  9777. st1b. */
  9778. return 1883;
  9779. }
  9780. else
  9781. {
  9782. /* 33222222222211111111110000000000
  9783. 10987654321098765432109876543210
  9784. 111001x0110xxxxx1x0xxxxxxxxxxxxx
  9785. st1h. */
  9786. return 1904;
  9787. }
  9788. }
  9789. }
  9790. }
  9791. }
  9792. else
  9793. {
  9794. if (((word >> 14) & 0x1) == 0)
  9795. {
  9796. if (((word >> 30) & 0x1) == 0)
  9797. {
  9798. if (((word >> 31) & 0x1) == 0)
  9799. {
  9800. if (((word >> 4) & 0x1) == 0)
  9801. {
  9802. /* 33222222222211111111110000000000
  9803. 10987654321098765432109876543210
  9804. 001001x0xx0xxxxx101xxxxxxxx0xxxx
  9805. cmpeq. */
  9806. return 1333;
  9807. }
  9808. else
  9809. {
  9810. /* 33222222222211111111110000000000
  9811. 10987654321098765432109876543210
  9812. 001001x0xx0xxxxx101xxxxxxxx1xxxx
  9813. cmpne. */
  9814. return 1356;
  9815. }
  9816. }
  9817. else
  9818. {
  9819. if (((word >> 20) & 0x1) == 0)
  9820. {
  9821. if (((word >> 22) & 0x1) == 0)
  9822. {
  9823. if (((word >> 23) & 0x1) == 0)
  9824. {
  9825. /* 33222222222211111111110000000000
  9826. 10987654321098765432109876543210
  9827. 101001x00000xxxx101xxxxxxxxxxxxx
  9828. ld1b. */
  9829. return 1523;
  9830. }
  9831. else
  9832. {
  9833. /* 33222222222211111111110000000000
  9834. 10987654321098765432109876543210
  9835. 101001x01000xxxx101xxxxxxxxxxxxx
  9836. ld1sw. */
  9837. return 1601;
  9838. }
  9839. }
  9840. else
  9841. {
  9842. if (((word >> 23) & 0x1) == 0)
  9843. {
  9844. /* 33222222222211111111110000000000
  9845. 10987654321098765432109876543210
  9846. 101001x00100xxxx101xxxxxxxxxxxxx
  9847. ld1b. */
  9848. return 1525;
  9849. }
  9850. else
  9851. {
  9852. /* 33222222222211111111110000000000
  9853. 10987654321098765432109876543210
  9854. 101001x01100xxxx101xxxxxxxxxxxxx
  9855. ld1h. */
  9856. return 1546;
  9857. }
  9858. }
  9859. }
  9860. else
  9861. {
  9862. if (((word >> 22) & 0x1) == 0)
  9863. {
  9864. if (((word >> 23) & 0x1) == 0)
  9865. {
  9866. /* 33222222222211111111110000000000
  9867. 10987654321098765432109876543210
  9868. 101001x00001xxxx101xxxxxxxxxxxxx
  9869. ldnf1b. */
  9870. return 1715;
  9871. }
  9872. else
  9873. {
  9874. /* 33222222222211111111110000000000
  9875. 10987654321098765432109876543210
  9876. 101001x01001xxxx101xxxxxxxxxxxxx
  9877. ldnf1sw. */
  9878. return 1728;
  9879. }
  9880. }
  9881. else
  9882. {
  9883. if (((word >> 23) & 0x1) == 0)
  9884. {
  9885. /* 33222222222211111111110000000000
  9886. 10987654321098765432109876543210
  9887. 101001x00101xxxx101xxxxxxxxxxxxx
  9888. ldnf1b. */
  9889. return 1717;
  9890. }
  9891. else
  9892. {
  9893. /* 33222222222211111111110000000000
  9894. 10987654321098765432109876543210
  9895. 101001x01101xxxx101xxxxxxxxxxxxx
  9896. ldnf1h. */
  9897. return 1721;
  9898. }
  9899. }
  9900. }
  9901. }
  9902. }
  9903. else
  9904. {
  9905. if (((word >> 22) & 0x1) == 0)
  9906. {
  9907. if (((word >> 23) & 0x1) == 0)
  9908. {
  9909. if (((word >> 31) & 0x1) == 0)
  9910. {
  9911. /* 33222222222211111111110000000000
  9912. 10987654321098765432109876543210
  9913. 011001x0000xxxxx101xxxxxxxxxxxxx
  9914. fcvtxnt. */
  9915. return 2087;
  9916. }
  9917. else
  9918. {
  9919. /* 33222222222211111111110000000000
  9920. 10987654321098765432109876543210
  9921. 111001x0000xxxxx101xxxxxxxxxxxxx
  9922. st1b. */
  9923. return 1880;
  9924. }
  9925. }
  9926. else
  9927. {
  9928. if (((word >> 31) & 0x1) == 0)
  9929. {
  9930. if (((word >> 16) & 0x1) == 0)
  9931. {
  9932. if (((word >> 17) & 0x1) == 0)
  9933. {
  9934. /* 33222222222211111111110000000000
  9935. 10987654321098765432109876543210
  9936. 011001x0100xxx00101xxxxxxxxxxxxx
  9937. fcvtnt. */
  9938. return 2084;
  9939. }
  9940. else
  9941. {
  9942. /* 33222222222211111111110000000000
  9943. 10987654321098765432109876543210
  9944. 011001x0100xxx10101xxxxxxxxxxxxx
  9945. bfcvtnt. */
  9946. return 2499;
  9947. }
  9948. }
  9949. else
  9950. {
  9951. /* 33222222222211111111110000000000
  9952. 10987654321098765432109876543210
  9953. 011001x0100xxxx1101xxxxxxxxxxxxx
  9954. fcvtlt. */
  9955. return 2082;
  9956. }
  9957. }
  9958. else
  9959. {
  9960. /* 33222222222211111111110000000000
  9961. 10987654321098765432109876543210
  9962. 111001x0100xxxxx101xxxxxxxxxxxxx
  9963. st1h. */
  9964. return 1899;
  9965. }
  9966. }
  9967. }
  9968. else
  9969. {
  9970. if (((word >> 23) & 0x1) == 0)
  9971. {
  9972. /* 33222222222211111111110000000000
  9973. 10987654321098765432109876543210
  9974. x11001x0010xxxxx101xxxxxxxxxxxxx
  9975. st1b. */
  9976. return 1887;
  9977. }
  9978. else
  9979. {
  9980. if (((word >> 31) & 0x1) == 0)
  9981. {
  9982. if (((word >> 16) & 0x1) == 0)
  9983. {
  9984. /* 33222222222211111111110000000000
  9985. 10987654321098765432109876543210
  9986. 011001x0110xxxx0101xxxxxxxxxxxxx
  9987. fcvtnt. */
  9988. return 2085;
  9989. }
  9990. else
  9991. {
  9992. /* 33222222222211111111110000000000
  9993. 10987654321098765432109876543210
  9994. 011001x0110xxxx1101xxxxxxxxxxxxx
  9995. fcvtlt. */
  9996. return 2083;
  9997. }
  9998. }
  9999. else
  10000. {
  10001. /* 33222222222211111111110000000000
  10002. 10987654321098765432109876543210
  10003. 111001x0110xxxxx101xxxxxxxxxxxxx
  10004. st1h. */
  10005. return 1908;
  10006. }
  10007. }
  10008. }
  10009. }
  10010. }
  10011. else
  10012. {
  10013. if (((word >> 30) & 0x1) == 0)
  10014. {
  10015. if (((word >> 31) & 0x1) == 0)
  10016. {
  10017. if (((word >> 4) & 0x1) == 0)
  10018. {
  10019. /* 33222222222211111111110000000000
  10020. 10987654321098765432109876543210
  10021. 001001x0xx0xxxxx111xxxxxxxx0xxxx
  10022. cmplo. */
  10023. return 1349;
  10024. }
  10025. else
  10026. {
  10027. /* 33222222222211111111110000000000
  10028. 10987654321098765432109876543210
  10029. 001001x0xx0xxxxx111xxxxxxxx1xxxx
  10030. cmpls. */
  10031. return 1351;
  10032. }
  10033. }
  10034. else
  10035. {
  10036. if (((word >> 22) & 0x1) == 0)
  10037. {
  10038. if (((word >> 23) & 0x1) == 0)
  10039. {
  10040. /* 33222222222211111111110000000000
  10041. 10987654321098765432109876543210
  10042. 101001x0000xxxxx111xxxxxxxxxxxxx
  10043. ldnt1b. */
  10044. return 1732;
  10045. }
  10046. else
  10047. {
  10048. /* 33222222222211111111110000000000
  10049. 10987654321098765432109876543210
  10050. 101001x0100xxxxx111xxxxxxxxxxxxx
  10051. ldnt1h. */
  10052. return 1736;
  10053. }
  10054. }
  10055. else
  10056. {
  10057. if (((word >> 23) & 0x1) == 0)
  10058. {
  10059. /* 33222222222211111111110000000000
  10060. 10987654321098765432109876543210
  10061. 101001x0010xxxxx111xxxxxxxxxxxxx
  10062. ld3b. */
  10063. return 1624;
  10064. }
  10065. else
  10066. {
  10067. /* 33222222222211111111110000000000
  10068. 10987654321098765432109876543210
  10069. 101001x0110xxxxx111xxxxxxxxxxxxx
  10070. ld3h. */
  10071. return 1628;
  10072. }
  10073. }
  10074. }
  10075. }
  10076. else
  10077. {
  10078. if (((word >> 20) & 0x1) == 0)
  10079. {
  10080. if (((word >> 22) & 0x1) == 0)
  10081. {
  10082. /* 33222222222211111111110000000000
  10083. 10987654321098765432109876543210
  10084. x11001x0x000xxxx111xxxxxxxxxxxxx
  10085. st1b. */
  10086. return 1885;
  10087. }
  10088. else
  10089. {
  10090. if (((word >> 23) & 0x1) == 0)
  10091. {
  10092. /* 33222222222211111111110000000000
  10093. 10987654321098765432109876543210
  10094. x11001x00100xxxx111xxxxxxxxxxxxx
  10095. st1b. */
  10096. return 1888;
  10097. }
  10098. else
  10099. {
  10100. /* 33222222222211111111110000000000
  10101. 10987654321098765432109876543210
  10102. x11001x01100xxxx111xxxxxxxxxxxxx
  10103. st1h. */
  10104. return 1909;
  10105. }
  10106. }
  10107. }
  10108. else
  10109. {
  10110. if (((word >> 22) & 0x1) == 0)
  10111. {
  10112. if (((word >> 23) & 0x1) == 0)
  10113. {
  10114. /* 33222222222211111111110000000000
  10115. 10987654321098765432109876543210
  10116. x11001x00001xxxx111xxxxxxxxxxxxx
  10117. stnt1b. */
  10118. return 1949;
  10119. }
  10120. else
  10121. {
  10122. /* 33222222222211111111110000000000
  10123. 10987654321098765432109876543210
  10124. x11001x01001xxxx111xxxxxxxxxxxxx
  10125. stnt1h. */
  10126. return 1953;
  10127. }
  10128. }
  10129. else
  10130. {
  10131. if (((word >> 23) & 0x1) == 0)
  10132. {
  10133. /* 33222222222211111111110000000000
  10134. 10987654321098765432109876543210
  10135. x11001x00101xxxx111xxxxxxxxxxxxx
  10136. st3b. */
  10137. return 1933;
  10138. }
  10139. else
  10140. {
  10141. /* 33222222222211111111110000000000
  10142. 10987654321098765432109876543210
  10143. x11001x01101xxxx111xxxxxxxxxxxxx
  10144. st3h. */
  10145. return 1937;
  10146. }
  10147. }
  10148. }
  10149. }
  10150. }
  10151. }
  10152. }
  10153. }
  10154. else
  10155. {
  10156. if (((word >> 13) & 0x1) == 0)
  10157. {
  10158. if (((word >> 30) & 0x1) == 0)
  10159. {
  10160. if (((word >> 31) & 0x1) == 0)
  10161. {
  10162. if (((word >> 4) & 0x1) == 0)
  10163. {
  10164. /* 33222222222211111111110000000000
  10165. 10987654321098765432109876543210
  10166. 001001x0xx1xxxxxxx0xxxxxxxx0xxxx
  10167. cmphs. */
  10168. return 1346;
  10169. }
  10170. else
  10171. {
  10172. /* 33222222222211111111110000000000
  10173. 10987654321098765432109876543210
  10174. 001001x0xx1xxxxxxx0xxxxxxxx1xxxx
  10175. cmphi. */
  10176. return 1343;
  10177. }
  10178. }
  10179. else
  10180. {
  10181. if (((word >> 14) & 0x1) == 0)
  10182. {
  10183. if (((word >> 23) & 0x1) == 0)
  10184. {
  10185. /* 33222222222211111111110000000000
  10186. 10987654321098765432109876543210
  10187. 101001x00x1xxxxxx00xxxxxxxxxxxxx
  10188. ld1rob. */
  10189. return 2475;
  10190. }
  10191. else
  10192. {
  10193. /* 33222222222211111111110000000000
  10194. 10987654321098765432109876543210
  10195. 101001x01x1xxxxxx00xxxxxxxxxxxxx
  10196. ld1roh. */
  10197. return 2476;
  10198. }
  10199. }
  10200. else
  10201. {
  10202. if (((word >> 15) & 0x1) == 0)
  10203. {
  10204. if (((word >> 22) & 0x1) == 0)
  10205. {
  10206. if (((word >> 23) & 0x1) == 0)
  10207. {
  10208. /* 33222222222211111111110000000000
  10209. 10987654321098765432109876543210
  10210. 101001x0001xxxxx010xxxxxxxxxxxxx
  10211. ld1b. */
  10212. return 1517;
  10213. }
  10214. else
  10215. {
  10216. /* 33222222222211111111110000000000
  10217. 10987654321098765432109876543210
  10218. 101001x0101xxxxx010xxxxxxxxxxxxx
  10219. ld1h. */
  10220. return 1537;
  10221. }
  10222. }
  10223. else
  10224. {
  10225. if (((word >> 23) & 0x1) == 0)
  10226. {
  10227. /* 33222222222211111111110000000000
  10228. 10987654321098765432109876543210
  10229. 101001x0011xxxxx010xxxxxxxxxxxxx
  10230. ld1b. */
  10231. return 1519;
  10232. }
  10233. else
  10234. {
  10235. /* 33222222222211111111110000000000
  10236. 10987654321098765432109876543210
  10237. 101001x0111xxxxx010xxxxxxxxxxxxx
  10238. ld1h. */
  10239. return 1539;
  10240. }
  10241. }
  10242. }
  10243. else
  10244. {
  10245. if (((word >> 22) & 0x1) == 0)
  10246. {
  10247. if (((word >> 23) & 0x1) == 0)
  10248. {
  10249. /* 33222222222211111111110000000000
  10250. 10987654321098765432109876543210
  10251. 101001x0001xxxxx110xxxxxxxxxxxxx
  10252. ld2b. */
  10253. return 1615;
  10254. }
  10255. else
  10256. {
  10257. /* 33222222222211111111110000000000
  10258. 10987654321098765432109876543210
  10259. 101001x0101xxxxx110xxxxxxxxxxxxx
  10260. ld2h. */
  10261. return 1619;
  10262. }
  10263. }
  10264. else
  10265. {
  10266. if (((word >> 23) & 0x1) == 0)
  10267. {
  10268. /* 33222222222211111111110000000000
  10269. 10987654321098765432109876543210
  10270. 101001x0011xxxxx110xxxxxxxxxxxxx
  10271. ld4b. */
  10272. return 1631;
  10273. }
  10274. else
  10275. {
  10276. /* 33222222222211111111110000000000
  10277. 10987654321098765432109876543210
  10278. 101001x0111xxxxx110xxxxxxxxxxxxx
  10279. ld4h. */
  10280. return 1635;
  10281. }
  10282. }
  10283. }
  10284. }
  10285. }
  10286. }
  10287. else
  10288. {
  10289. if (((word >> 15) & 0x1) == 0)
  10290. {
  10291. if (((word >> 14) & 0x1) == 0)
  10292. {
  10293. if (((word >> 12) & 0x1) == 0)
  10294. {
  10295. if (((word >> 10) & 0x1) == 0)
  10296. {
  10297. if (((word >> 23) & 0x1) == 0)
  10298. {
  10299. /* 33222222222211111111110000000000
  10300. 10987654321098765432109876543210
  10301. x11001x00x1xxxxx0000x0xxxxxxxxxx
  10302. fmla. */
  10303. return 1454;
  10304. }
  10305. else
  10306. {
  10307. if (((word >> 22) & 0x1) == 0)
  10308. {
  10309. /* 33222222222211111111110000000000
  10310. 10987654321098765432109876543210
  10311. x11001x0101xxxxx0000x0xxxxxxxxxx
  10312. fmla. */
  10313. return 1455;
  10314. }
  10315. else
  10316. {
  10317. /* 33222222222211111111110000000000
  10318. 10987654321098765432109876543210
  10319. x11001x0111xxxxx0000x0xxxxxxxxxx
  10320. fmla. */
  10321. return 1456;
  10322. }
  10323. }
  10324. }
  10325. else
  10326. {
  10327. if (((word >> 23) & 0x1) == 0)
  10328. {
  10329. /* 33222222222211111111110000000000
  10330. 10987654321098765432109876543210
  10331. x11001x00x1xxxxx0000x1xxxxxxxxxx
  10332. fmls. */
  10333. return 1458;
  10334. }
  10335. else
  10336. {
  10337. if (((word >> 22) & 0x1) == 0)
  10338. {
  10339. /* 33222222222211111111110000000000
  10340. 10987654321098765432109876543210
  10341. x11001x0101xxxxx0000x1xxxxxxxxxx
  10342. fmls. */
  10343. return 1459;
  10344. }
  10345. else
  10346. {
  10347. /* 33222222222211111111110000000000
  10348. 10987654321098765432109876543210
  10349. x11001x0111xxxxx0000x1xxxxxxxxxx
  10350. fmls. */
  10351. return 1460;
  10352. }
  10353. }
  10354. }
  10355. }
  10356. else
  10357. {
  10358. if (((word >> 22) & 0x1) == 0)
  10359. {
  10360. /* 33222222222211111111110000000000
  10361. 10987654321098765432109876543210
  10362. x11001x0x01xxxxx0001xxxxxxxxxxxx
  10363. fcmla. */
  10364. return 1402;
  10365. }
  10366. else
  10367. {
  10368. /* 33222222222211111111110000000000
  10369. 10987654321098765432109876543210
  10370. x11001x0x11xxxxx0001xxxxxxxxxxxx
  10371. fcmla. */
  10372. return 1403;
  10373. }
  10374. }
  10375. }
  10376. else
  10377. {
  10378. if (((word >> 22) & 0x1) == 0)
  10379. {
  10380. if (((word >> 23) & 0x1) == 0)
  10381. {
  10382. /* 33222222222211111111110000000000
  10383. 10987654321098765432109876543210
  10384. x11001x0001xxxxx010xxxxxxxxxxxxx
  10385. st1b. */
  10386. return 1881;
  10387. }
  10388. else
  10389. {
  10390. if (((word >> 31) & 0x1) == 0)
  10391. {
  10392. if (((word >> 10) & 0x1) == 0)
  10393. {
  10394. /* 33222222222211111111110000000000
  10395. 10987654321098765432109876543210
  10396. 011001x0101xxxxx010xx0xxxxxxxxxx
  10397. fmlalb. */
  10398. return 2093;
  10399. }
  10400. else
  10401. {
  10402. /* 33222222222211111111110000000000
  10403. 10987654321098765432109876543210
  10404. 011001x0101xxxxx010xx1xxxxxxxxxx
  10405. fmlalt. */
  10406. return 2095;
  10407. }
  10408. }
  10409. else
  10410. {
  10411. /* 33222222222211111111110000000000
  10412. 10987654321098765432109876543210
  10413. 111001x0101xxxxx010xxxxxxxxxxxxx
  10414. st1h. */
  10415. return 1900;
  10416. }
  10417. }
  10418. }
  10419. else
  10420. {
  10421. if (((word >> 23) & 0x1) == 0)
  10422. {
  10423. if (((word >> 31) & 0x1) == 0)
  10424. {
  10425. /* 33222222222211111111110000000000
  10426. 10987654321098765432109876543210
  10427. 011001x0011xxxxx010xxxxxxxxxxxxx
  10428. bfdot. */
  10429. return 2496;
  10430. }
  10431. else
  10432. {
  10433. /* 33222222222211111111110000000000
  10434. 10987654321098765432109876543210
  10435. 111001x0011xxxxx010xxxxxxxxxxxxx
  10436. st1b. */
  10437. return 1884;
  10438. }
  10439. }
  10440. else
  10441. {
  10442. if (((word >> 31) & 0x1) == 0)
  10443. {
  10444. if (((word >> 10) & 0x1) == 0)
  10445. {
  10446. /* 33222222222211111111110000000000
  10447. 10987654321098765432109876543210
  10448. 011001x0111xxxxx010xx0xxxxxxxxxx
  10449. bfmlalb. */
  10450. return 2503;
  10451. }
  10452. else
  10453. {
  10454. /* 33222222222211111111110000000000
  10455. 10987654321098765432109876543210
  10456. 011001x0111xxxxx010xx1xxxxxxxxxx
  10457. bfmlalt. */
  10458. return 2502;
  10459. }
  10460. }
  10461. else
  10462. {
  10463. /* 33222222222211111111110000000000
  10464. 10987654321098765432109876543210
  10465. 111001x0111xxxxx010xxxxxxxxxxxxx
  10466. st1h. */
  10467. return 1905;
  10468. }
  10469. }
  10470. }
  10471. }
  10472. }
  10473. else
  10474. {
  10475. if (((word >> 22) & 0x1) == 0)
  10476. {
  10477. if (((word >> 31) & 0x1) == 0)
  10478. {
  10479. if (((word >> 10) & 0x1) == 0)
  10480. {
  10481. /* 33222222222211111111110000000000
  10482. 10987654321098765432109876543210
  10483. 011001x0x01xxxxx1x0xx0xxxxxxxxxx
  10484. fmlalb. */
  10485. return 2094;
  10486. }
  10487. else
  10488. {
  10489. /* 33222222222211111111110000000000
  10490. 10987654321098765432109876543210
  10491. 011001x0x01xxxxx1x0xx1xxxxxxxxxx
  10492. fmlalt. */
  10493. return 2096;
  10494. }
  10495. }
  10496. else
  10497. {
  10498. /* 33222222222211111111110000000000
  10499. 10987654321098765432109876543210
  10500. 111001x0x01xxxxx1x0xxxxxxxxxxxxx
  10501. st1h. */
  10502. return 1901;
  10503. }
  10504. }
  10505. else
  10506. {
  10507. if (((word >> 23) & 0x1) == 0)
  10508. {
  10509. /* 33222222222211111111110000000000
  10510. 10987654321098765432109876543210
  10511. x11001x0011xxxxx1x0xxxxxxxxxxxxx
  10512. bfdot. */
  10513. return 2495;
  10514. }
  10515. else
  10516. {
  10517. if (((word >> 31) & 0x1) == 0)
  10518. {
  10519. if (((word >> 10) & 0x1) == 0)
  10520. {
  10521. /* 33222222222211111111110000000000
  10522. 10987654321098765432109876543210
  10523. 011001x0111xxxxx1x0xx0xxxxxxxxxx
  10524. bfmlalb. */
  10525. return 2501;
  10526. }
  10527. else
  10528. {
  10529. /* 33222222222211111111110000000000
  10530. 10987654321098765432109876543210
  10531. 011001x0111xxxxx1x0xx1xxxxxxxxxx
  10532. bfmlalt. */
  10533. return 2500;
  10534. }
  10535. }
  10536. else
  10537. {
  10538. /* 33222222222211111111110000000000
  10539. 10987654321098765432109876543210
  10540. 111001x0111xxxxx1x0xxxxxxxxxxxxx
  10541. st1h. */
  10542. return 1906;
  10543. }
  10544. }
  10545. }
  10546. }
  10547. }
  10548. }
  10549. else
  10550. {
  10551. if (((word >> 30) & 0x1) == 0)
  10552. {
  10553. if (((word >> 31) & 0x1) == 0)
  10554. {
  10555. if (((word >> 4) & 0x1) == 0)
  10556. {
  10557. /* 33222222222211111111110000000000
  10558. 10987654321098765432109876543210
  10559. 001001x0xx1xxxxxxx1xxxxxxxx0xxxx
  10560. cmplo. */
  10561. return 1350;
  10562. }
  10563. else
  10564. {
  10565. /* 33222222222211111111110000000000
  10566. 10987654321098765432109876543210
  10567. 001001x0xx1xxxxxxx1xxxxxxxx1xxxx
  10568. cmpls. */
  10569. return 1352;
  10570. }
  10571. }
  10572. else
  10573. {
  10574. if (((word >> 14) & 0x1) == 0)
  10575. {
  10576. if (((word >> 15) & 0x1) == 0)
  10577. {
  10578. if (((word >> 23) & 0x1) == 0)
  10579. {
  10580. /* 33222222222211111111110000000000
  10581. 10987654321098765432109876543210
  10582. 101001x00x1xxxxx001xxxxxxxxxxxxx
  10583. ld1rob. */
  10584. return 2479;
  10585. }
  10586. else
  10587. {
  10588. /* 33222222222211111111110000000000
  10589. 10987654321098765432109876543210
  10590. 101001x01x1xxxxx001xxxxxxxxxxxxx
  10591. ld1roh. */
  10592. return 2480;
  10593. }
  10594. }
  10595. else
  10596. {
  10597. if (((word >> 20) & 0x1) == 0)
  10598. {
  10599. if (((word >> 22) & 0x1) == 0)
  10600. {
  10601. if (((word >> 23) & 0x1) == 0)
  10602. {
  10603. /* 33222222222211111111110000000000
  10604. 10987654321098765432109876543210
  10605. 101001x00010xxxx101xxxxxxxxxxxxx
  10606. ld1b. */
  10607. return 1524;
  10608. }
  10609. else
  10610. {
  10611. /* 33222222222211111111110000000000
  10612. 10987654321098765432109876543210
  10613. 101001x01010xxxx101xxxxxxxxxxxxx
  10614. ld1h. */
  10615. return 1545;
  10616. }
  10617. }
  10618. else
  10619. {
  10620. if (((word >> 23) & 0x1) == 0)
  10621. {
  10622. /* 33222222222211111111110000000000
  10623. 10987654321098765432109876543210
  10624. 101001x00110xxxx101xxxxxxxxxxxxx
  10625. ld1b. */
  10626. return 1526;
  10627. }
  10628. else
  10629. {
  10630. /* 33222222222211111111110000000000
  10631. 10987654321098765432109876543210
  10632. 101001x01110xxxx101xxxxxxxxxxxxx
  10633. ld1h. */
  10634. return 1547;
  10635. }
  10636. }
  10637. }
  10638. else
  10639. {
  10640. if (((word >> 22) & 0x1) == 0)
  10641. {
  10642. if (((word >> 23) & 0x1) == 0)
  10643. {
  10644. /* 33222222222211111111110000000000
  10645. 10987654321098765432109876543210
  10646. 101001x00011xxxx101xxxxxxxxxxxxx
  10647. ldnf1b. */
  10648. return 1716;
  10649. }
  10650. else
  10651. {
  10652. /* 33222222222211111111110000000000
  10653. 10987654321098765432109876543210
  10654. 101001x01011xxxx101xxxxxxxxxxxxx
  10655. ldnf1h. */
  10656. return 1720;
  10657. }
  10658. }
  10659. else
  10660. {
  10661. if (((word >> 23) & 0x1) == 0)
  10662. {
  10663. /* 33222222222211111111110000000000
  10664. 10987654321098765432109876543210
  10665. 101001x00111xxxx101xxxxxxxxxxxxx
  10666. ldnf1b. */
  10667. return 1718;
  10668. }
  10669. else
  10670. {
  10671. /* 33222222222211111111110000000000
  10672. 10987654321098765432109876543210
  10673. 101001x01111xxxx101xxxxxxxxxxxxx
  10674. ldnf1h. */
  10675. return 1722;
  10676. }
  10677. }
  10678. }
  10679. }
  10680. }
  10681. else
  10682. {
  10683. if (((word >> 15) & 0x1) == 0)
  10684. {
  10685. if (((word >> 22) & 0x1) == 0)
  10686. {
  10687. if (((word >> 23) & 0x1) == 0)
  10688. {
  10689. /* 33222222222211111111110000000000
  10690. 10987654321098765432109876543210
  10691. 101001x0001xxxxx011xxxxxxxxxxxxx
  10692. ldff1b. */
  10693. return 1642;
  10694. }
  10695. else
  10696. {
  10697. /* 33222222222211111111110000000000
  10698. 10987654321098765432109876543210
  10699. 101001x0101xxxxx011xxxxxxxxxxxxx
  10700. ldff1h. */
  10701. return 1661;
  10702. }
  10703. }
  10704. else
  10705. {
  10706. if (((word >> 23) & 0x1) == 0)
  10707. {
  10708. /* 33222222222211111111110000000000
  10709. 10987654321098765432109876543210
  10710. 101001x0011xxxxx011xxxxxxxxxxxxx
  10711. ldff1b. */
  10712. return 1646;
  10713. }
  10714. else
  10715. {
  10716. /* 33222222222211111111110000000000
  10717. 10987654321098765432109876543210
  10718. 101001x0111xxxxx011xxxxxxxxxxxxx
  10719. ldff1h. */
  10720. return 1665;
  10721. }
  10722. }
  10723. }
  10724. else
  10725. {
  10726. if (((word >> 22) & 0x1) == 0)
  10727. {
  10728. if (((word >> 23) & 0x1) == 0)
  10729. {
  10730. /* 33222222222211111111110000000000
  10731. 10987654321098765432109876543210
  10732. 101001x0001xxxxx111xxxxxxxxxxxxx
  10733. ld2b. */
  10734. return 1616;
  10735. }
  10736. else
  10737. {
  10738. /* 33222222222211111111110000000000
  10739. 10987654321098765432109876543210
  10740. 101001x0101xxxxx111xxxxxxxxxxxxx
  10741. ld2h. */
  10742. return 1620;
  10743. }
  10744. }
  10745. else
  10746. {
  10747. if (((word >> 23) & 0x1) == 0)
  10748. {
  10749. /* 33222222222211111111110000000000
  10750. 10987654321098765432109876543210
  10751. 101001x0011xxxxx111xxxxxxxxxxxxx
  10752. ld4b. */
  10753. return 1632;
  10754. }
  10755. else
  10756. {
  10757. /* 33222222222211111111110000000000
  10758. 10987654321098765432109876543210
  10759. 101001x0111xxxxx111xxxxxxxxxxxxx
  10760. ld4h. */
  10761. return 1636;
  10762. }
  10763. }
  10764. }
  10765. }
  10766. }
  10767. }
  10768. else
  10769. {
  10770. if (((word >> 14) & 0x1) == 0)
  10771. {
  10772. if (((word >> 15) & 0x1) == 0)
  10773. {
  10774. if (((word >> 23) & 0x1) == 0)
  10775. {
  10776. /* 33222222222211111111110000000000
  10777. 10987654321098765432109876543210
  10778. x11001x00x1xxxxx001xxxxxxxxxxxxx
  10779. fmul. */
  10780. return 1465;
  10781. }
  10782. else
  10783. {
  10784. if (((word >> 22) & 0x1) == 0)
  10785. {
  10786. /* 33222222222211111111110000000000
  10787. 10987654321098765432109876543210
  10788. x11001x0101xxxxx001xxxxxxxxxxxxx
  10789. fmul. */
  10790. return 1466;
  10791. }
  10792. else
  10793. {
  10794. /* 33222222222211111111110000000000
  10795. 10987654321098765432109876543210
  10796. x11001x0111xxxxx001xxxxxxxxxxxxx
  10797. fmul. */
  10798. return 1467;
  10799. }
  10800. }
  10801. }
  10802. else
  10803. {
  10804. if (((word >> 22) & 0x1) == 0)
  10805. {
  10806. if (((word >> 31) & 0x1) == 0)
  10807. {
  10808. if (((word >> 10) & 0x1) == 0)
  10809. {
  10810. /* 33222222222211111111110000000000
  10811. 10987654321098765432109876543210
  10812. 011001x0x01xxxxx101xx0xxxxxxxxxx
  10813. fmlslb. */
  10814. return 2098;
  10815. }
  10816. else
  10817. {
  10818. /* 33222222222211111111110000000000
  10819. 10987654321098765432109876543210
  10820. 011001x0x01xxxxx101xx1xxxxxxxxxx
  10821. fmlslt. */
  10822. return 2100;
  10823. }
  10824. }
  10825. else
  10826. {
  10827. /* 33222222222211111111110000000000
  10828. 10987654321098765432109876543210
  10829. 111001x0x01xxxxx101xxxxxxxxxxxxx
  10830. st1h. */
  10831. return 1902;
  10832. }
  10833. }
  10834. else
  10835. {
  10836. if (((word >> 23) & 0x1) == 0)
  10837. {
  10838. /* 33222222222211111111110000000000
  10839. 10987654321098765432109876543210
  10840. x11001x0011xxxxx101xxxxxxxxxxxxx
  10841. st1b. */
  10842. return 1889;
  10843. }
  10844. else
  10845. {
  10846. /* 33222222222211111111110000000000
  10847. 10987654321098765432109876543210
  10848. x11001x0111xxxxx101xxxxxxxxxxxxx
  10849. st1h. */
  10850. return 1910;
  10851. }
  10852. }
  10853. }
  10854. }
  10855. else
  10856. {
  10857. if (((word >> 15) & 0x1) == 0)
  10858. {
  10859. if (((word >> 22) & 0x1) == 0)
  10860. {
  10861. if (((word >> 23) & 0x1) == 0)
  10862. {
  10863. /* 33222222222211111111110000000000
  10864. 10987654321098765432109876543210
  10865. x11001x0001xxxxx011xxxxxxxxxxxxx
  10866. st2b. */
  10867. return 1924;
  10868. }
  10869. else
  10870. {
  10871. if (((word >> 31) & 0x1) == 0)
  10872. {
  10873. if (((word >> 10) & 0x1) == 0)
  10874. {
  10875. /* 33222222222211111111110000000000
  10876. 10987654321098765432109876543210
  10877. 011001x0101xxxxx011xx0xxxxxxxxxx
  10878. fmlslb. */
  10879. return 2097;
  10880. }
  10881. else
  10882. {
  10883. /* 33222222222211111111110000000000
  10884. 10987654321098765432109876543210
  10885. 011001x0101xxxxx011xx1xxxxxxxxxx
  10886. fmlslt. */
  10887. return 2099;
  10888. }
  10889. }
  10890. else
  10891. {
  10892. /* 33222222222211111111110000000000
  10893. 10987654321098765432109876543210
  10894. 111001x0101xxxxx011xxxxxxxxxxxxx
  10895. st2h. */
  10896. return 1928;
  10897. }
  10898. }
  10899. }
  10900. else
  10901. {
  10902. if (((word >> 23) & 0x1) == 0)
  10903. {
  10904. /* 33222222222211111111110000000000
  10905. 10987654321098765432109876543210
  10906. x11001x0011xxxxx011xxxxxxxxxxxxx
  10907. st4b. */
  10908. return 1940;
  10909. }
  10910. else
  10911. {
  10912. /* 33222222222211111111110000000000
  10913. 10987654321098765432109876543210
  10914. x11001x0111xxxxx011xxxxxxxxxxxxx
  10915. st4h. */
  10916. return 1944;
  10917. }
  10918. }
  10919. }
  10920. else
  10921. {
  10922. if (((word >> 22) & 0x1) == 0)
  10923. {
  10924. if (((word >> 23) & 0x1) == 0)
  10925. {
  10926. if (((word >> 20) & 0x1) == 0)
  10927. {
  10928. /* 33222222222211111111110000000000
  10929. 10987654321098765432109876543210
  10930. x11001x00010xxxx111xxxxxxxxxxxxx
  10931. st1b. */
  10932. return 1886;
  10933. }
  10934. else
  10935. {
  10936. /* 33222222222211111111110000000000
  10937. 10987654321098765432109876543210
  10938. x11001x00011xxxx111xxxxxxxxxxxxx
  10939. st2b. */
  10940. return 1925;
  10941. }
  10942. }
  10943. else
  10944. {
  10945. if (((word >> 31) & 0x1) == 0)
  10946. {
  10947. /* 33222222222211111111110000000000
  10948. 10987654321098765432109876543210
  10949. 011001x0101xxxxx111xxxxxxxxxxxxx
  10950. fmmla. */
  10951. return 2473;
  10952. }
  10953. else
  10954. {
  10955. if (((word >> 20) & 0x1) == 0)
  10956. {
  10957. /* 33222222222211111111110000000000
  10958. 10987654321098765432109876543210
  10959. 111001x01010xxxx111xxxxxxxxxxxxx
  10960. st1h. */
  10961. return 1907;
  10962. }
  10963. else
  10964. {
  10965. /* 33222222222211111111110000000000
  10966. 10987654321098765432109876543210
  10967. 111001x01011xxxx111xxxxxxxxxxxxx
  10968. st2h. */
  10969. return 1929;
  10970. }
  10971. }
  10972. }
  10973. }
  10974. else
  10975. {
  10976. if (((word >> 23) & 0x1) == 0)
  10977. {
  10978. if (((word >> 31) & 0x1) == 0)
  10979. {
  10980. /* 33222222222211111111110000000000
  10981. 10987654321098765432109876543210
  10982. 011001x0011xxxxx111xxxxxxxxxxxxx
  10983. bfmmla. */
  10984. return 2497;
  10985. }
  10986. else
  10987. {
  10988. if (((word >> 20) & 0x1) == 0)
  10989. {
  10990. /* 33222222222211111111110000000000
  10991. 10987654321098765432109876543210
  10992. 111001x00110xxxx111xxxxxxxxxxxxx
  10993. st1b. */
  10994. return 1890;
  10995. }
  10996. else
  10997. {
  10998. /* 33222222222211111111110000000000
  10999. 10987654321098765432109876543210
  11000. 111001x00111xxxx111xxxxxxxxxxxxx
  11001. st4b. */
  11002. return 1941;
  11003. }
  11004. }
  11005. }
  11006. else
  11007. {
  11008. if (((word >> 31) & 0x1) == 0)
  11009. {
  11010. /* 33222222222211111111110000000000
  11011. 10987654321098765432109876543210
  11012. 011001x0111xxxxx111xxxxxxxxxxxxx
  11013. fmmla. */
  11014. return 2474;
  11015. }
  11016. else
  11017. {
  11018. if (((word >> 20) & 0x1) == 0)
  11019. {
  11020. /* 33222222222211111111110000000000
  11021. 10987654321098765432109876543210
  11022. 111001x01110xxxx111xxxxxxxxxxxxx
  11023. st1h. */
  11024. return 1911;
  11025. }
  11026. else
  11027. {
  11028. /* 33222222222211111111110000000000
  11029. 10987654321098765432109876543210
  11030. 111001x01111xxxx111xxxxxxxxxxxxx
  11031. st4h. */
  11032. return 1945;
  11033. }
  11034. }
  11035. }
  11036. }
  11037. }
  11038. }
  11039. }
  11040. }
  11041. }
  11042. }
  11043. }
  11044. else
  11045. {
  11046. if (((word >> 29) & 0x1) == 0)
  11047. {
  11048. if (((word >> 30) & 0x1) == 0)
  11049. {
  11050. if (((word >> 31) & 0x1) == 0)
  11051. {
  11052. if (((word >> 21) & 0x1) == 0)
  11053. {
  11054. if (((word >> 20) & 0x1) == 0)
  11055. {
  11056. if (((word >> 22) & 0x1) == 0)
  11057. {
  11058. if (((word >> 23) & 0x1) == 0)
  11059. {
  11060. /* 33222222222211111111110000000000
  11061. 10987654321098765432109876543210
  11062. 000001x10000xxxxxxxxxxxxxxxxxxxx
  11063. orr. */
  11064. return 1770;
  11065. }
  11066. else
  11067. {
  11068. /* 33222222222211111111110000000000
  11069. 10987654321098765432109876543210
  11070. 000001x11000xxxxxxxxxxxxxxxxxxxx
  11071. and. */
  11072. return 1298;
  11073. }
  11074. }
  11075. else
  11076. {
  11077. if (((word >> 23) & 0x1) == 0)
  11078. {
  11079. /* 33222222222211111111110000000000
  11080. 10987654321098765432109876543210
  11081. 000001x10100xxxxxxxxxxxxxxxxxxxx
  11082. eor. */
  11083. return 1385;
  11084. }
  11085. else
  11086. {
  11087. /* 33222222222211111111110000000000
  11088. 10987654321098765432109876543210
  11089. 000001x11100xxxxxxxxxxxxxxxxxxxx
  11090. dupm. */
  11091. return 1383;
  11092. }
  11093. }
  11094. }
  11095. else
  11096. {
  11097. if (((word >> 15) & 0x1) == 0)
  11098. {
  11099. /* 33222222222211111111110000000000
  11100. 10987654321098765432109876543210
  11101. 000001x1xx01xxxx0xxxxxxxxxxxxxxx
  11102. cpy. */
  11103. return 1368;
  11104. }
  11105. else
  11106. {
  11107. /* 33222222222211111111110000000000
  11108. 10987654321098765432109876543210
  11109. 000001x1xx01xxxx1xxxxxxxxxxxxxxx
  11110. fcpy. */
  11111. return 1415;
  11112. }
  11113. }
  11114. }
  11115. else
  11116. {
  11117. if (((word >> 14) & 0x1) == 0)
  11118. {
  11119. if (((word >> 13) & 0x1) == 0)
  11120. {
  11121. if (((word >> 15) & 0x1) == 0)
  11122. {
  11123. if (((word >> 22) & 0x1) == 0)
  11124. {
  11125. if (((word >> 23) & 0x1) == 0)
  11126. {
  11127. /* 33222222222211111111110000000000
  11128. 10987654321098765432109876543210
  11129. 000001x1001xxxxx000xxxxxxxxxxxxx
  11130. ext. */
  11131. return 1390;
  11132. }
  11133. else
  11134. {
  11135. if (((word >> 10) & 0x1) == 0)
  11136. {
  11137. if (((word >> 11) & 0x1) == 0)
  11138. {
  11139. /* 33222222222211111111110000000000
  11140. 10987654321098765432109876543210
  11141. 000001x1101xxxxx000x00xxxxxxxxxx
  11142. zip1. */
  11143. return 2483;
  11144. }
  11145. else
  11146. {
  11147. if (((word >> 12) & 0x1) == 0)
  11148. {
  11149. /* 33222222222211111111110000000000
  11150. 10987654321098765432109876543210
  11151. 000001x1101xxxxx000010xxxxxxxxxx
  11152. uzp1. */
  11153. return 2485;
  11154. }
  11155. else
  11156. {
  11157. /* 33222222222211111111110000000000
  11158. 10987654321098765432109876543210
  11159. 000001x1101xxxxx000110xxxxxxxxxx
  11160. trn1. */
  11161. return 2487;
  11162. }
  11163. }
  11164. }
  11165. else
  11166. {
  11167. if (((word >> 11) & 0x1) == 0)
  11168. {
  11169. /* 33222222222211111111110000000000
  11170. 10987654321098765432109876543210
  11171. 000001x1101xxxxx000x01xxxxxxxxxx
  11172. zip2. */
  11173. return 2484;
  11174. }
  11175. else
  11176. {
  11177. if (((word >> 12) & 0x1) == 0)
  11178. {
  11179. /* 33222222222211111111110000000000
  11180. 10987654321098765432109876543210
  11181. 000001x1101xxxxx000011xxxxxxxxxx
  11182. uzp2. */
  11183. return 2486;
  11184. }
  11185. else
  11186. {
  11187. /* 33222222222211111111110000000000
  11188. 10987654321098765432109876543210
  11189. 000001x1101xxxxx000111xxxxxxxxxx
  11190. trn2. */
  11191. return 2488;
  11192. }
  11193. }
  11194. }
  11195. }
  11196. }
  11197. else
  11198. {
  11199. /* 33222222222211111111110000000000
  11200. 10987654321098765432109876543210
  11201. 000001x1x11xxxxx000xxxxxxxxxxxxx
  11202. ext. */
  11203. return 2080;
  11204. }
  11205. }
  11206. else
  11207. {
  11208. if (((word >> 16) & 0x1) == 0)
  11209. {
  11210. if (((word >> 17) & 0x1) == 0)
  11211. {
  11212. if (((word >> 18) & 0x1) == 0)
  11213. {
  11214. if (((word >> 19) & 0x1) == 0)
  11215. {
  11216. /* 33222222222211111111110000000000
  11217. 10987654321098765432109876543210
  11218. 000001x1xx1x0000100xxxxxxxxxxxxx
  11219. cpy. */
  11220. return 1366;
  11221. }
  11222. else
  11223. {
  11224. /* 33222222222211111111110000000000
  11225. 10987654321098765432109876543210
  11226. 000001x1xx1x1000100xxxxxxxxxxxxx
  11227. clasta. */
  11228. return 1324;
  11229. }
  11230. }
  11231. else
  11232. {
  11233. if (((word >> 19) & 0x1) == 0)
  11234. {
  11235. /* 33222222222211111111110000000000
  11236. 10987654321098765432109876543210
  11237. 000001x1xx1x0100100xxxxxxxxxxxxx
  11238. revb. */
  11239. return 1818;
  11240. }
  11241. else
  11242. {
  11243. /* 33222222222211111111110000000000
  11244. 10987654321098765432109876543210
  11245. 000001x1xx1x1100100xxxxxxxxxxxxx
  11246. splice. */
  11247. return 1845;
  11248. }
  11249. }
  11250. }
  11251. else
  11252. {
  11253. if (((word >> 18) & 0x1) == 0)
  11254. {
  11255. if (((word >> 19) & 0x1) == 0)
  11256. {
  11257. /* 33222222222211111111110000000000
  11258. 10987654321098765432109876543210
  11259. 000001x1xx1x0010100xxxxxxxxxxxxx
  11260. lasta. */
  11261. return 1512;
  11262. }
  11263. else
  11264. {
  11265. /* 33222222222211111111110000000000
  11266. 10987654321098765432109876543210
  11267. 000001x1xx1x1010100xxxxxxxxxxxxx
  11268. clasta. */
  11269. return 1325;
  11270. }
  11271. }
  11272. else
  11273. {
  11274. if (((word >> 19) & 0x1) == 0)
  11275. {
  11276. /* 33222222222211111111110000000000
  11277. 10987654321098765432109876543210
  11278. 000001x1xx1x0110100xxxxxxxxxxxxx
  11279. revw. */
  11280. return 1820;
  11281. }
  11282. else
  11283. {
  11284. /* 33222222222211111111110000000000
  11285. 10987654321098765432109876543210
  11286. 000001x1xx1x1110100xxxxxxxxxxxxx
  11287. revd. */
  11288. return 2410;
  11289. }
  11290. }
  11291. }
  11292. }
  11293. else
  11294. {
  11295. if (((word >> 17) & 0x1) == 0)
  11296. {
  11297. if (((word >> 18) & 0x1) == 0)
  11298. {
  11299. if (((word >> 19) & 0x1) == 0)
  11300. {
  11301. /* 33222222222211111111110000000000
  11302. 10987654321098765432109876543210
  11303. 000001x1xx1x0001100xxxxxxxxxxxxx
  11304. compact. */
  11305. return 1365;
  11306. }
  11307. else
  11308. {
  11309. /* 33222222222211111111110000000000
  11310. 10987654321098765432109876543210
  11311. 000001x1xx1x1001100xxxxxxxxxxxxx
  11312. clastb. */
  11313. return 1327;
  11314. }
  11315. }
  11316. else
  11317. {
  11318. if (((word >> 19) & 0x1) == 0)
  11319. {
  11320. /* 33222222222211111111110000000000
  11321. 10987654321098765432109876543210
  11322. 000001x1xx1x0101100xxxxxxxxxxxxx
  11323. revh. */
  11324. return 1819;
  11325. }
  11326. else
  11327. {
  11328. /* 33222222222211111111110000000000
  11329. 10987654321098765432109876543210
  11330. 000001x1xx1x1101100xxxxxxxxxxxxx
  11331. splice. */
  11332. return 2175;
  11333. }
  11334. }
  11335. }
  11336. else
  11337. {
  11338. if (((word >> 18) & 0x1) == 0)
  11339. {
  11340. if (((word >> 19) & 0x1) == 0)
  11341. {
  11342. /* 33222222222211111111110000000000
  11343. 10987654321098765432109876543210
  11344. 000001x1xx1x0011100xxxxxxxxxxxxx
  11345. lastb. */
  11346. return 1514;
  11347. }
  11348. else
  11349. {
  11350. /* 33222222222211111111110000000000
  11351. 10987654321098765432109876543210
  11352. 000001x1xx1x1011100xxxxxxxxxxxxx
  11353. clastb. */
  11354. return 1328;
  11355. }
  11356. }
  11357. else
  11358. {
  11359. /* 33222222222211111111110000000000
  11360. 10987654321098765432109876543210
  11361. 000001x1xx1xx111100xxxxxxxxxxxxx
  11362. rbit. */
  11363. return 1811;
  11364. }
  11365. }
  11366. }
  11367. }
  11368. }
  11369. else
  11370. {
  11371. if (((word >> 15) & 0x1) == 0)
  11372. {
  11373. if (((word >> 10) & 0x1) == 0)
  11374. {
  11375. if (((word >> 11) & 0x1) == 0)
  11376. {
  11377. if (((word >> 12) & 0x1) == 0)
  11378. {
  11379. /* 33222222222211111111110000000000
  11380. 10987654321098765432109876543210
  11381. 000001x1xx1xxxxx001000xxxxxxxxxx
  11382. dup. */
  11383. return 1381;
  11384. }
  11385. else
  11386. {
  11387. /* 33222222222211111111110000000000
  11388. 10987654321098765432109876543210
  11389. 000001x1xx1xxxxx001100xxxxxxxxxx
  11390. tbl. */
  11391. return 1968;
  11392. }
  11393. }
  11394. else
  11395. {
  11396. if (((word >> 12) & 0x1) == 0)
  11397. {
  11398. /* 33222222222211111111110000000000
  11399. 10987654321098765432109876543210
  11400. 000001x1xx1xxxxx001010xxxxxxxxxx
  11401. tbl. */
  11402. return 2264;
  11403. }
  11404. else
  11405. {
  11406. if (((word >> 16) & 0x1) == 0)
  11407. {
  11408. if (((word >> 17) & 0x1) == 0)
  11409. {
  11410. if (((word >> 18) & 0x1) == 0)
  11411. {
  11412. if (((word >> 19) & 0x1) == 0)
  11413. {
  11414. if (((word >> 20) & 0x1) == 0)
  11415. {
  11416. /* 33222222222211111111110000000000
  11417. 10987654321098765432109876543210
  11418. 000001x1xx100000001110xxxxxxxxxx
  11419. dup. */
  11420. return 1380;
  11421. }
  11422. else
  11423. {
  11424. /* 33222222222211111111110000000000
  11425. 10987654321098765432109876543210
  11426. 000001x1xx110000001110xxxxxxxxxx
  11427. sunpklo. */
  11428. return 1964;
  11429. }
  11430. }
  11431. else
  11432. {
  11433. /* 33222222222211111111110000000000
  11434. 10987654321098765432109876543210
  11435. 000001x1xx1x1000001110xxxxxxxxxx
  11436. rev. */
  11437. return 1817;
  11438. }
  11439. }
  11440. else
  11441. {
  11442. if (((word >> 20) & 0x1) == 0)
  11443. {
  11444. /* 33222222222211111111110000000000
  11445. 10987654321098765432109876543210
  11446. 000001x1xx10x100001110xxxxxxxxxx
  11447. insr. */
  11448. return 1509;
  11449. }
  11450. else
  11451. {
  11452. /* 33222222222211111111110000000000
  11453. 10987654321098765432109876543210
  11454. 000001x1xx11x100001110xxxxxxxxxx
  11455. insr. */
  11456. return 1510;
  11457. }
  11458. }
  11459. }
  11460. else
  11461. {
  11462. /* 33222222222211111111110000000000
  11463. 10987654321098765432109876543210
  11464. 000001x1xx1xxx10001110xxxxxxxxxx
  11465. uunpklo. */
  11466. return 2027;
  11467. }
  11468. }
  11469. else
  11470. {
  11471. if (((word >> 17) & 0x1) == 0)
  11472. {
  11473. /* 33222222222211111111110000000000
  11474. 10987654321098765432109876543210
  11475. 000001x1xx1xxx01001110xxxxxxxxxx
  11476. sunpkhi. */
  11477. return 1963;
  11478. }
  11479. else
  11480. {
  11481. /* 33222222222211111111110000000000
  11482. 10987654321098765432109876543210
  11483. 000001x1xx1xxx11001110xxxxxxxxxx
  11484. uunpkhi. */
  11485. return 2026;
  11486. }
  11487. }
  11488. }
  11489. }
  11490. }
  11491. else
  11492. {
  11493. /* 33222222222211111111110000000000
  11494. 10987654321098765432109876543210
  11495. 000001x1xx1xxxxx001xx1xxxxxxxxxx
  11496. tbx. */
  11497. return 2265;
  11498. }
  11499. }
  11500. else
  11501. {
  11502. if (((word >> 16) & 0x1) == 0)
  11503. {
  11504. if (((word >> 19) & 0x1) == 0)
  11505. {
  11506. if (((word >> 20) & 0x1) == 0)
  11507. {
  11508. /* 33222222222211111111110000000000
  11509. 10987654321098765432109876543210
  11510. 000001x1xx100xx0101xxxxxxxxxxxxx
  11511. lasta. */
  11512. return 1511;
  11513. }
  11514. else
  11515. {
  11516. /* 33222222222211111111110000000000
  11517. 10987654321098765432109876543210
  11518. 000001x1xx110xx0101xxxxxxxxxxxxx
  11519. clasta. */
  11520. return 1326;
  11521. }
  11522. }
  11523. else
  11524. {
  11525. /* 33222222222211111111110000000000
  11526. 10987654321098765432109876543210
  11527. 000001x1xx1x1xx0101xxxxxxxxxxxxx
  11528. cpy. */
  11529. return 1367;
  11530. }
  11531. }
  11532. else
  11533. {
  11534. if (((word >> 20) & 0x1) == 0)
  11535. {
  11536. /* 33222222222211111111110000000000
  11537. 10987654321098765432109876543210
  11538. 000001x1xx10xxx1101xxxxxxxxxxxxx
  11539. lastb. */
  11540. return 1513;
  11541. }
  11542. else
  11543. {
  11544. /* 33222222222211111111110000000000
  11545. 10987654321098765432109876543210
  11546. 000001x1xx11xxx1101xxxxxxxxxxxxx
  11547. clastb. */
  11548. return 1329;
  11549. }
  11550. }
  11551. }
  11552. }
  11553. }
  11554. else
  11555. {
  11556. if (((word >> 15) & 0x1) == 0)
  11557. {
  11558. if (((word >> 10) & 0x1) == 0)
  11559. {
  11560. if (((word >> 11) & 0x1) == 0)
  11561. {
  11562. if (((word >> 12) & 0x1) == 0)
  11563. {
  11564. if (((word >> 13) & 0x1) == 0)
  11565. {
  11566. if (((word >> 20) & 0x1) == 0)
  11567. {
  11568. /* 33222222222211111111110000000000
  11569. 10987654321098765432109876543210
  11570. 000001x1xx10xxxx010000xxxxxxxxxx
  11571. zip1. */
  11572. return 2044;
  11573. }
  11574. else
  11575. {
  11576. if (((word >> 16) & 0x1) == 0)
  11577. {
  11578. if (((word >> 18) & 0x1) == 0)
  11579. {
  11580. /* 33222222222211111111110000000000
  11581. 10987654321098765432109876543210
  11582. 000001x1xx11x0x0010000xxxxxxxxxx
  11583. punpklo. */
  11584. return 1810;
  11585. }
  11586. else
  11587. {
  11588. /* 33222222222211111111110000000000
  11589. 10987654321098765432109876543210
  11590. 000001x1xx11x1x0010000xxxxxxxxxx
  11591. rev. */
  11592. return 1816;
  11593. }
  11594. }
  11595. else
  11596. {
  11597. /* 33222222222211111111110000000000
  11598. 10987654321098765432109876543210
  11599. 000001x1xx11xxx1010000xxxxxxxxxx
  11600. punpkhi. */
  11601. return 1809;
  11602. }
  11603. }
  11604. }
  11605. else
  11606. {
  11607. /* 33222222222211111111110000000000
  11608. 10987654321098765432109876543210
  11609. 000001x1xx1xxxxx011000xxxxxxxxxx
  11610. zip1. */
  11611. return 2045;
  11612. }
  11613. }
  11614. else
  11615. {
  11616. if (((word >> 13) & 0x1) == 0)
  11617. {
  11618. /* 33222222222211111111110000000000
  11619. 10987654321098765432109876543210
  11620. 000001x1xx1xxxxx010100xxxxxxxxxx
  11621. trn1. */
  11622. return 1969;
  11623. }
  11624. else
  11625. {
  11626. /* 33222222222211111111110000000000
  11627. 10987654321098765432109876543210
  11628. 000001x1xx1xxxxx011100xxxxxxxxxx
  11629. trn1. */
  11630. return 1970;
  11631. }
  11632. }
  11633. }
  11634. else
  11635. {
  11636. if (((word >> 13) & 0x1) == 0)
  11637. {
  11638. /* 33222222222211111111110000000000
  11639. 10987654321098765432109876543210
  11640. 000001x1xx1xxxxx010x10xxxxxxxxxx
  11641. uzp1. */
  11642. return 2031;
  11643. }
  11644. else
  11645. {
  11646. /* 33222222222211111111110000000000
  11647. 10987654321098765432109876543210
  11648. 000001x1xx1xxxxx011x10xxxxxxxxxx
  11649. uzp1. */
  11650. return 2032;
  11651. }
  11652. }
  11653. }
  11654. else
  11655. {
  11656. if (((word >> 11) & 0x1) == 0)
  11657. {
  11658. if (((word >> 12) & 0x1) == 0)
  11659. {
  11660. if (((word >> 13) & 0x1) == 0)
  11661. {
  11662. /* 33222222222211111111110000000000
  11663. 10987654321098765432109876543210
  11664. 000001x1xx1xxxxx010001xxxxxxxxxx
  11665. zip2. */
  11666. return 2046;
  11667. }
  11668. else
  11669. {
  11670. /* 33222222222211111111110000000000
  11671. 10987654321098765432109876543210
  11672. 000001x1xx1xxxxx011001xxxxxxxxxx
  11673. zip2. */
  11674. return 2047;
  11675. }
  11676. }
  11677. else
  11678. {
  11679. if (((word >> 13) & 0x1) == 0)
  11680. {
  11681. /* 33222222222211111111110000000000
  11682. 10987654321098765432109876543210
  11683. 000001x1xx1xxxxx010101xxxxxxxxxx
  11684. trn2. */
  11685. return 1971;
  11686. }
  11687. else
  11688. {
  11689. /* 33222222222211111111110000000000
  11690. 10987654321098765432109876543210
  11691. 000001x1xx1xxxxx011101xxxxxxxxxx
  11692. trn2. */
  11693. return 1972;
  11694. }
  11695. }
  11696. }
  11697. else
  11698. {
  11699. if (((word >> 13) & 0x1) == 0)
  11700. {
  11701. /* 33222222222211111111110000000000
  11702. 10987654321098765432109876543210
  11703. 000001x1xx1xxxxx010x11xxxxxxxxxx
  11704. uzp2. */
  11705. return 2033;
  11706. }
  11707. else
  11708. {
  11709. /* 33222222222211111111110000000000
  11710. 10987654321098765432109876543210
  11711. 000001x1xx1xxxxx011x11xxxxxxxxxx
  11712. uzp2. */
  11713. return 2034;
  11714. }
  11715. }
  11716. }
  11717. }
  11718. else
  11719. {
  11720. /* 33222222222211111111110000000000
  11721. 10987654321098765432109876543210
  11722. 000001x1xx1xxxxx11xxxxxxxxxxxxxx
  11723. sel. */
  11724. return 1835;
  11725. }
  11726. }
  11727. }
  11728. }
  11729. else
  11730. {
  11731. if (((word >> 13) & 0x1) == 0)
  11732. {
  11733. if (((word >> 14) & 0x1) == 0)
  11734. {
  11735. if (((word >> 15) & 0x1) == 0)
  11736. {
  11737. if (((word >> 22) & 0x1) == 0)
  11738. {
  11739. /* 33222222222211111111110000000000
  11740. 10987654321098765432109876543210
  11741. 100001x1x0xxxxxx000xxxxxxxxxxxxx
  11742. ldr. */
  11743. return 1739;
  11744. }
  11745. else
  11746. {
  11747. /* 33222222222211111111110000000000
  11748. 10987654321098765432109876543210
  11749. 100001x1x1xxxxxx000xxxxxxxxxxxxx
  11750. prfb. */
  11751. return 1783;
  11752. }
  11753. }
  11754. else
  11755. {
  11756. if (((word >> 23) & 0x1) == 0)
  11757. {
  11758. /* 33222222222211111111110000000000
  11759. 10987654321098765432109876543210
  11760. 100001x10xxxxxxx100xxxxxxxxxxxxx
  11761. ld1rsh. */
  11762. return 1568;
  11763. }
  11764. else
  11765. {
  11766. /* 33222222222211111111110000000000
  11767. 10987654321098765432109876543210
  11768. 100001x11xxxxxxx100xxxxxxxxxxxxx
  11769. ld1rsb. */
  11770. return 1565;
  11771. }
  11772. }
  11773. }
  11774. else
  11775. {
  11776. if (((word >> 15) & 0x1) == 0)
  11777. {
  11778. if (((word >> 23) & 0x1) == 0)
  11779. {
  11780. if (((word >> 21) & 0x1) == 0)
  11781. {
  11782. /* 33222222222211111111110000000000
  11783. 10987654321098765432109876543210
  11784. 100001x10x0xxxxx010xxxxxxxxxxxxx
  11785. ld1w. */
  11786. return 1603;
  11787. }
  11788. else
  11789. {
  11790. /* 33222222222211111111110000000000
  11791. 10987654321098765432109876543210
  11792. 100001x10x1xxxxx010xxxxxxxxxxxxx
  11793. ld1w. */
  11794. return 1604;
  11795. }
  11796. }
  11797. else
  11798. {
  11799. if (((word >> 22) & 0x1) == 0)
  11800. {
  11801. /* 33222222222211111111110000000000
  11802. 10987654321098765432109876543210
  11803. 100001x110xxxxxx010xxxxxxxxxxxxx
  11804. ldr. */
  11805. return 1740;
  11806. }
  11807. else
  11808. {
  11809. /* 33222222222211111111110000000000
  11810. 10987654321098765432109876543210
  11811. 100001x111xxxxxx010xxxxxxxxxxxxx
  11812. prfw. */
  11813. return 1804;
  11814. }
  11815. }
  11816. }
  11817. else
  11818. {
  11819. if (((word >> 22) & 0x1) == 0)
  11820. {
  11821. if (((word >> 21) & 0x1) == 0)
  11822. {
  11823. if (((word >> 23) & 0x1) == 0)
  11824. {
  11825. /* 33222222222211111111110000000000
  11826. 10987654321098765432109876543210
  11827. 100001x1000xxxxx110xxxxxxxxxxxxx
  11828. prfw. */
  11829. return 1800;
  11830. }
  11831. else
  11832. {
  11833. /* 33222222222211111111110000000000
  11834. 10987654321098765432109876543210
  11835. 100001x1100xxxxx110xxxxxxxxxxxxx
  11836. prfd. */
  11837. return 1786;
  11838. }
  11839. }
  11840. else
  11841. {
  11842. /* 33222222222211111111110000000000
  11843. 10987654321098765432109876543210
  11844. 100001x1x01xxxxx110xxxxxxxxxxxxx
  11845. ld1w. */
  11846. return 1611;
  11847. }
  11848. }
  11849. else
  11850. {
  11851. if (((word >> 23) & 0x1) == 0)
  11852. {
  11853. /* 33222222222211111111110000000000
  11854. 10987654321098765432109876543210
  11855. 100001x101xxxxxx110xxxxxxxxxxxxx
  11856. ld1rw. */
  11857. return 1571;
  11858. }
  11859. else
  11860. {
  11861. /* 33222222222211111111110000000000
  11862. 10987654321098765432109876543210
  11863. 100001x111xxxxxx110xxxxxxxxxxxxx
  11864. ld1rsb. */
  11865. return 1567;
  11866. }
  11867. }
  11868. }
  11869. }
  11870. }
  11871. else
  11872. {
  11873. if (((word >> 14) & 0x1) == 0)
  11874. {
  11875. if (((word >> 15) & 0x1) == 0)
  11876. {
  11877. /* 33222222222211111111110000000000
  11878. 10987654321098765432109876543210
  11879. 100001x1xxxxxxxx001xxxxxxxxxxxxx
  11880. prfh. */
  11881. return 1797;
  11882. }
  11883. else
  11884. {
  11885. if (((word >> 22) & 0x1) == 0)
  11886. {
  11887. /* 33222222222211111111110000000000
  11888. 10987654321098765432109876543210
  11889. 100001x1x0xxxxxx101xxxxxxxxxxxxx
  11890. ldnt1w. */
  11891. return 2111;
  11892. }
  11893. else
  11894. {
  11895. if (((word >> 23) & 0x1) == 0)
  11896. {
  11897. /* 33222222222211111111110000000000
  11898. 10987654321098765432109876543210
  11899. 100001x101xxxxxx101xxxxxxxxxxxxx
  11900. ld1rsh. */
  11901. return 1569;
  11902. }
  11903. else
  11904. {
  11905. /* 33222222222211111111110000000000
  11906. 10987654321098765432109876543210
  11907. 100001x111xxxxxx101xxxxxxxxxxxxx
  11908. ld1rsb. */
  11909. return 1566;
  11910. }
  11911. }
  11912. }
  11913. }
  11914. else
  11915. {
  11916. if (((word >> 15) & 0x1) == 0)
  11917. {
  11918. if (((word >> 23) & 0x1) == 0)
  11919. {
  11920. if (((word >> 21) & 0x1) == 0)
  11921. {
  11922. /* 33222222222211111111110000000000
  11923. 10987654321098765432109876543210
  11924. 100001x10x0xxxxx011xxxxxxxxxxxxx
  11925. ldff1w. */
  11926. return 1703;
  11927. }
  11928. else
  11929. {
  11930. /* 33222222222211111111110000000000
  11931. 10987654321098765432109876543210
  11932. 100001x10x1xxxxx011xxxxxxxxxxxxx
  11933. ldff1w. */
  11934. return 1704;
  11935. }
  11936. }
  11937. else
  11938. {
  11939. /* 33222222222211111111110000000000
  11940. 10987654321098765432109876543210
  11941. 100001x11xxxxxxx011xxxxxxxxxxxxx
  11942. prfd. */
  11943. return 1790;
  11944. }
  11945. }
  11946. else
  11947. {
  11948. if (((word >> 22) & 0x1) == 0)
  11949. {
  11950. if (((word >> 21) & 0x1) == 0)
  11951. {
  11952. if (((word >> 23) & 0x1) == 0)
  11953. {
  11954. /* 33222222222211111111110000000000
  11955. 10987654321098765432109876543210
  11956. 100001x1000xxxxx111xxxxxxxxxxxxx
  11957. prfw. */
  11958. return 1803;
  11959. }
  11960. else
  11961. {
  11962. /* 33222222222211111111110000000000
  11963. 10987654321098765432109876543210
  11964. 100001x1100xxxxx111xxxxxxxxxxxxx
  11965. prfd. */
  11966. return 1789;
  11967. }
  11968. }
  11969. else
  11970. {
  11971. /* 33222222222211111111110000000000
  11972. 10987654321098765432109876543210
  11973. 100001x1x01xxxxx111xxxxxxxxxxxxx
  11974. ldff1w. */
  11975. return 1713;
  11976. }
  11977. }
  11978. else
  11979. {
  11980. if (((word >> 23) & 0x1) == 0)
  11981. {
  11982. /* 33222222222211111111110000000000
  11983. 10987654321098765432109876543210
  11984. 100001x101xxxxxx111xxxxxxxxxxxxx
  11985. ld1rw. */
  11986. return 1572;
  11987. }
  11988. else
  11989. {
  11990. /* 33222222222211111111110000000000
  11991. 10987654321098765432109876543210
  11992. 100001x111xxxxxx111xxxxxxxxxxxxx
  11993. ld1rd. */
  11994. return 1553;
  11995. }
  11996. }
  11997. }
  11998. }
  11999. }
  12000. }
  12001. }
  12002. else
  12003. {
  12004. if (((word >> 13) & 0x1) == 0)
  12005. {
  12006. if (((word >> 14) & 0x1) == 0)
  12007. {
  12008. if (((word >> 15) & 0x1) == 0)
  12009. {
  12010. if (((word >> 21) & 0x1) == 0)
  12011. {
  12012. if (((word >> 31) & 0x1) == 0)
  12013. {
  12014. if (((word >> 10) & 0x1) == 0)
  12015. {
  12016. if (((word >> 11) & 0x1) == 0)
  12017. {
  12018. if (((word >> 12) & 0x1) == 0)
  12019. {
  12020. /* 33222222222211111111110000000000
  12021. 10987654321098765432109876543210
  12022. 010001x1xx0xxxxx000000xxxxxxxxxx
  12023. saddlb. */
  12024. return 2141;
  12025. }
  12026. else
  12027. {
  12028. /* 33222222222211111111110000000000
  12029. 10987654321098765432109876543210
  12030. 010001x1xx0xxxxx000100xxxxxxxxxx
  12031. ssublb. */
  12032. return 2248;
  12033. }
  12034. }
  12035. else
  12036. {
  12037. if (((word >> 12) & 0x1) == 0)
  12038. {
  12039. /* 33222222222211111111110000000000
  12040. 10987654321098765432109876543210
  12041. 010001x1xx0xxxxx000010xxxxxxxxxx
  12042. uaddlb. */
  12043. return 2272;
  12044. }
  12045. else
  12046. {
  12047. /* 33222222222211111111110000000000
  12048. 10987654321098765432109876543210
  12049. 010001x1xx0xxxxx000110xxxxxxxxxx
  12050. usublb. */
  12051. return 2325;
  12052. }
  12053. }
  12054. }
  12055. else
  12056. {
  12057. if (((word >> 11) & 0x1) == 0)
  12058. {
  12059. if (((word >> 12) & 0x1) == 0)
  12060. {
  12061. /* 33222222222211111111110000000000
  12062. 10987654321098765432109876543210
  12063. 010001x1xx0xxxxx000001xxxxxxxxxx
  12064. saddlt. */
  12065. return 2143;
  12066. }
  12067. else
  12068. {
  12069. /* 33222222222211111111110000000000
  12070. 10987654321098765432109876543210
  12071. 010001x1xx0xxxxx000101xxxxxxxxxx
  12072. ssublt. */
  12073. return 2250;
  12074. }
  12075. }
  12076. else
  12077. {
  12078. if (((word >> 12) & 0x1) == 0)
  12079. {
  12080. /* 33222222222211111111110000000000
  12081. 10987654321098765432109876543210
  12082. 010001x1xx0xxxxx000011xxxxxxxxxx
  12083. uaddlt. */
  12084. return 2273;
  12085. }
  12086. else
  12087. {
  12088. /* 33222222222211111111110000000000
  12089. 10987654321098765432109876543210
  12090. 010001x1xx0xxxxx000111xxxxxxxxxx
  12091. usublt. */
  12092. return 2326;
  12093. }
  12094. }
  12095. }
  12096. }
  12097. else
  12098. {
  12099. /* 33222222222211111111110000000000
  12100. 10987654321098765432109876543210
  12101. 110001x1xx0xxxxx000xxxxxxxxxxxxx
  12102. ld1sw. */
  12103. return 1597;
  12104. }
  12105. }
  12106. else
  12107. {
  12108. if (((word >> 31) & 0x1) == 0)
  12109. {
  12110. if (((word >> 10) & 0x1) == 0)
  12111. {
  12112. if (((word >> 11) & 0x1) == 0)
  12113. {
  12114. if (((word >> 12) & 0x1) == 0)
  12115. {
  12116. /* 33222222222211111111110000000000
  12117. 10987654321098765432109876543210
  12118. 010001x1xx1xxxxx000000xxxxxxxxxx
  12119. sqshrunb. */
  12120. return 2231;
  12121. }
  12122. else
  12123. {
  12124. /* 33222222222211111111110000000000
  12125. 10987654321098765432109876543210
  12126. 010001x1xx1xxxxx000100xxxxxxxxxx
  12127. shrnb. */
  12128. return 2149;
  12129. }
  12130. }
  12131. else
  12132. {
  12133. if (((word >> 12) & 0x1) == 0)
  12134. {
  12135. /* 33222222222211111111110000000000
  12136. 10987654321098765432109876543210
  12137. 010001x1xx1xxxxx000010xxxxxxxxxx
  12138. sqrshrunb. */
  12139. return 2223;
  12140. }
  12141. else
  12142. {
  12143. /* 33222222222211111111110000000000
  12144. 10987654321098765432109876543210
  12145. 010001x1xx1xxxxx000110xxxxxxxxxx
  12146. rshrnb. */
  12147. return 2131;
  12148. }
  12149. }
  12150. }
  12151. else
  12152. {
  12153. if (((word >> 11) & 0x1) == 0)
  12154. {
  12155. if (((word >> 12) & 0x1) == 0)
  12156. {
  12157. /* 33222222222211111111110000000000
  12158. 10987654321098765432109876543210
  12159. 010001x1xx1xxxxx000001xxxxxxxxxx
  12160. sqshrunt. */
  12161. return 2232;
  12162. }
  12163. else
  12164. {
  12165. /* 33222222222211111111110000000000
  12166. 10987654321098765432109876543210
  12167. 010001x1xx1xxxxx000101xxxxxxxxxx
  12168. shrnt. */
  12169. return 2150;
  12170. }
  12171. }
  12172. else
  12173. {
  12174. if (((word >> 12) & 0x1) == 0)
  12175. {
  12176. /* 33222222222211111111110000000000
  12177. 10987654321098765432109876543210
  12178. 010001x1xx1xxxxx000011xxxxxxxxxx
  12179. sqrshrunt. */
  12180. return 2224;
  12181. }
  12182. else
  12183. {
  12184. /* 33222222222211111111110000000000
  12185. 10987654321098765432109876543210
  12186. 010001x1xx1xxxxx000111xxxxxxxxxx
  12187. rshrnt. */
  12188. return 2132;
  12189. }
  12190. }
  12191. }
  12192. }
  12193. else
  12194. {
  12195. /* 33222222222211111111110000000000
  12196. 10987654321098765432109876543210
  12197. 110001x1xx1xxxxx000xxxxxxxxxxxxx
  12198. ld1sw. */
  12199. return 1598;
  12200. }
  12201. }
  12202. }
  12203. else
  12204. {
  12205. if (((word >> 21) & 0x1) == 0)
  12206. {
  12207. if (((word >> 31) & 0x1) == 0)
  12208. {
  12209. if (((word >> 10) & 0x1) == 0)
  12210. {
  12211. if (((word >> 11) & 0x1) == 0)
  12212. {
  12213. if (((word >> 12) & 0x1) == 0)
  12214. {
  12215. /* 33222222222211111111110000000000
  12216. 10987654321098765432109876543210
  12217. 010001x1xx0xxxxx100000xxxxxxxxxx
  12218. saddlbt. */
  12219. return 2142;
  12220. }
  12221. else
  12222. {
  12223. /* 33222222222211111111110000000000
  12224. 10987654321098765432109876543210
  12225. 010001x1xx0xxxxx100100xxxxxxxxxx
  12226. eorbt. */
  12227. return 2078;
  12228. }
  12229. }
  12230. else
  12231. {
  12232. if (((word >> 12) & 0x1) == 0)
  12233. {
  12234. /* 33222222222211111111110000000000
  12235. 10987654321098765432109876543210
  12236. 010001x1xx0xxxxx100010xxxxxxxxxx
  12237. ssublbt. */
  12238. return 2249;
  12239. }
  12240. else
  12241. {
  12242. if (((word >> 22) & 0x1) == 0)
  12243. {
  12244. if (((word >> 23) & 0x1) == 0)
  12245. {
  12246. /* 33222222222211111111110000000000
  12247. 10987654321098765432109876543210
  12248. 010001x1000xxxxx100110xxxxxxxxxx
  12249. smmla. */
  12250. return 2467;
  12251. }
  12252. else
  12253. {
  12254. /* 33222222222211111111110000000000
  12255. 10987654321098765432109876543210
  12256. 010001x1100xxxxx100110xxxxxxxxxx
  12257. usmmla. */
  12258. return 2469;
  12259. }
  12260. }
  12261. else
  12262. {
  12263. /* 33222222222211111111110000000000
  12264. 10987654321098765432109876543210
  12265. 010001x1x10xxxxx100110xxxxxxxxxx
  12266. ummla. */
  12267. return 2468;
  12268. }
  12269. }
  12270. }
  12271. }
  12272. else
  12273. {
  12274. if (((word >> 11) & 0x1) == 0)
  12275. {
  12276. /* 33222222222211111111110000000000
  12277. 10987654321098765432109876543210
  12278. 010001x1xx0xxxxx100x01xxxxxxxxxx
  12279. eortb. */
  12280. return 2079;
  12281. }
  12282. else
  12283. {
  12284. /* 33222222222211111111110000000000
  12285. 10987654321098765432109876543210
  12286. 010001x1xx0xxxxx100x11xxxxxxxxxx
  12287. ssubltb. */
  12288. return 2251;
  12289. }
  12290. }
  12291. }
  12292. else
  12293. {
  12294. if (((word >> 22) & 0x1) == 0)
  12295. {
  12296. /* 33222222222211111111110000000000
  12297. 10987654321098765432109876543210
  12298. 110001x1x00xxxxx100xxxxxxxxxxxxx
  12299. ldnt1sw. */
  12300. return 2110;
  12301. }
  12302. else
  12303. {
  12304. /* 33222222222211111111110000000000
  12305. 10987654321098765432109876543210
  12306. 110001x1x10xxxxx100xxxxxxxxxxxxx
  12307. ld1sw. */
  12308. return 1599;
  12309. }
  12310. }
  12311. }
  12312. else
  12313. {
  12314. if (((word >> 31) & 0x1) == 0)
  12315. {
  12316. if (((word >> 4) & 0x1) == 0)
  12317. {
  12318. /* 33222222222211111111110000000000
  12319. 10987654321098765432109876543210
  12320. 010001x1xx1xxxxx100xxxxxxxx0xxxx
  12321. match. */
  12322. return 2113;
  12323. }
  12324. else
  12325. {
  12326. /* 33222222222211111111110000000000
  12327. 10987654321098765432109876543210
  12328. 010001x1xx1xxxxx100xxxxxxxx1xxxx
  12329. nmatch. */
  12330. return 2125;
  12331. }
  12332. }
  12333. else
  12334. {
  12335. if (((word >> 22) & 0x1) == 0)
  12336. {
  12337. /* 33222222222211111111110000000000
  12338. 10987654321098765432109876543210
  12339. 110001x1x01xxxxx100xxxxxxxxxxxxx
  12340. ld1sw. */
  12341. return 1602;
  12342. }
  12343. else
  12344. {
  12345. /* 33222222222211111111110000000000
  12346. 10987654321098765432109876543210
  12347. 110001x1x11xxxxx100xxxxxxxxxxxxx
  12348. ld1sw. */
  12349. return 1600;
  12350. }
  12351. }
  12352. }
  12353. }
  12354. }
  12355. else
  12356. {
  12357. if (((word >> 15) & 0x1) == 0)
  12358. {
  12359. if (((word >> 21) & 0x1) == 0)
  12360. {
  12361. if (((word >> 31) & 0x1) == 0)
  12362. {
  12363. if (((word >> 10) & 0x1) == 0)
  12364. {
  12365. if (((word >> 11) & 0x1) == 0)
  12366. {
  12367. if (((word >> 12) & 0x1) == 0)
  12368. {
  12369. /* 33222222222211111111110000000000
  12370. 10987654321098765432109876543210
  12371. 010001x1xx0xxxxx010000xxxxxxxxxx
  12372. saddwb. */
  12373. return 2144;
  12374. }
  12375. else
  12376. {
  12377. /* 33222222222211111111110000000000
  12378. 10987654321098765432109876543210
  12379. 010001x1xx0xxxxx010100xxxxxxxxxx
  12380. ssubwb. */
  12381. return 2252;
  12382. }
  12383. }
  12384. else
  12385. {
  12386. if (((word >> 12) & 0x1) == 0)
  12387. {
  12388. /* 33222222222211111111110000000000
  12389. 10987654321098765432109876543210
  12390. 010001x1xx0xxxxx010010xxxxxxxxxx
  12391. uaddwb. */
  12392. return 2274;
  12393. }
  12394. else
  12395. {
  12396. /* 33222222222211111111110000000000
  12397. 10987654321098765432109876543210
  12398. 010001x1xx0xxxxx010110xxxxxxxxxx
  12399. usubwb. */
  12400. return 2327;
  12401. }
  12402. }
  12403. }
  12404. else
  12405. {
  12406. if (((word >> 11) & 0x1) == 0)
  12407. {
  12408. if (((word >> 12) & 0x1) == 0)
  12409. {
  12410. /* 33222222222211111111110000000000
  12411. 10987654321098765432109876543210
  12412. 010001x1xx0xxxxx010001xxxxxxxxxx
  12413. saddwt. */
  12414. return 2145;
  12415. }
  12416. else
  12417. {
  12418. /* 33222222222211111111110000000000
  12419. 10987654321098765432109876543210
  12420. 010001x1xx0xxxxx010101xxxxxxxxxx
  12421. ssubwt. */
  12422. return 2253;
  12423. }
  12424. }
  12425. else
  12426. {
  12427. if (((word >> 12) & 0x1) == 0)
  12428. {
  12429. /* 33222222222211111111110000000000
  12430. 10987654321098765432109876543210
  12431. 010001x1xx0xxxxx010011xxxxxxxxxx
  12432. uaddwt. */
  12433. return 2275;
  12434. }
  12435. else
  12436. {
  12437. /* 33222222222211111111110000000000
  12438. 10987654321098765432109876543210
  12439. 010001x1xx0xxxxx010111xxxxxxxxxx
  12440. usubwt. */
  12441. return 2328;
  12442. }
  12443. }
  12444. }
  12445. }
  12446. else
  12447. {
  12448. if (((word >> 23) & 0x1) == 0)
  12449. {
  12450. /* 33222222222211111111110000000000
  12451. 10987654321098765432109876543210
  12452. 110001x10x0xxxxx010xxxxxxxxxxxxx
  12453. ld1w. */
  12454. return 1607;
  12455. }
  12456. else
  12457. {
  12458. /* 33222222222211111111110000000000
  12459. 10987654321098765432109876543210
  12460. 110001x11x0xxxxx010xxxxxxxxxxxxx
  12461. ld1d. */
  12462. return 1529;
  12463. }
  12464. }
  12465. }
  12466. else
  12467. {
  12468. if (((word >> 23) & 0x1) == 0)
  12469. {
  12470. if (((word >> 31) & 0x1) == 0)
  12471. {
  12472. if (((word >> 10) & 0x1) == 0)
  12473. {
  12474. if (((word >> 11) & 0x1) == 0)
  12475. {
  12476. if (((word >> 12) & 0x1) == 0)
  12477. {
  12478. /* 33222222222211111111110000000000
  12479. 10987654321098765432109876543210
  12480. 010001x10x1xxxxx010000xxxxxxxxxx
  12481. sqxtnb. */
  12482. return 2235;
  12483. }
  12484. else
  12485. {
  12486. /* 33222222222211111111110000000000
  12487. 10987654321098765432109876543210
  12488. 010001x10x1xxxxx010100xxxxxxxxxx
  12489. sqxtunb. */
  12490. return 2237;
  12491. }
  12492. }
  12493. else
  12494. {
  12495. /* 33222222222211111111110000000000
  12496. 10987654321098765432109876543210
  12497. 010001x10x1xxxxx010x10xxxxxxxxxx
  12498. uqxtnb. */
  12499. return 2312;
  12500. }
  12501. }
  12502. else
  12503. {
  12504. if (((word >> 11) & 0x1) == 0)
  12505. {
  12506. if (((word >> 12) & 0x1) == 0)
  12507. {
  12508. /* 33222222222211111111110000000000
  12509. 10987654321098765432109876543210
  12510. 010001x10x1xxxxx010001xxxxxxxxxx
  12511. sqxtnt. */
  12512. return 2236;
  12513. }
  12514. else
  12515. {
  12516. /* 33222222222211111111110000000000
  12517. 10987654321098765432109876543210
  12518. 010001x10x1xxxxx010101xxxxxxxxxx
  12519. sqxtunt. */
  12520. return 2238;
  12521. }
  12522. }
  12523. else
  12524. {
  12525. /* 33222222222211111111110000000000
  12526. 10987654321098765432109876543210
  12527. 010001x10x1xxxxx010x11xxxxxxxxxx
  12528. uqxtnt. */
  12529. return 2313;
  12530. }
  12531. }
  12532. }
  12533. else
  12534. {
  12535. /* 33222222222211111111110000000000
  12536. 10987654321098765432109876543210
  12537. 110001x10x1xxxxx010xxxxxxxxxxxxx
  12538. ld1w. */
  12539. return 1608;
  12540. }
  12541. }
  12542. else
  12543. {
  12544. /* 33222222222211111111110000000000
  12545. 10987654321098765432109876543210
  12546. x10001x11x1xxxxx010xxxxxxxxxxxxx
  12547. ld1d. */
  12548. return 1530;
  12549. }
  12550. }
  12551. }
  12552. else
  12553. {
  12554. if (((word >> 21) & 0x1) == 0)
  12555. {
  12556. if (((word >> 31) & 0x1) == 0)
  12557. {
  12558. if (((word >> 11) & 0x1) == 0)
  12559. {
  12560. if (((word >> 10) & 0x1) == 0)
  12561. {
  12562. if (((word >> 12) & 0x1) == 0)
  12563. {
  12564. /* 33222222222211111111110000000000
  12565. 10987654321098765432109876543210
  12566. 010001x1xx0xxxxx110000xxxxxxxxxx
  12567. sabalb. */
  12568. return 2136;
  12569. }
  12570. else
  12571. {
  12572. if (((word >> 23) & 0x1) == 0)
  12573. {
  12574. /* 33222222222211111111110000000000
  12575. 10987654321098765432109876543210
  12576. 010001x10x0xxxxx110100xxxxxxxxxx
  12577. adclb. */
  12578. return 2061;
  12579. }
  12580. else
  12581. {
  12582. /* 33222222222211111111110000000000
  12583. 10987654321098765432109876543210
  12584. 010001x11x0xxxxx110100xxxxxxxxxx
  12585. sbclb. */
  12586. return 2146;
  12587. }
  12588. }
  12589. }
  12590. else
  12591. {
  12592. if (((word >> 12) & 0x1) == 0)
  12593. {
  12594. /* 33222222222211111111110000000000
  12595. 10987654321098765432109876543210
  12596. 010001x1xx0xxxxx110001xxxxxxxxxx
  12597. sabalt. */
  12598. return 2137;
  12599. }
  12600. else
  12601. {
  12602. if (((word >> 23) & 0x1) == 0)
  12603. {
  12604. /* 33222222222211111111110000000000
  12605. 10987654321098765432109876543210
  12606. 010001x10x0xxxxx110101xxxxxxxxxx
  12607. adclt. */
  12608. return 2062;
  12609. }
  12610. else
  12611. {
  12612. /* 33222222222211111111110000000000
  12613. 10987654321098765432109876543210
  12614. 010001x11x0xxxxx110101xxxxxxxxxx
  12615. sbclt. */
  12616. return 2147;
  12617. }
  12618. }
  12619. }
  12620. }
  12621. else
  12622. {
  12623. if (((word >> 12) & 0x1) == 0)
  12624. {
  12625. if (((word >> 10) & 0x1) == 0)
  12626. {
  12627. /* 33222222222211111111110000000000
  12628. 10987654321098765432109876543210
  12629. 010001x1xx0xxxxx110010xxxxxxxxxx
  12630. uabalb. */
  12631. return 2267;
  12632. }
  12633. else
  12634. {
  12635. /* 33222222222211111111110000000000
  12636. 10987654321098765432109876543210
  12637. 010001x1xx0xxxxx110011xxxxxxxxxx
  12638. uabalt. */
  12639. return 2268;
  12640. }
  12641. }
  12642. else
  12643. {
  12644. if (((word >> 16) & 0x1) == 0)
  12645. {
  12646. /* 33222222222211111111110000000000
  12647. 10987654321098765432109876543210
  12648. 010001x1xx0xxxx011011xxxxxxxxxxx
  12649. cadd. */
  12650. return 2070;
  12651. }
  12652. else
  12653. {
  12654. /* 33222222222211111111110000000000
  12655. 10987654321098765432109876543210
  12656. 010001x1xx0xxxx111011xxxxxxxxxxx
  12657. sqcadd. */
  12658. return 2178;
  12659. }
  12660. }
  12661. }
  12662. }
  12663. else
  12664. {
  12665. if (((word >> 22) & 0x1) == 0)
  12666. {
  12667. if (((word >> 23) & 0x1) == 0)
  12668. {
  12669. /* 33222222222211111111110000000000
  12670. 10987654321098765432109876543210
  12671. 110001x1000xxxxx110xxxxxxxxxxxxx
  12672. ldnt1w. */
  12673. return 2112;
  12674. }
  12675. else
  12676. {
  12677. /* 33222222222211111111110000000000
  12678. 10987654321098765432109876543210
  12679. 110001x1100xxxxx110xxxxxxxxxxxxx
  12680. ldnt1d. */
  12681. return 2105;
  12682. }
  12683. }
  12684. else
  12685. {
  12686. if (((word >> 23) & 0x1) == 0)
  12687. {
  12688. /* 33222222222211111111110000000000
  12689. 10987654321098765432109876543210
  12690. 110001x1010xxxxx110xxxxxxxxxxxxx
  12691. ld1w. */
  12692. return 1609;
  12693. }
  12694. else
  12695. {
  12696. /* 33222222222211111111110000000000
  12697. 10987654321098765432109876543210
  12698. 110001x1110xxxxx110xxxxxxxxxxxxx
  12699. ld1d. */
  12700. return 1531;
  12701. }
  12702. }
  12703. }
  12704. }
  12705. else
  12706. {
  12707. if (((word >> 23) & 0x1) == 0)
  12708. {
  12709. if (((word >> 22) & 0x1) == 0)
  12710. {
  12711. /* 33222222222211111111110000000000
  12712. 10987654321098765432109876543210
  12713. x10001x1001xxxxx110xxxxxxxxxxxxx
  12714. ld1w. */
  12715. return 1614;
  12716. }
  12717. else
  12718. {
  12719. /* 33222222222211111111110000000000
  12720. 10987654321098765432109876543210
  12721. x10001x1011xxxxx110xxxxxxxxxxxxx
  12722. ld1w. */
  12723. return 1610;
  12724. }
  12725. }
  12726. else
  12727. {
  12728. if (((word >> 31) & 0x1) == 0)
  12729. {
  12730. /* 33222222222211111111110000000000
  12731. 10987654321098765432109876543210
  12732. 010001x11x1xxxxx110xxxxxxxxxxxxx
  12733. histcnt. */
  12734. return 2101;
  12735. }
  12736. else
  12737. {
  12738. if (((word >> 22) & 0x1) == 0)
  12739. {
  12740. /* 33222222222211111111110000000000
  12741. 10987654321098765432109876543210
  12742. 110001x1101xxxxx110xxxxxxxxxxxxx
  12743. ld1d. */
  12744. return 1534;
  12745. }
  12746. else
  12747. {
  12748. /* 33222222222211111111110000000000
  12749. 10987654321098765432109876543210
  12750. 110001x1111xxxxx110xxxxxxxxxxxxx
  12751. ld1d. */
  12752. return 1532;
  12753. }
  12754. }
  12755. }
  12756. }
  12757. }
  12758. }
  12759. }
  12760. else
  12761. {
  12762. if (((word >> 14) & 0x1) == 0)
  12763. {
  12764. if (((word >> 15) & 0x1) == 0)
  12765. {
  12766. if (((word >> 21) & 0x1) == 0)
  12767. {
  12768. if (((word >> 31) & 0x1) == 0)
  12769. {
  12770. if (((word >> 10) & 0x1) == 0)
  12771. {
  12772. if (((word >> 11) & 0x1) == 0)
  12773. {
  12774. /* 33222222222211111111110000000000
  12775. 10987654321098765432109876543210
  12776. 010001x1xx0xxxxx001x00xxxxxxxxxx
  12777. sabdlb. */
  12778. return 2138;
  12779. }
  12780. else
  12781. {
  12782. /* 33222222222211111111110000000000
  12783. 10987654321098765432109876543210
  12784. 010001x1xx0xxxxx001x10xxxxxxxxxx
  12785. uabdlb. */
  12786. return 2269;
  12787. }
  12788. }
  12789. else
  12790. {
  12791. if (((word >> 11) & 0x1) == 0)
  12792. {
  12793. /* 33222222222211111111110000000000
  12794. 10987654321098765432109876543210
  12795. 010001x1xx0xxxxx001x01xxxxxxxxxx
  12796. sabdlt. */
  12797. return 2139;
  12798. }
  12799. else
  12800. {
  12801. /* 33222222222211111111110000000000
  12802. 10987654321098765432109876543210
  12803. 010001x1xx0xxxxx001x11xxxxxxxxxx
  12804. uabdlt. */
  12805. return 2270;
  12806. }
  12807. }
  12808. }
  12809. else
  12810. {
  12811. /* 33222222222211111111110000000000
  12812. 10987654321098765432109876543210
  12813. 110001x1xx0xxxxx001xxxxxxxxxxxxx
  12814. ldff1sw. */
  12815. return 1698;
  12816. }
  12817. }
  12818. else
  12819. {
  12820. if (((word >> 31) & 0x1) == 0)
  12821. {
  12822. if (((word >> 10) & 0x1) == 0)
  12823. {
  12824. if (((word >> 11) & 0x1) == 0)
  12825. {
  12826. if (((word >> 12) & 0x1) == 0)
  12827. {
  12828. /* 33222222222211111111110000000000
  12829. 10987654321098765432109876543210
  12830. 010001x1xx1xxxxx001000xxxxxxxxxx
  12831. sqshrnb. */
  12832. return 2229;
  12833. }
  12834. else
  12835. {
  12836. /* 33222222222211111111110000000000
  12837. 10987654321098765432109876543210
  12838. 010001x1xx1xxxxx001100xxxxxxxxxx
  12839. uqshrnb. */
  12840. return 2308;
  12841. }
  12842. }
  12843. else
  12844. {
  12845. if (((word >> 12) & 0x1) == 0)
  12846. {
  12847. /* 33222222222211111111110000000000
  12848. 10987654321098765432109876543210
  12849. 010001x1xx1xxxxx001010xxxxxxxxxx
  12850. sqrshrnb. */
  12851. return 2221;
  12852. }
  12853. else
  12854. {
  12855. /* 33222222222211111111110000000000
  12856. 10987654321098765432109876543210
  12857. 010001x1xx1xxxxx001110xxxxxxxxxx
  12858. uqrshrnb. */
  12859. return 2303;
  12860. }
  12861. }
  12862. }
  12863. else
  12864. {
  12865. if (((word >> 11) & 0x1) == 0)
  12866. {
  12867. if (((word >> 12) & 0x1) == 0)
  12868. {
  12869. /* 33222222222211111111110000000000
  12870. 10987654321098765432109876543210
  12871. 010001x1xx1xxxxx001001xxxxxxxxxx
  12872. sqshrnt. */
  12873. return 2230;
  12874. }
  12875. else
  12876. {
  12877. /* 33222222222211111111110000000000
  12878. 10987654321098765432109876543210
  12879. 010001x1xx1xxxxx001101xxxxxxxxxx
  12880. uqshrnt. */
  12881. return 2309;
  12882. }
  12883. }
  12884. else
  12885. {
  12886. if (((word >> 12) & 0x1) == 0)
  12887. {
  12888. /* 33222222222211111111110000000000
  12889. 10987654321098765432109876543210
  12890. 010001x1xx1xxxxx001011xxxxxxxxxx
  12891. sqrshrnt. */
  12892. return 2222;
  12893. }
  12894. else
  12895. {
  12896. /* 33222222222211111111110000000000
  12897. 10987654321098765432109876543210
  12898. 010001x1xx1xxxxx001111xxxxxxxxxx
  12899. uqrshrnt. */
  12900. return 2304;
  12901. }
  12902. }
  12903. }
  12904. }
  12905. else
  12906. {
  12907. /* 33222222222211111111110000000000
  12908. 10987654321098765432109876543210
  12909. 110001x1xx1xxxxx001xxxxxxxxxxxxx
  12910. ldff1sw. */
  12911. return 1699;
  12912. }
  12913. }
  12914. }
  12915. else
  12916. {
  12917. if (((word >> 21) & 0x1) == 0)
  12918. {
  12919. if (((word >> 31) & 0x1) == 0)
  12920. {
  12921. if (((word >> 10) & 0x1) == 0)
  12922. {
  12923. if (((word >> 11) & 0x1) == 0)
  12924. {
  12925. if (((word >> 12) & 0x1) == 0)
  12926. {
  12927. /* 33222222222211111111110000000000
  12928. 10987654321098765432109876543210
  12929. 010001x1xx0xxxxx101000xxxxxxxxxx
  12930. sshllb. */
  12931. return 2245;
  12932. }
  12933. else
  12934. {
  12935. /* 33222222222211111111110000000000
  12936. 10987654321098765432109876543210
  12937. 010001x1xx0xxxxx101100xxxxxxxxxx
  12938. bext. */
  12939. return 2350;
  12940. }
  12941. }
  12942. else
  12943. {
  12944. if (((word >> 12) & 0x1) == 0)
  12945. {
  12946. /* 33222222222211111111110000000000
  12947. 10987654321098765432109876543210
  12948. 010001x1xx0xxxxx101010xxxxxxxxxx
  12949. ushllb. */
  12950. return 2321;
  12951. }
  12952. else
  12953. {
  12954. /* 33222222222211111111110000000000
  12955. 10987654321098765432109876543210
  12956. 010001x1xx0xxxxx101110xxxxxxxxxx
  12957. bgrp. */
  12958. return 2351;
  12959. }
  12960. }
  12961. }
  12962. else
  12963. {
  12964. if (((word >> 11) & 0x1) == 0)
  12965. {
  12966. if (((word >> 12) & 0x1) == 0)
  12967. {
  12968. /* 33222222222211111111110000000000
  12969. 10987654321098765432109876543210
  12970. 010001x1xx0xxxxx101001xxxxxxxxxx
  12971. sshllt. */
  12972. return 2246;
  12973. }
  12974. else
  12975. {
  12976. /* 33222222222211111111110000000000
  12977. 10987654321098765432109876543210
  12978. 010001x1xx0xxxxx101101xxxxxxxxxx
  12979. bdep. */
  12980. return 2349;
  12981. }
  12982. }
  12983. else
  12984. {
  12985. /* 33222222222211111111110000000000
  12986. 10987654321098765432109876543210
  12987. 010001x1xx0xxxxx101x11xxxxxxxxxx
  12988. ushllt. */
  12989. return 2322;
  12990. }
  12991. }
  12992. }
  12993. else
  12994. {
  12995. /* 33222222222211111111110000000000
  12996. 10987654321098765432109876543210
  12997. 110001x1xx0xxxxx101xxxxxxxxxxxxx
  12998. ldff1sw. */
  12999. return 1700;
  13000. }
  13001. }
  13002. else
  13003. {
  13004. if (((word >> 22) & 0x1) == 0)
  13005. {
  13006. if (((word >> 31) & 0x1) == 0)
  13007. {
  13008. /* 33222222222211111111110000000000
  13009. 10987654321098765432109876543210
  13010. 010001x1x01xxxxx101xxxxxxxxxxxxx
  13011. histseg. */
  13012. return 2102;
  13013. }
  13014. else
  13015. {
  13016. /* 33222222222211111111110000000000
  13017. 10987654321098765432109876543210
  13018. 110001x1x01xxxxx101xxxxxxxxxxxxx
  13019. ldff1sw. */
  13020. return 1702;
  13021. }
  13022. }
  13023. else
  13024. {
  13025. /* 33222222222211111111110000000000
  13026. 10987654321098765432109876543210
  13027. x10001x1x11xxxxx101xxxxxxxxxxxxx
  13028. ldff1sw. */
  13029. return 1701;
  13030. }
  13031. }
  13032. }
  13033. }
  13034. else
  13035. {
  13036. if (((word >> 15) & 0x1) == 0)
  13037. {
  13038. if (((word >> 21) & 0x1) == 0)
  13039. {
  13040. if (((word >> 31) & 0x1) == 0)
  13041. {
  13042. if (((word >> 10) & 0x1) == 0)
  13043. {
  13044. if (((word >> 11) & 0x1) == 0)
  13045. {
  13046. if (((word >> 12) & 0x1) == 0)
  13047. {
  13048. /* 33222222222211111111110000000000
  13049. 10987654321098765432109876543210
  13050. 010001x1xx0xxxxx011000xxxxxxxxxx
  13051. sqdmullb. */
  13052. return 2199;
  13053. }
  13054. else
  13055. {
  13056. /* 33222222222211111111110000000000
  13057. 10987654321098765432109876543210
  13058. 010001x1xx0xxxxx011100xxxxxxxxxx
  13059. smullb. */
  13060. return 2171;
  13061. }
  13062. }
  13063. else
  13064. {
  13065. if (((word >> 12) & 0x1) == 0)
  13066. {
  13067. if (((word >> 22) & 0x1) == 0)
  13068. {
  13069. /* 33222222222211111111110000000000
  13070. 10987654321098765432109876543210
  13071. 010001x1x00xxxxx011010xxxxxxxxxx
  13072. pmullb. */
  13073. return 2346;
  13074. }
  13075. else
  13076. {
  13077. /* 33222222222211111111110000000000
  13078. 10987654321098765432109876543210
  13079. 010001x1x10xxxxx011010xxxxxxxxxx
  13080. pmullb. */
  13081. return 2127;
  13082. }
  13083. }
  13084. else
  13085. {
  13086. /* 33222222222211111111110000000000
  13087. 10987654321098765432109876543210
  13088. 010001x1xx0xxxxx011110xxxxxxxxxx
  13089. umullb. */
  13090. return 2296;
  13091. }
  13092. }
  13093. }
  13094. else
  13095. {
  13096. if (((word >> 11) & 0x1) == 0)
  13097. {
  13098. if (((word >> 12) & 0x1) == 0)
  13099. {
  13100. /* 33222222222211111111110000000000
  13101. 10987654321098765432109876543210
  13102. 010001x1xx0xxxxx011001xxxxxxxxxx
  13103. sqdmullt. */
  13104. return 2202;
  13105. }
  13106. else
  13107. {
  13108. /* 33222222222211111111110000000000
  13109. 10987654321098765432109876543210
  13110. 010001x1xx0xxxxx011101xxxxxxxxxx
  13111. smullt. */
  13112. return 2174;
  13113. }
  13114. }
  13115. else
  13116. {
  13117. if (((word >> 12) & 0x1) == 0)
  13118. {
  13119. if (((word >> 22) & 0x1) == 0)
  13120. {
  13121. /* 33222222222211111111110000000000
  13122. 10987654321098765432109876543210
  13123. 010001x1x00xxxxx011011xxxxxxxxxx
  13124. pmullt. */
  13125. return 2347;
  13126. }
  13127. else
  13128. {
  13129. /* 33222222222211111111110000000000
  13130. 10987654321098765432109876543210
  13131. 010001x1x10xxxxx011011xxxxxxxxxx
  13132. pmullt. */
  13133. return 2128;
  13134. }
  13135. }
  13136. else
  13137. {
  13138. /* 33222222222211111111110000000000
  13139. 10987654321098765432109876543210
  13140. 010001x1xx0xxxxx011111xxxxxxxxxx
  13141. umullt. */
  13142. return 2299;
  13143. }
  13144. }
  13145. }
  13146. }
  13147. else
  13148. {
  13149. if (((word >> 23) & 0x1) == 0)
  13150. {
  13151. /* 33222222222211111111110000000000
  13152. 10987654321098765432109876543210
  13153. 110001x10x0xxxxx011xxxxxxxxxxxxx
  13154. ldff1w. */
  13155. return 1709;
  13156. }
  13157. else
  13158. {
  13159. /* 33222222222211111111110000000000
  13160. 10987654321098765432109876543210
  13161. 110001x11x0xxxxx011xxxxxxxxxxxxx
  13162. ldff1d. */
  13163. return 1654;
  13164. }
  13165. }
  13166. }
  13167. else
  13168. {
  13169. if (((word >> 31) & 0x1) == 0)
  13170. {
  13171. if (((word >> 10) & 0x1) == 0)
  13172. {
  13173. if (((word >> 11) & 0x1) == 0)
  13174. {
  13175. if (((word >> 12) & 0x1) == 0)
  13176. {
  13177. /* 33222222222211111111110000000000
  13178. 10987654321098765432109876543210
  13179. 010001x1xx1xxxxx011000xxxxxxxxxx
  13180. addhnb. */
  13181. return 2063;
  13182. }
  13183. else
  13184. {
  13185. /* 33222222222211111111110000000000
  13186. 10987654321098765432109876543210
  13187. 010001x1xx1xxxxx011100xxxxxxxxxx
  13188. subhnb. */
  13189. return 2261;
  13190. }
  13191. }
  13192. else
  13193. {
  13194. if (((word >> 12) & 0x1) == 0)
  13195. {
  13196. /* 33222222222211111111110000000000
  13197. 10987654321098765432109876543210
  13198. 010001x1xx1xxxxx011010xxxxxxxxxx
  13199. raddhnb. */
  13200. return 2129;
  13201. }
  13202. else
  13203. {
  13204. /* 33222222222211111111110000000000
  13205. 10987654321098765432109876543210
  13206. 010001x1xx1xxxxx011110xxxxxxxxxx
  13207. rsubhnb. */
  13208. return 2133;
  13209. }
  13210. }
  13211. }
  13212. else
  13213. {
  13214. if (((word >> 11) & 0x1) == 0)
  13215. {
  13216. if (((word >> 12) & 0x1) == 0)
  13217. {
  13218. /* 33222222222211111111110000000000
  13219. 10987654321098765432109876543210
  13220. 010001x1xx1xxxxx011001xxxxxxxxxx
  13221. addhnt. */
  13222. return 2064;
  13223. }
  13224. else
  13225. {
  13226. /* 33222222222211111111110000000000
  13227. 10987654321098765432109876543210
  13228. 010001x1xx1xxxxx011101xxxxxxxxxx
  13229. subhnt. */
  13230. return 2262;
  13231. }
  13232. }
  13233. else
  13234. {
  13235. if (((word >> 12) & 0x1) == 0)
  13236. {
  13237. /* 33222222222211111111110000000000
  13238. 10987654321098765432109876543210
  13239. 010001x1xx1xxxxx011011xxxxxxxxxx
  13240. raddhnt. */
  13241. return 2130;
  13242. }
  13243. else
  13244. {
  13245. /* 33222222222211111111110000000000
  13246. 10987654321098765432109876543210
  13247. 010001x1xx1xxxxx011111xxxxxxxxxx
  13248. rsubhnt. */
  13249. return 2134;
  13250. }
  13251. }
  13252. }
  13253. }
  13254. else
  13255. {
  13256. if (((word >> 23) & 0x1) == 0)
  13257. {
  13258. /* 33222222222211111111110000000000
  13259. 10987654321098765432109876543210
  13260. 110001x10x1xxxxx011xxxxxxxxxxxxx
  13261. ldff1w. */
  13262. return 1710;
  13263. }
  13264. else
  13265. {
  13266. /* 33222222222211111111110000000000
  13267. 10987654321098765432109876543210
  13268. 110001x11x1xxxxx011xxxxxxxxxxxxx
  13269. ldff1d. */
  13270. return 1655;
  13271. }
  13272. }
  13273. }
  13274. }
  13275. else
  13276. {
  13277. if (((word >> 21) & 0x1) == 0)
  13278. {
  13279. if (((word >> 31) & 0x1) == 0)
  13280. {
  13281. if (((word >> 10) & 0x1) == 0)
  13282. {
  13283. if (((word >> 11) & 0x1) == 0)
  13284. {
  13285. if (((word >> 12) & 0x1) == 0)
  13286. {
  13287. /* 33222222222211111111110000000000
  13288. 10987654321098765432109876543210
  13289. 010001x1xx0xxxxx111000xxxxxxxxxx
  13290. ssra. */
  13291. return 2247;
  13292. }
  13293. else
  13294. {
  13295. /* 33222222222211111111110000000000
  13296. 10987654321098765432109876543210
  13297. 010001x1xx0xxxxx111100xxxxxxxxxx
  13298. sri. */
  13299. return 2240;
  13300. }
  13301. }
  13302. else
  13303. {
  13304. if (((word >> 12) & 0x1) == 0)
  13305. {
  13306. /* 33222222222211111111110000000000
  13307. 10987654321098765432109876543210
  13308. 010001x1xx0xxxxx111010xxxxxxxxxx
  13309. srsra. */
  13310. return 2244;
  13311. }
  13312. else
  13313. {
  13314. /* 33222222222211111111110000000000
  13315. 10987654321098765432109876543210
  13316. 010001x1xx0xxxxx111110xxxxxxxxxx
  13317. saba. */
  13318. return 2135;
  13319. }
  13320. }
  13321. }
  13322. else
  13323. {
  13324. if (((word >> 11) & 0x1) == 0)
  13325. {
  13326. if (((word >> 12) & 0x1) == 0)
  13327. {
  13328. /* 33222222222211111111110000000000
  13329. 10987654321098765432109876543210
  13330. 010001x1xx0xxxxx111001xxxxxxxxxx
  13331. usra. */
  13332. return 2324;
  13333. }
  13334. else
  13335. {
  13336. /* 33222222222211111111110000000000
  13337. 10987654321098765432109876543210
  13338. 010001x1xx0xxxxx111101xxxxxxxxxx
  13339. sli. */
  13340. return 2153;
  13341. }
  13342. }
  13343. else
  13344. {
  13345. if (((word >> 12) & 0x1) == 0)
  13346. {
  13347. /* 33222222222211111111110000000000
  13348. 10987654321098765432109876543210
  13349. 010001x1xx0xxxxx111011xxxxxxxxxx
  13350. ursra. */
  13351. return 2320;
  13352. }
  13353. else
  13354. {
  13355. /* 33222222222211111111110000000000
  13356. 10987654321098765432109876543210
  13357. 010001x1xx0xxxxx111111xxxxxxxxxx
  13358. uaba. */
  13359. return 2266;
  13360. }
  13361. }
  13362. }
  13363. }
  13364. else
  13365. {
  13366. if (((word >> 22) & 0x1) == 0)
  13367. {
  13368. if (((word >> 23) & 0x1) == 0)
  13369. {
  13370. /* 33222222222211111111110000000000
  13371. 10987654321098765432109876543210
  13372. 110001x1000xxxxx111xxxxxxxxxxxxx
  13373. prfw. */
  13374. return 1805;
  13375. }
  13376. else
  13377. {
  13378. /* 33222222222211111111110000000000
  13379. 10987654321098765432109876543210
  13380. 110001x1100xxxxx111xxxxxxxxxxxxx
  13381. prfd. */
  13382. return 1791;
  13383. }
  13384. }
  13385. else
  13386. {
  13387. if (((word >> 23) & 0x1) == 0)
  13388. {
  13389. /* 33222222222211111111110000000000
  13390. 10987654321098765432109876543210
  13391. 110001x1010xxxxx111xxxxxxxxxxxxx
  13392. ldff1w. */
  13393. return 1711;
  13394. }
  13395. else
  13396. {
  13397. /* 33222222222211111111110000000000
  13398. 10987654321098765432109876543210
  13399. 110001x1110xxxxx111xxxxxxxxxxxxx
  13400. ldff1d. */
  13401. return 1656;
  13402. }
  13403. }
  13404. }
  13405. }
  13406. else
  13407. {
  13408. if (((word >> 22) & 0x1) == 0)
  13409. {
  13410. if (((word >> 23) & 0x1) == 0)
  13411. {
  13412. if (((word >> 31) & 0x1) == 0)
  13413. {
  13414. if (((word >> 10) & 0x1) == 0)
  13415. {
  13416. if (((word >> 12) & 0x1) == 0)
  13417. {
  13418. if (((word >> 16) & 0x1) == 0)
  13419. {
  13420. if (((word >> 17) & 0x1) == 0)
  13421. {
  13422. /* 33222222222211111111110000000000
  13423. 10987654321098765432109876543210
  13424. 010001x1001xxx001110x0xxxxxxxxxx
  13425. aesmc. */
  13426. return 2345;
  13427. }
  13428. else
  13429. {
  13430. /* 33222222222211111111110000000000
  13431. 10987654321098765432109876543210
  13432. 010001x1001xxx101110x0xxxxxxxxxx
  13433. aese. */
  13434. return 2343;
  13435. }
  13436. }
  13437. else
  13438. {
  13439. /* 33222222222211111111110000000000
  13440. 10987654321098765432109876543210
  13441. 010001x1001xxxx11110x0xxxxxxxxxx
  13442. sm4e. */
  13443. return 2340;
  13444. }
  13445. }
  13446. else
  13447. {
  13448. /* 33222222222211111111110000000000
  13449. 10987654321098765432109876543210
  13450. 010001x1001xxxxx1111x0xxxxxxxxxx
  13451. sm4ekey. */
  13452. return 2341;
  13453. }
  13454. }
  13455. else
  13456. {
  13457. if (((word >> 12) & 0x1) == 0)
  13458. {
  13459. if (((word >> 17) & 0x1) == 0)
  13460. {
  13461. /* 33222222222211111111110000000000
  13462. 10987654321098765432109876543210
  13463. 010001x1001xxx0x1110x1xxxxxxxxxx
  13464. aesimc. */
  13465. return 2344;
  13466. }
  13467. else
  13468. {
  13469. /* 33222222222211111111110000000000
  13470. 10987654321098765432109876543210
  13471. 010001x1001xxx1x1110x1xxxxxxxxxx
  13472. aesd. */
  13473. return 2342;
  13474. }
  13475. }
  13476. else
  13477. {
  13478. /* 33222222222211111111110000000000
  13479. 10987654321098765432109876543210
  13480. 010001x1001xxxxx1111x1xxxxxxxxxx
  13481. rax1. */
  13482. return 2348;
  13483. }
  13484. }
  13485. }
  13486. else
  13487. {
  13488. /* 33222222222211111111110000000000
  13489. 10987654321098765432109876543210
  13490. 110001x1001xxxxx111xxxxxxxxxxxxx
  13491. ldff1w. */
  13492. return 1714;
  13493. }
  13494. }
  13495. else
  13496. {
  13497. /* 33222222222211111111110000000000
  13498. 10987654321098765432109876543210
  13499. x10001x1101xxxxx111xxxxxxxxxxxxx
  13500. ldff1d. */
  13501. return 1658;
  13502. }
  13503. }
  13504. else
  13505. {
  13506. if (((word >> 23) & 0x1) == 0)
  13507. {
  13508. /* 33222222222211111111110000000000
  13509. 10987654321098765432109876543210
  13510. x10001x1011xxxxx111xxxxxxxxxxxxx
  13511. ldff1w. */
  13512. return 1712;
  13513. }
  13514. else
  13515. {
  13516. /* 33222222222211111111110000000000
  13517. 10987654321098765432109876543210
  13518. x10001x1111xxxxx111xxxxxxxxxxxxx
  13519. ldff1d. */
  13520. return 1657;
  13521. }
  13522. }
  13523. }
  13524. }
  13525. }
  13526. }
  13527. }
  13528. }
  13529. else
  13530. {
  13531. if (((word >> 15) & 0x1) == 0)
  13532. {
  13533. if (((word >> 14) & 0x1) == 0)
  13534. {
  13535. if (((word >> 13) & 0x1) == 0)
  13536. {
  13537. if (((word >> 30) & 0x1) == 0)
  13538. {
  13539. if (((word >> 21) & 0x1) == 0)
  13540. {
  13541. if (((word >> 31) & 0x1) == 0)
  13542. {
  13543. if (((word >> 4) & 0x1) == 0)
  13544. {
  13545. /* 33222222222211111111110000000000
  13546. 10987654321098765432109876543210
  13547. 001001x1xx0xxxxx000xxxxxxxx0xxxx
  13548. cmpge. */
  13549. return 1337;
  13550. }
  13551. else
  13552. {
  13553. /* 33222222222211111111110000000000
  13554. 10987654321098765432109876543210
  13555. 001001x1xx0xxxxx000xxxxxxxx1xxxx
  13556. cmpgt. */
  13557. return 1340;
  13558. }
  13559. }
  13560. else
  13561. {
  13562. if (((word >> 23) & 0x1) == 0)
  13563. {
  13564. /* 33222222222211111111110000000000
  13565. 10987654321098765432109876543210
  13566. 101001x10x0xxxxx000xxxxxxxxxxxxx
  13567. ld1rqw. */
  13568. return 1564;
  13569. }
  13570. else
  13571. {
  13572. /* 33222222222211111111110000000000
  13573. 10987654321098765432109876543210
  13574. 101001x11x0xxxxx000xxxxxxxxxxxxx
  13575. ld1rqd. */
  13576. return 1560;
  13577. }
  13578. }
  13579. }
  13580. else
  13581. {
  13582. if (((word >> 31) & 0x1) == 0)
  13583. {
  13584. if (((word >> 4) & 0x1) == 0)
  13585. {
  13586. if (((word >> 10) & 0x1) == 0)
  13587. {
  13588. if (((word >> 11) & 0x1) == 0)
  13589. {
  13590. if (((word >> 12) & 0x1) == 0)
  13591. {
  13592. /* 33222222222211111111110000000000
  13593. 10987654321098765432109876543210
  13594. 001001x1xx1xxxxx000000xxxxx0xxxx
  13595. whilege. */
  13596. return 2329;
  13597. }
  13598. else
  13599. {
  13600. /* 33222222222211111111110000000000
  13601. 10987654321098765432109876543210
  13602. 001001x1xx1xxxxx000100xxxxx0xxxx
  13603. whilege. */
  13604. return 2330;
  13605. }
  13606. }
  13607. else
  13608. {
  13609. if (((word >> 12) & 0x1) == 0)
  13610. {
  13611. /* 33222222222211111111110000000000
  13612. 10987654321098765432109876543210
  13613. 001001x1xx1xxxxx000010xxxxx0xxxx
  13614. whilehs. */
  13615. return 2335;
  13616. }
  13617. else
  13618. {
  13619. /* 33222222222211111111110000000000
  13620. 10987654321098765432109876543210
  13621. 001001x1xx1xxxxx000110xxxxx0xxxx
  13622. whilehs. */
  13623. return 2336;
  13624. }
  13625. }
  13626. }
  13627. else
  13628. {
  13629. if (((word >> 11) & 0x1) == 0)
  13630. {
  13631. if (((word >> 12) & 0x1) == 0)
  13632. {
  13633. /* 33222222222211111111110000000000
  13634. 10987654321098765432109876543210
  13635. 001001x1xx1xxxxx000001xxxxx0xxxx
  13636. whilelt. */
  13637. return 2041;
  13638. }
  13639. else
  13640. {
  13641. /* 33222222222211111111110000000000
  13642. 10987654321098765432109876543210
  13643. 001001x1xx1xxxxx000101xxxxx0xxxx
  13644. whilelt. */
  13645. return 2042;
  13646. }
  13647. }
  13648. else
  13649. {
  13650. if (((word >> 12) & 0x1) == 0)
  13651. {
  13652. /* 33222222222211111111110000000000
  13653. 10987654321098765432109876543210
  13654. 001001x1xx1xxxxx000011xxxxx0xxxx
  13655. whilelo. */
  13656. return 2037;
  13657. }
  13658. else
  13659. {
  13660. /* 33222222222211111111110000000000
  13661. 10987654321098765432109876543210
  13662. 001001x1xx1xxxxx000111xxxxx0xxxx
  13663. whilelo. */
  13664. return 2038;
  13665. }
  13666. }
  13667. }
  13668. }
  13669. else
  13670. {
  13671. if (((word >> 10) & 0x1) == 0)
  13672. {
  13673. if (((word >> 11) & 0x1) == 0)
  13674. {
  13675. if (((word >> 12) & 0x1) == 0)
  13676. {
  13677. /* 33222222222211111111110000000000
  13678. 10987654321098765432109876543210
  13679. 001001x1xx1xxxxx000000xxxxx1xxxx
  13680. whilegt. */
  13681. return 2331;
  13682. }
  13683. else
  13684. {
  13685. /* 33222222222211111111110000000000
  13686. 10987654321098765432109876543210
  13687. 001001x1xx1xxxxx000100xxxxx1xxxx
  13688. whilegt. */
  13689. return 2332;
  13690. }
  13691. }
  13692. else
  13693. {
  13694. if (((word >> 12) & 0x1) == 0)
  13695. {
  13696. /* 33222222222211111111110000000000
  13697. 10987654321098765432109876543210
  13698. 001001x1xx1xxxxx000010xxxxx1xxxx
  13699. whilehi. */
  13700. return 2333;
  13701. }
  13702. else
  13703. {
  13704. /* 33222222222211111111110000000000
  13705. 10987654321098765432109876543210
  13706. 001001x1xx1xxxxx000110xxxxx1xxxx
  13707. whilehi. */
  13708. return 2334;
  13709. }
  13710. }
  13711. }
  13712. else
  13713. {
  13714. if (((word >> 11) & 0x1) == 0)
  13715. {
  13716. if (((word >> 12) & 0x1) == 0)
  13717. {
  13718. /* 33222222222211111111110000000000
  13719. 10987654321098765432109876543210
  13720. 001001x1xx1xxxxx000001xxxxx1xxxx
  13721. whilele. */
  13722. return 2035;
  13723. }
  13724. else
  13725. {
  13726. /* 33222222222211111111110000000000
  13727. 10987654321098765432109876543210
  13728. 001001x1xx1xxxxx000101xxxxx1xxxx
  13729. whilele. */
  13730. return 2036;
  13731. }
  13732. }
  13733. else
  13734. {
  13735. if (((word >> 12) & 0x1) == 0)
  13736. {
  13737. /* 33222222222211111111110000000000
  13738. 10987654321098765432109876543210
  13739. 001001x1xx1xxxxx000011xxxxx1xxxx
  13740. whilels. */
  13741. return 2039;
  13742. }
  13743. else
  13744. {
  13745. /* 33222222222211111111110000000000
  13746. 10987654321098765432109876543210
  13747. 001001x1xx1xxxxx000111xxxxx1xxxx
  13748. whilels. */
  13749. return 2040;
  13750. }
  13751. }
  13752. }
  13753. }
  13754. }
  13755. else
  13756. {
  13757. if (((word >> 23) & 0x1) == 0)
  13758. {
  13759. /* 33222222222211111111110000000000
  13760. 10987654321098765432109876543210
  13761. 101001x10x1xxxxx000xxxxxxxxxxxxx
  13762. ld1row. */
  13763. return 2477;
  13764. }
  13765. else
  13766. {
  13767. /* 33222222222211111111110000000000
  13768. 10987654321098765432109876543210
  13769. 101001x11x1xxxxx000xxxxxxxxxxxxx
  13770. ld1rod. */
  13771. return 2478;
  13772. }
  13773. }
  13774. }
  13775. }
  13776. else
  13777. {
  13778. if (((word >> 31) & 0x1) == 0)
  13779. {
  13780. if (((word >> 21) & 0x1) == 0)
  13781. {
  13782. if (((word >> 10) & 0x1) == 0)
  13783. {
  13784. if (((word >> 11) & 0x1) == 0)
  13785. {
  13786. /* 33222222222211111111110000000000
  13787. 10987654321098765432109876543210
  13788. 011001x1xx0xxxxx000x00xxxxxxxxxx
  13789. fadd. */
  13790. return 1395;
  13791. }
  13792. else
  13793. {
  13794. if (((word >> 12) & 0x1) == 0)
  13795. {
  13796. /* 33222222222211111111110000000000
  13797. 10987654321098765432109876543210
  13798. 011001x1xx0xxxxx000010xxxxxxxxxx
  13799. fmul. */
  13800. return 1462;
  13801. }
  13802. else
  13803. {
  13804. /* 33222222222211111111110000000000
  13805. 10987654321098765432109876543210
  13806. 011001x1xx0xxxxx000110xxxxxxxxxx
  13807. frecps. */
  13808. return 1475;
  13809. }
  13810. }
  13811. }
  13812. else
  13813. {
  13814. if (((word >> 11) & 0x1) == 0)
  13815. {
  13816. /* 33222222222211111111110000000000
  13817. 10987654321098765432109876543210
  13818. 011001x1xx0xxxxx000x01xxxxxxxxxx
  13819. fsub. */
  13820. return 1488;
  13821. }
  13822. else
  13823. {
  13824. if (((word >> 12) & 0x1) == 0)
  13825. {
  13826. /* 33222222222211111111110000000000
  13827. 10987654321098765432109876543210
  13828. 011001x1xx0xxxxx000011xxxxxxxxxx
  13829. ftsmul. */
  13830. return 1494;
  13831. }
  13832. else
  13833. {
  13834. /* 33222222222211111111110000000000
  13835. 10987654321098765432109876543210
  13836. 011001x1xx0xxxxx000111xxxxxxxxxx
  13837. frsqrts. */
  13838. return 1485;
  13839. }
  13840. }
  13841. }
  13842. }
  13843. else
  13844. {
  13845. /* 33222222222211111111110000000000
  13846. 10987654321098765432109876543210
  13847. 011001x1xx1xxxxx000xxxxxxxxxxxxx
  13848. fmla. */
  13849. return 1453;
  13850. }
  13851. }
  13852. else
  13853. {
  13854. /* 33222222222211111111110000000000
  13855. 10987654321098765432109876543210
  13856. 111001x1xxxxxxxx000xxxxxxxxxxxxx
  13857. str. */
  13858. return 1956;
  13859. }
  13860. }
  13861. }
  13862. else
  13863. {
  13864. if (((word >> 21) & 0x1) == 0)
  13865. {
  13866. if (((word >> 30) & 0x1) == 0)
  13867. {
  13868. if (((word >> 31) & 0x1) == 0)
  13869. {
  13870. if (((word >> 4) & 0x1) == 0)
  13871. {
  13872. /* 33222222222211111111110000000000
  13873. 10987654321098765432109876543210
  13874. 001001x1xx0xxxxx001xxxxxxxx0xxxx
  13875. cmplt. */
  13876. return 1354;
  13877. }
  13878. else
  13879. {
  13880. /* 33222222222211111111110000000000
  13881. 10987654321098765432109876543210
  13882. 001001x1xx0xxxxx001xxxxxxxx1xxxx
  13883. cmple. */
  13884. return 1348;
  13885. }
  13886. }
  13887. else
  13888. {
  13889. if (((word >> 23) & 0x1) == 0)
  13890. {
  13891. /* 33222222222211111111110000000000
  13892. 10987654321098765432109876543210
  13893. 101001x10x0xxxxx001xxxxxxxxxxxxx
  13894. ld1rqw. */
  13895. return 1563;
  13896. }
  13897. else
  13898. {
  13899. /* 33222222222211111111110000000000
  13900. 10987654321098765432109876543210
  13901. 101001x11x0xxxxx001xxxxxxxxxxxxx
  13902. ld1rqd. */
  13903. return 1559;
  13904. }
  13905. }
  13906. }
  13907. else
  13908. {
  13909. if (((word >> 31) & 0x1) == 0)
  13910. {
  13911. if (((word >> 16) & 0x1) == 0)
  13912. {
  13913. if (((word >> 17) & 0x1) == 0)
  13914. {
  13915. if (((word >> 18) & 0x1) == 0)
  13916. {
  13917. if (((word >> 19) & 0x1) == 0)
  13918. {
  13919. if (((word >> 20) & 0x1) == 0)
  13920. {
  13921. /* 33222222222211111111110000000000
  13922. 10987654321098765432109876543210
  13923. 011001x1xx000000001xxxxxxxxxxxxx
  13924. faddv. */
  13925. return 1399;
  13926. }
  13927. else
  13928. {
  13929. if (((word >> 4) & 0x1) == 0)
  13930. {
  13931. /* 33222222222211111111110000000000
  13932. 10987654321098765432109876543210
  13933. 011001x1xx010000001xxxxxxxx0xxxx
  13934. fcmge. */
  13935. return 1406;
  13936. }
  13937. else
  13938. {
  13939. /* 33222222222211111111110000000000
  13940. 10987654321098765432109876543210
  13941. 011001x1xx010000001xxxxxxxx1xxxx
  13942. fcmgt. */
  13943. return 1408;
  13944. }
  13945. }
  13946. }
  13947. else
  13948. {
  13949. /* 33222222222211111111110000000000
  13950. 10987654321098765432109876543210
  13951. 011001x1xx0x1000001xxxxxxxxxxxxx
  13952. fadda. */
  13953. return 1398;
  13954. }
  13955. }
  13956. else
  13957. {
  13958. /* 33222222222211111111110000000000
  13959. 10987654321098765432109876543210
  13960. 011001x1xx0xx100001xxxxxxxxxxxxx
  13961. fmaxnmv. */
  13962. return 1445;
  13963. }
  13964. }
  13965. else
  13966. {
  13967. if (((word >> 18) & 0x1) == 0)
  13968. {
  13969. /* 33222222222211111111110000000000
  13970. 10987654321098765432109876543210
  13971. 011001x1xx0xx010001xxxxxxxxxxxxx
  13972. fcmeq. */
  13973. return 1404;
  13974. }
  13975. else
  13976. {
  13977. if (((word >> 19) & 0x1) == 0)
  13978. {
  13979. /* 33222222222211111111110000000000
  13980. 10987654321098765432109876543210
  13981. 011001x1xx0x0110001xxxxxxxxxxxxx
  13982. fmaxv. */
  13983. return 1446;
  13984. }
  13985. else
  13986. {
  13987. /* 33222222222211111111110000000000
  13988. 10987654321098765432109876543210
  13989. 011001x1xx0x1110001xxxxxxxxxxxxx
  13990. frecpe. */
  13991. return 1474;
  13992. }
  13993. }
  13994. }
  13995. }
  13996. else
  13997. {
  13998. if (((word >> 17) & 0x1) == 0)
  13999. {
  14000. if (((word >> 18) & 0x1) == 0)
  14001. {
  14002. if (((word >> 4) & 0x1) == 0)
  14003. {
  14004. /* 33222222222211111111110000000000
  14005. 10987654321098765432109876543210
  14006. 011001x1xx0xx001001xxxxxxxx0xxxx
  14007. fcmlt. */
  14008. return 1411;
  14009. }
  14010. else
  14011. {
  14012. /* 33222222222211111111110000000000
  14013. 10987654321098765432109876543210
  14014. 011001x1xx0xx001001xxxxxxxx1xxxx
  14015. fcmle. */
  14016. return 1410;
  14017. }
  14018. }
  14019. else
  14020. {
  14021. /* 33222222222211111111110000000000
  14022. 10987654321098765432109876543210
  14023. 011001x1xx0xx101001xxxxxxxxxxxxx
  14024. fminnmv. */
  14025. return 1451;
  14026. }
  14027. }
  14028. else
  14029. {
  14030. if (((word >> 18) & 0x1) == 0)
  14031. {
  14032. /* 33222222222211111111110000000000
  14033. 10987654321098765432109876543210
  14034. 011001x1xx0xx011001xxxxxxxxxxxxx
  14035. fcmne. */
  14036. return 1412;
  14037. }
  14038. else
  14039. {
  14040. if (((word >> 19) & 0x1) == 0)
  14041. {
  14042. /* 33222222222211111111110000000000
  14043. 10987654321098765432109876543210
  14044. 011001x1xx0x0111001xxxxxxxxxxxxx
  14045. fminv. */
  14046. return 1452;
  14047. }
  14048. else
  14049. {
  14050. /* 33222222222211111111110000000000
  14051. 10987654321098765432109876543210
  14052. 011001x1xx0x1111001xxxxxxxxxxxxx
  14053. frsqrte. */
  14054. return 1484;
  14055. }
  14056. }
  14057. }
  14058. }
  14059. }
  14060. else
  14061. {
  14062. if (((word >> 22) & 0x1) == 0)
  14063. {
  14064. if (((word >> 23) & 0x1) == 0)
  14065. {
  14066. /* 33222222222211111111110000000000
  14067. 10987654321098765432109876543210
  14068. 111001x1000xxxxx001xxxxxxxxxxxxx
  14069. stnt1w. */
  14070. return 2260;
  14071. }
  14072. else
  14073. {
  14074. /* 33222222222211111111110000000000
  14075. 10987654321098765432109876543210
  14076. 111001x1100xxxxx001xxxxxxxxxxxxx
  14077. stnt1d. */
  14078. return 2256;
  14079. }
  14080. }
  14081. else
  14082. {
  14083. /* 33222222222211111111110000000000
  14084. 10987654321098765432109876543210
  14085. 111001x1x10xxxxx001xxxxxxxxxxxxx
  14086. stnt1w. */
  14087. return 2259;
  14088. }
  14089. }
  14090. }
  14091. }
  14092. else
  14093. {
  14094. if (((word >> 30) & 0x1) == 0)
  14095. {
  14096. if (((word >> 31) & 0x1) == 0)
  14097. {
  14098. if (((word >> 4) & 0x1) == 0)
  14099. {
  14100. if (((word >> 12) & 0x1) == 0)
  14101. {
  14102. /* 33222222222211111111110000000000
  14103. 10987654321098765432109876543210
  14104. 001001x1xx1xxxxx0010xxxxxxx0xxxx
  14105. ctermeq. */
  14106. return 1369;
  14107. }
  14108. else
  14109. {
  14110. /* 33222222222211111111110000000000
  14111. 10987654321098765432109876543210
  14112. 001001x1xx1xxxxx0011xxxxxxx0xxxx
  14113. whilewr. */
  14114. return 2338;
  14115. }
  14116. }
  14117. else
  14118. {
  14119. if (((word >> 12) & 0x1) == 0)
  14120. {
  14121. /* 33222222222211111111110000000000
  14122. 10987654321098765432109876543210
  14123. 001001x1xx1xxxxx0010xxxxxxx1xxxx
  14124. ctermne. */
  14125. return 1370;
  14126. }
  14127. else
  14128. {
  14129. /* 33222222222211111111110000000000
  14130. 10987654321098765432109876543210
  14131. 001001x1xx1xxxxx0011xxxxxxx1xxxx
  14132. whilerw. */
  14133. return 2337;
  14134. }
  14135. }
  14136. }
  14137. else
  14138. {
  14139. if (((word >> 23) & 0x1) == 0)
  14140. {
  14141. /* 33222222222211111111110000000000
  14142. 10987654321098765432109876543210
  14143. 101001x10x1xxxxx001xxxxxxxxxxxxx
  14144. ld1row. */
  14145. return 2481;
  14146. }
  14147. else
  14148. {
  14149. /* 33222222222211111111110000000000
  14150. 10987654321098765432109876543210
  14151. 101001x11x1xxxxx001xxxxxxxxxxxxx
  14152. ld1rod. */
  14153. return 2482;
  14154. }
  14155. }
  14156. }
  14157. else
  14158. {
  14159. /* 33222222222211111111110000000000
  14160. 10987654321098765432109876543210
  14161. x11001x1xx1xxxxx001xxxxxxxxxxxxx
  14162. fmls. */
  14163. return 1457;
  14164. }
  14165. }
  14166. }
  14167. }
  14168. else
  14169. {
  14170. if (((word >> 30) & 0x1) == 0)
  14171. {
  14172. if (((word >> 21) & 0x1) == 0)
  14173. {
  14174. if (((word >> 22) & 0x1) == 0)
  14175. {
  14176. if (((word >> 23) & 0x1) == 0)
  14177. {
  14178. if (((word >> 31) & 0x1) == 0)
  14179. {
  14180. if (((word >> 9) & 0x1) == 0)
  14181. {
  14182. if (((word >> 20) & 0x1) == 0)
  14183. {
  14184. if (((word >> 4) & 0x1) == 0)
  14185. {
  14186. /* 33222222222211111111110000000000
  14187. 10987654321098765432109876543210
  14188. 001001x10000xxxx01xxxx0xxxx0xxxx
  14189. and. */
  14190. return 1300;
  14191. }
  14192. else
  14193. {
  14194. /* 33222222222211111111110000000000
  14195. 10987654321098765432109876543210
  14196. 001001x10000xxxx01xxxx0xxxx1xxxx
  14197. bic. */
  14198. return 1312;
  14199. }
  14200. }
  14201. else
  14202. {
  14203. if (((word >> 19) & 0x1) == 0)
  14204. {
  14205. /* 33222222222211111111110000000000
  14206. 10987654321098765432109876543210
  14207. 001001x100010xxx01xxxx0xxxxxxxxx
  14208. brka. */
  14209. return 1314;
  14210. }
  14211. else
  14212. {
  14213. /* 33222222222211111111110000000000
  14214. 10987654321098765432109876543210
  14215. 001001x100011xxx01xxxx0xxxxxxxxx
  14216. brkn. */
  14217. return 1318;
  14218. }
  14219. }
  14220. }
  14221. else
  14222. {
  14223. if (((word >> 4) & 0x1) == 0)
  14224. {
  14225. /* 33222222222211111111110000000000
  14226. 10987654321098765432109876543210
  14227. 001001x1000xxxxx01xxxx1xxxx0xxxx
  14228. eor. */
  14229. return 1387;
  14230. }
  14231. else
  14232. {
  14233. /* 33222222222211111111110000000000
  14234. 10987654321098765432109876543210
  14235. 001001x1000xxxxx01xxxx1xxxx1xxxx
  14236. sel. */
  14237. return 1836;
  14238. }
  14239. }
  14240. }
  14241. else
  14242. {
  14243. if (((word >> 13) & 0x1) == 0)
  14244. {
  14245. /* 33222222222211111111110000000000
  14246. 10987654321098765432109876543210
  14247. 101001x1000xxxxx010xxxxxxxxxxxxx
  14248. ld1sh. */
  14249. return 1586;
  14250. }
  14251. else
  14252. {
  14253. /* 33222222222211111111110000000000
  14254. 10987654321098765432109876543210
  14255. 101001x1000xxxxx011xxxxxxxxxxxxx
  14256. ldff1sh. */
  14257. return 1686;
  14258. }
  14259. }
  14260. }
  14261. else
  14262. {
  14263. if (((word >> 31) & 0x1) == 0)
  14264. {
  14265. if (((word >> 9) & 0x1) == 0)
  14266. {
  14267. if (((word >> 20) & 0x1) == 0)
  14268. {
  14269. if (((word >> 4) & 0x1) == 0)
  14270. {
  14271. /* 33222222222211111111110000000000
  14272. 10987654321098765432109876543210
  14273. 001001x11000xxxx01xxxx0xxxx0xxxx
  14274. orr. */
  14275. return 1772;
  14276. }
  14277. else
  14278. {
  14279. /* 33222222222211111111110000000000
  14280. 10987654321098765432109876543210
  14281. 001001x11000xxxx01xxxx0xxxx1xxxx
  14282. orn. */
  14283. return 1767;
  14284. }
  14285. }
  14286. else
  14287. {
  14288. /* 33222222222211111111110000000000
  14289. 10987654321098765432109876543210
  14290. 001001x11001xxxx01xxxx0xxxxxxxxx
  14291. brkb. */
  14292. return 1316;
  14293. }
  14294. }
  14295. else
  14296. {
  14297. if (((word >> 4) & 0x1) == 0)
  14298. {
  14299. /* 33222222222211111111110000000000
  14300. 10987654321098765432109876543210
  14301. 001001x1100xxxxx01xxxx1xxxx0xxxx
  14302. nor. */
  14303. return 1764;
  14304. }
  14305. else
  14306. {
  14307. /* 33222222222211111111110000000000
  14308. 10987654321098765432109876543210
  14309. 001001x1100xxxxx01xxxx1xxxx1xxxx
  14310. nand. */
  14311. return 1761;
  14312. }
  14313. }
  14314. }
  14315. else
  14316. {
  14317. if (((word >> 13) & 0x1) == 0)
  14318. {
  14319. /* 33222222222211111111110000000000
  14320. 10987654321098765432109876543210
  14321. 101001x1100xxxxx010xxxxxxxxxxxxx
  14322. ld1sb. */
  14323. return 1574;
  14324. }
  14325. else
  14326. {
  14327. /* 33222222222211111111110000000000
  14328. 10987654321098765432109876543210
  14329. 101001x1100xxxxx011xxxxxxxxxxxxx
  14330. ldff1sb. */
  14331. return 1674;
  14332. }
  14333. }
  14334. }
  14335. }
  14336. else
  14337. {
  14338. if (((word >> 23) & 0x1) == 0)
  14339. {
  14340. if (((word >> 31) & 0x1) == 0)
  14341. {
  14342. if (((word >> 4) & 0x1) == 0)
  14343. {
  14344. if (((word >> 9) & 0x1) == 0)
  14345. {
  14346. if (((word >> 20) & 0x1) == 0)
  14347. {
  14348. /* 33222222222211111111110000000000
  14349. 10987654321098765432109876543210
  14350. 001001x10100xxxx01xxxx0xxxx0xxxx
  14351. ands. */
  14352. return 1301;
  14353. }
  14354. else
  14355. {
  14356. if (((word >> 19) & 0x1) == 0)
  14357. {
  14358. /* 33222222222211111111110000000000
  14359. 10987654321098765432109876543210
  14360. 001001x101010xxx01xxxx0xxxx0xxxx
  14361. brkas. */
  14362. return 1315;
  14363. }
  14364. else
  14365. {
  14366. /* 33222222222211111111110000000000
  14367. 10987654321098765432109876543210
  14368. 001001x101011xxx01xxxx0xxxx0xxxx
  14369. brkns. */
  14370. return 1319;
  14371. }
  14372. }
  14373. }
  14374. else
  14375. {
  14376. /* 33222222222211111111110000000000
  14377. 10987654321098765432109876543210
  14378. 001001x1010xxxxx01xxxx1xxxx0xxxx
  14379. eors. */
  14380. return 1388;
  14381. }
  14382. }
  14383. else
  14384. {
  14385. /* 33222222222211111111110000000000
  14386. 10987654321098765432109876543210
  14387. 001001x1010xxxxx01xxxxxxxxx1xxxx
  14388. bics. */
  14389. return 1313;
  14390. }
  14391. }
  14392. else
  14393. {
  14394. if (((word >> 13) & 0x1) == 0)
  14395. {
  14396. /* 33222222222211111111110000000000
  14397. 10987654321098765432109876543210
  14398. 101001x1010xxxxx010xxxxxxxxxxxxx
  14399. ld1w. */
  14400. return 1605;
  14401. }
  14402. else
  14403. {
  14404. /* 33222222222211111111110000000000
  14405. 10987654321098765432109876543210
  14406. 101001x1010xxxxx011xxxxxxxxxxxxx
  14407. ldff1w. */
  14408. return 1705;
  14409. }
  14410. }
  14411. }
  14412. else
  14413. {
  14414. if (((word >> 31) & 0x1) == 0)
  14415. {
  14416. if (((word >> 4) & 0x1) == 0)
  14417. {
  14418. if (((word >> 9) & 0x1) == 0)
  14419. {
  14420. if (((word >> 20) & 0x1) == 0)
  14421. {
  14422. /* 33222222222211111111110000000000
  14423. 10987654321098765432109876543210
  14424. 001001x11100xxxx01xxxx0xxxx0xxxx
  14425. orrs. */
  14426. return 1773;
  14427. }
  14428. else
  14429. {
  14430. /* 33222222222211111111110000000000
  14431. 10987654321098765432109876543210
  14432. 001001x11101xxxx01xxxx0xxxx0xxxx
  14433. brkbs. */
  14434. return 1317;
  14435. }
  14436. }
  14437. else
  14438. {
  14439. /* 33222222222211111111110000000000
  14440. 10987654321098765432109876543210
  14441. 001001x1110xxxxx01xxxx1xxxx0xxxx
  14442. nors. */
  14443. return 1765;
  14444. }
  14445. }
  14446. else
  14447. {
  14448. if (((word >> 9) & 0x1) == 0)
  14449. {
  14450. /* 33222222222211111111110000000000
  14451. 10987654321098765432109876543210
  14452. 001001x1110xxxxx01xxxx0xxxx1xxxx
  14453. orns. */
  14454. return 1768;
  14455. }
  14456. else
  14457. {
  14458. /* 33222222222211111111110000000000
  14459. 10987654321098765432109876543210
  14460. 001001x1110xxxxx01xxxx1xxxx1xxxx
  14461. nands. */
  14462. return 1762;
  14463. }
  14464. }
  14465. }
  14466. else
  14467. {
  14468. if (((word >> 13) & 0x1) == 0)
  14469. {
  14470. /* 33222222222211111111110000000000
  14471. 10987654321098765432109876543210
  14472. 101001x1110xxxxx010xxxxxxxxxxxxx
  14473. ld1sb. */
  14474. return 1576;
  14475. }
  14476. else
  14477. {
  14478. /* 33222222222211111111110000000000
  14479. 10987654321098765432109876543210
  14480. 101001x1110xxxxx011xxxxxxxxxxxxx
  14481. ldff1sb. */
  14482. return 1678;
  14483. }
  14484. }
  14485. }
  14486. }
  14487. }
  14488. else
  14489. {
  14490. if (((word >> 31) & 0x1) == 0)
  14491. {
  14492. /* 33222222222211111111110000000000
  14493. 10987654321098765432109876543210
  14494. 001001x1xx1xxxxx01xxxxxxxxxxxxxx
  14495. psel. */
  14496. return 2413;
  14497. }
  14498. else
  14499. {
  14500. if (((word >> 13) & 0x1) == 0)
  14501. {
  14502. if (((word >> 22) & 0x1) == 0)
  14503. {
  14504. if (((word >> 23) & 0x1) == 0)
  14505. {
  14506. /* 33222222222211111111110000000000
  14507. 10987654321098765432109876543210
  14508. 101001x1001xxxxx010xxxxxxxxxxxxx
  14509. ld1sh. */
  14510. return 1587;
  14511. }
  14512. else
  14513. {
  14514. /* 33222222222211111111110000000000
  14515. 10987654321098765432109876543210
  14516. 101001x1101xxxxx010xxxxxxxxxxxxx
  14517. ld1sb. */
  14518. return 1575;
  14519. }
  14520. }
  14521. else
  14522. {
  14523. if (((word >> 23) & 0x1) == 0)
  14524. {
  14525. /* 33222222222211111111110000000000
  14526. 10987654321098765432109876543210
  14527. 101001x1011xxxxx010xxxxxxxxxxxxx
  14528. ld1w. */
  14529. return 1606;
  14530. }
  14531. else
  14532. {
  14533. /* 33222222222211111111110000000000
  14534. 10987654321098765432109876543210
  14535. 101001x1111xxxxx010xxxxxxxxxxxxx
  14536. ld1d. */
  14537. return 1528;
  14538. }
  14539. }
  14540. }
  14541. else
  14542. {
  14543. if (((word >> 22) & 0x1) == 0)
  14544. {
  14545. if (((word >> 23) & 0x1) == 0)
  14546. {
  14547. /* 33222222222211111111110000000000
  14548. 10987654321098765432109876543210
  14549. 101001x1001xxxxx011xxxxxxxxxxxxx
  14550. ldff1sh. */
  14551. return 1688;
  14552. }
  14553. else
  14554. {
  14555. /* 33222222222211111111110000000000
  14556. 10987654321098765432109876543210
  14557. 101001x1101xxxxx011xxxxxxxxxxxxx
  14558. ldff1sb. */
  14559. return 1676;
  14560. }
  14561. }
  14562. else
  14563. {
  14564. if (((word >> 23) & 0x1) == 0)
  14565. {
  14566. /* 33222222222211111111110000000000
  14567. 10987654321098765432109876543210
  14568. 101001x1011xxxxx011xxxxxxxxxxxxx
  14569. ldff1w. */
  14570. return 1707;
  14571. }
  14572. else
  14573. {
  14574. /* 33222222222211111111110000000000
  14575. 10987654321098765432109876543210
  14576. 101001x1111xxxxx011xxxxxxxxxxxxx
  14577. ldff1d. */
  14578. return 1652;
  14579. }
  14580. }
  14581. }
  14582. }
  14583. }
  14584. }
  14585. else
  14586. {
  14587. if (((word >> 13) & 0x1) == 0)
  14588. {
  14589. if (((word >> 31) & 0x1) == 0)
  14590. {
  14591. if (((word >> 21) & 0x1) == 0)
  14592. {
  14593. if (((word >> 4) & 0x1) == 0)
  14594. {
  14595. /* 33222222222211111111110000000000
  14596. 10987654321098765432109876543210
  14597. 011001x1xx0xxxxx010xxxxxxxx0xxxx
  14598. fcmge. */
  14599. return 1407;
  14600. }
  14601. else
  14602. {
  14603. /* 33222222222211111111110000000000
  14604. 10987654321098765432109876543210
  14605. 011001x1xx0xxxxx010xxxxxxxx1xxxx
  14606. fcmgt. */
  14607. return 1409;
  14608. }
  14609. }
  14610. else
  14611. {
  14612. /* 33222222222211111111110000000000
  14613. 10987654321098765432109876543210
  14614. 011001x1xx1xxxxx010xxxxxxxxxxxxx
  14615. fnmla. */
  14616. return 1471;
  14617. }
  14618. }
  14619. else
  14620. {
  14621. if (((word >> 22) & 0x1) == 0)
  14622. {
  14623. /* 33222222222211111111110000000000
  14624. 10987654321098765432109876543210
  14625. 111001x1x0xxxxxx010xxxxxxxxxxxxx
  14626. str. */
  14627. return 1957;
  14628. }
  14629. else
  14630. {
  14631. if (((word >> 21) & 0x1) == 0)
  14632. {
  14633. /* 33222222222211111111110000000000
  14634. 10987654321098765432109876543210
  14635. 111001x1x10xxxxx010xxxxxxxxxxxxx
  14636. st1w. */
  14637. return 1916;
  14638. }
  14639. else
  14640. {
  14641. if (((word >> 23) & 0x1) == 0)
  14642. {
  14643. /* 33222222222211111111110000000000
  14644. 10987654321098765432109876543210
  14645. 111001x1011xxxxx010xxxxxxxxxxxxx
  14646. st1w. */
  14647. return 1918;
  14648. }
  14649. else
  14650. {
  14651. /* 33222222222211111111110000000000
  14652. 10987654321098765432109876543210
  14653. 111001x1111xxxxx010xxxxxxxxxxxxx
  14654. st1d. */
  14655. return 1895;
  14656. }
  14657. }
  14658. }
  14659. }
  14660. }
  14661. else
  14662. {
  14663. if (((word >> 21) & 0x1) == 0)
  14664. {
  14665. if (((word >> 31) & 0x1) == 0)
  14666. {
  14667. if (((word >> 4) & 0x1) == 0)
  14668. {
  14669. /* 33222222222211111111110000000000
  14670. 10987654321098765432109876543210
  14671. 011001x1xx0xxxxx011xxxxxxxx0xxxx
  14672. fcmeq. */
  14673. return 1405;
  14674. }
  14675. else
  14676. {
  14677. /* 33222222222211111111110000000000
  14678. 10987654321098765432109876543210
  14679. 011001x1xx0xxxxx011xxxxxxxx1xxxx
  14680. fcmne. */
  14681. return 1413;
  14682. }
  14683. }
  14684. else
  14685. {
  14686. if (((word >> 22) & 0x1) == 0)
  14687. {
  14688. if (((word >> 23) & 0x1) == 0)
  14689. {
  14690. /* 33222222222211111111110000000000
  14691. 10987654321098765432109876543210
  14692. 111001x1000xxxxx011xxxxxxxxxxxxx
  14693. stnt1w. */
  14694. return 1954;
  14695. }
  14696. else
  14697. {
  14698. /* 33222222222211111111110000000000
  14699. 10987654321098765432109876543210
  14700. 111001x1100xxxxx011xxxxxxxxxxxxx
  14701. stnt1d. */
  14702. return 1950;
  14703. }
  14704. }
  14705. else
  14706. {
  14707. if (((word >> 23) & 0x1) == 0)
  14708. {
  14709. /* 33222222222211111111110000000000
  14710. 10987654321098765432109876543210
  14711. 111001x1010xxxxx011xxxxxxxxxxxxx
  14712. st3w. */
  14713. return 1938;
  14714. }
  14715. else
  14716. {
  14717. /* 33222222222211111111110000000000
  14718. 10987654321098765432109876543210
  14719. 111001x1110xxxxx011xxxxxxxxxxxxx
  14720. st3d. */
  14721. return 1934;
  14722. }
  14723. }
  14724. }
  14725. }
  14726. else
  14727. {
  14728. if (((word >> 31) & 0x1) == 0)
  14729. {
  14730. /* 33222222222211111111110000000000
  14731. 10987654321098765432109876543210
  14732. 011001x1xx1xxxxx011xxxxxxxxxxxxx
  14733. fnmls. */
  14734. return 1472;
  14735. }
  14736. else
  14737. {
  14738. if (((word >> 22) & 0x1) == 0)
  14739. {
  14740. if (((word >> 23) & 0x1) == 0)
  14741. {
  14742. /* 33222222222211111111110000000000
  14743. 10987654321098765432109876543210
  14744. 111001x1001xxxxx011xxxxxxxxxxxxx
  14745. st2w. */
  14746. return 1930;
  14747. }
  14748. else
  14749. {
  14750. /* 33222222222211111111110000000000
  14751. 10987654321098765432109876543210
  14752. 111001x1101xxxxx011xxxxxxxxxxxxx
  14753. st2d. */
  14754. return 1926;
  14755. }
  14756. }
  14757. else
  14758. {
  14759. if (((word >> 23) & 0x1) == 0)
  14760. {
  14761. /* 33222222222211111111110000000000
  14762. 10987654321098765432109876543210
  14763. 111001x1011xxxxx011xxxxxxxxxxxxx
  14764. st4w. */
  14765. return 1946;
  14766. }
  14767. else
  14768. {
  14769. /* 33222222222211111111110000000000
  14770. 10987654321098765432109876543210
  14771. 111001x1111xxxxx011xxxxxxxxxxxxx
  14772. st4d. */
  14773. return 1942;
  14774. }
  14775. }
  14776. }
  14777. }
  14778. }
  14779. }
  14780. }
  14781. }
  14782. else
  14783. {
  14784. if (((word >> 21) & 0x1) == 0)
  14785. {
  14786. if (((word >> 30) & 0x1) == 0)
  14787. {
  14788. if (((word >> 14) & 0x1) == 0)
  14789. {
  14790. if (((word >> 13) & 0x1) == 0)
  14791. {
  14792. if (((word >> 4) & 0x1) == 0)
  14793. {
  14794. /* 33222222222211111111110000000000
  14795. 10987654321098765432109876543210
  14796. x01001x1xx0xxxxx100xxxxxxxx0xxxx
  14797. cmpeq. */
  14798. return 1334;
  14799. }
  14800. else
  14801. {
  14802. /* 33222222222211111111110000000000
  14803. 10987654321098765432109876543210
  14804. x01001x1xx0xxxxx100xxxxxxxx1xxxx
  14805. cmpne. */
  14806. return 1357;
  14807. }
  14808. }
  14809. else
  14810. {
  14811. if (((word >> 20) & 0x1) == 0)
  14812. {
  14813. if (((word >> 22) & 0x1) == 0)
  14814. {
  14815. if (((word >> 23) & 0x1) == 0)
  14816. {
  14817. /* 33222222222211111111110000000000
  14818. 10987654321098765432109876543210
  14819. x01001x10000xxxx101xxxxxxxxxxxxx
  14820. ld1sh. */
  14821. return 1593;
  14822. }
  14823. else
  14824. {
  14825. /* 33222222222211111111110000000000
  14826. 10987654321098765432109876543210
  14827. x01001x11000xxxx101xxxxxxxxxxxxx
  14828. ld1sb. */
  14829. return 1580;
  14830. }
  14831. }
  14832. else
  14833. {
  14834. if (((word >> 23) & 0x1) == 0)
  14835. {
  14836. /* 33222222222211111111110000000000
  14837. 10987654321098765432109876543210
  14838. x01001x10100xxxx101xxxxxxxxxxxxx
  14839. ld1w. */
  14840. return 1612;
  14841. }
  14842. else
  14843. {
  14844. /* 33222222222211111111110000000000
  14845. 10987654321098765432109876543210
  14846. x01001x11100xxxx101xxxxxxxxxxxxx
  14847. ld1sb. */
  14848. return 1582;
  14849. }
  14850. }
  14851. }
  14852. else
  14853. {
  14854. if (((word >> 22) & 0x1) == 0)
  14855. {
  14856. if (((word >> 23) & 0x1) == 0)
  14857. {
  14858. /* 33222222222211111111110000000000
  14859. 10987654321098765432109876543210
  14860. x01001x10001xxxx101xxxxxxxxxxxxx
  14861. ldnf1sh. */
  14862. return 1726;
  14863. }
  14864. else
  14865. {
  14866. /* 33222222222211111111110000000000
  14867. 10987654321098765432109876543210
  14868. x01001x11001xxxx101xxxxxxxxxxxxx
  14869. ldnf1sb. */
  14870. return 1723;
  14871. }
  14872. }
  14873. else
  14874. {
  14875. if (((word >> 23) & 0x1) == 0)
  14876. {
  14877. /* 33222222222211111111110000000000
  14878. 10987654321098765432109876543210
  14879. x01001x10101xxxx101xxxxxxxxxxxxx
  14880. ldnf1w. */
  14881. return 1729;
  14882. }
  14883. else
  14884. {
  14885. /* 33222222222211111111110000000000
  14886. 10987654321098765432109876543210
  14887. x01001x11101xxxx101xxxxxxxxxxxxx
  14888. ldnf1sb. */
  14889. return 1725;
  14890. }
  14891. }
  14892. }
  14893. }
  14894. }
  14895. else
  14896. {
  14897. if (((word >> 31) & 0x1) == 0)
  14898. {
  14899. if (((word >> 4) & 0x1) == 0)
  14900. {
  14901. if (((word >> 20) & 0x1) == 0)
  14902. {
  14903. if (((word >> 22) & 0x1) == 0)
  14904. {
  14905. /* 33222222222211111111110000000000
  14906. 10987654321098765432109876543210
  14907. 001001x1x000xxxx11xxxxxxxxx0xxxx
  14908. brkpa. */
  14909. return 1320;
  14910. }
  14911. else
  14912. {
  14913. /* 33222222222211111111110000000000
  14914. 10987654321098765432109876543210
  14915. 001001x1x100xxxx11xxxxxxxxx0xxxx
  14916. brkpas. */
  14917. return 1321;
  14918. }
  14919. }
  14920. else
  14921. {
  14922. if (((word >> 16) & 0x1) == 0)
  14923. {
  14924. if (((word >> 19) & 0x1) == 0)
  14925. {
  14926. /* 33222222222211111111110000000000
  14927. 10987654321098765432109876543210
  14928. 001001x1xx010xx011xxxxxxxxx0xxxx
  14929. ptest. */
  14930. return 1806;
  14931. }
  14932. else
  14933. {
  14934. if (((word >> 10) & 0x1) == 0)
  14935. {
  14936. if (((word >> 12) & 0x1) == 0)
  14937. {
  14938. if (((word >> 13) & 0x1) == 0)
  14939. {
  14940. /* 33222222222211111111110000000000
  14941. 10987654321098765432109876543210
  14942. 001001x1xx011xx01100x0xxxxx0xxxx
  14943. pfirst. */
  14944. return 1776;
  14945. }
  14946. else
  14947. {
  14948. /* 33222222222211111111110000000000
  14949. 10987654321098765432109876543210
  14950. 001001x1xx011xx01110x0xxxxx0xxxx
  14951. ptrue. */
  14952. return 1807;
  14953. }
  14954. }
  14955. else
  14956. {
  14957. if (((word >> 22) & 0x1) == 0)
  14958. {
  14959. /* 33222222222211111111110000000000
  14960. 10987654321098765432109876543210
  14961. 001001x1x0011xx011x1x0xxxxx0xxxx
  14962. rdffr. */
  14963. return 1813;
  14964. }
  14965. else
  14966. {
  14967. /* 33222222222211111111110000000000
  14968. 10987654321098765432109876543210
  14969. 001001x1x1011xx011x1x0xxxxx0xxxx
  14970. rdffrs. */
  14971. return 1814;
  14972. }
  14973. }
  14974. }
  14975. else
  14976. {
  14977. /* 33222222222211111111110000000000
  14978. 10987654321098765432109876543210
  14979. 001001x1xx011xx011xxx1xxxxx0xxxx
  14980. pfalse. */
  14981. return 1775;
  14982. }
  14983. }
  14984. }
  14985. else
  14986. {
  14987. if (((word >> 10) & 0x1) == 0)
  14988. {
  14989. if (((word >> 12) & 0x1) == 0)
  14990. {
  14991. /* 33222222222211111111110000000000
  14992. 10987654321098765432109876543210
  14993. 001001x1xx01xxx111x0x0xxxxx0xxxx
  14994. ptrues. */
  14995. return 1808;
  14996. }
  14997. else
  14998. {
  14999. /* 33222222222211111111110000000000
  15000. 10987654321098765432109876543210
  15001. 001001x1xx01xxx111x1x0xxxxx0xxxx
  15002. rdffr. */
  15003. return 1812;
  15004. }
  15005. }
  15006. else
  15007. {
  15008. /* 33222222222211111111110000000000
  15009. 10987654321098765432109876543210
  15010. 001001x1xx01xxx111xxx1xxxxx0xxxx
  15011. pnext. */
  15012. return 1777;
  15013. }
  15014. }
  15015. }
  15016. }
  15017. else
  15018. {
  15019. if (((word >> 22) & 0x1) == 0)
  15020. {
  15021. /* 33222222222211111111110000000000
  15022. 10987654321098765432109876543210
  15023. 001001x1x00xxxxx11xxxxxxxxx1xxxx
  15024. brkpb. */
  15025. return 1322;
  15026. }
  15027. else
  15028. {
  15029. /* 33222222222211111111110000000000
  15030. 10987654321098765432109876543210
  15031. 001001x1x10xxxxx11xxxxxxxxx1xxxx
  15032. brkpbs. */
  15033. return 1323;
  15034. }
  15035. }
  15036. }
  15037. else
  15038. {
  15039. if (((word >> 13) & 0x1) == 0)
  15040. {
  15041. if (((word >> 22) & 0x1) == 0)
  15042. {
  15043. if (((word >> 23) & 0x1) == 0)
  15044. {
  15045. /* 33222222222211111111110000000000
  15046. 10987654321098765432109876543210
  15047. 101001x1000xxxxx110xxxxxxxxxxxxx
  15048. ldnt1w. */
  15049. return 1737;
  15050. }
  15051. else
  15052. {
  15053. /* 33222222222211111111110000000000
  15054. 10987654321098765432109876543210
  15055. 101001x1100xxxxx110xxxxxxxxxxxxx
  15056. ldnt1d. */
  15057. return 1733;
  15058. }
  15059. }
  15060. else
  15061. {
  15062. if (((word >> 23) & 0x1) == 0)
  15063. {
  15064. /* 33222222222211111111110000000000
  15065. 10987654321098765432109876543210
  15066. 101001x1010xxxxx110xxxxxxxxxxxxx
  15067. ld3w. */
  15068. return 1629;
  15069. }
  15070. else
  15071. {
  15072. /* 33222222222211111111110000000000
  15073. 10987654321098765432109876543210
  15074. 101001x1110xxxxx110xxxxxxxxxxxxx
  15075. ld3d. */
  15076. return 1625;
  15077. }
  15078. }
  15079. }
  15080. else
  15081. {
  15082. if (((word >> 22) & 0x1) == 0)
  15083. {
  15084. if (((word >> 23) & 0x1) == 0)
  15085. {
  15086. /* 33222222222211111111110000000000
  15087. 10987654321098765432109876543210
  15088. 101001x1000xxxxx111xxxxxxxxxxxxx
  15089. ldnt1w. */
  15090. return 1738;
  15091. }
  15092. else
  15093. {
  15094. /* 33222222222211111111110000000000
  15095. 10987654321098765432109876543210
  15096. 101001x1100xxxxx111xxxxxxxxxxxxx
  15097. ldnt1d. */
  15098. return 1734;
  15099. }
  15100. }
  15101. else
  15102. {
  15103. if (((word >> 23) & 0x1) == 0)
  15104. {
  15105. /* 33222222222211111111110000000000
  15106. 10987654321098765432109876543210
  15107. 101001x1010xxxxx111xxxxxxxxxxxxx
  15108. ld3w. */
  15109. return 1630;
  15110. }
  15111. else
  15112. {
  15113. /* 33222222222211111111110000000000
  15114. 10987654321098765432109876543210
  15115. 101001x1110xxxxx111xxxxxxxxxxxxx
  15116. ld3d. */
  15117. return 1626;
  15118. }
  15119. }
  15120. }
  15121. }
  15122. }
  15123. }
  15124. else
  15125. {
  15126. if (((word >> 13) & 0x1) == 0)
  15127. {
  15128. if (((word >> 31) & 0x1) == 0)
  15129. {
  15130. if (((word >> 14) & 0x1) == 0)
  15131. {
  15132. if (((word >> 19) & 0x1) == 0)
  15133. {
  15134. if (((word >> 20) & 0x1) == 0)
  15135. {
  15136. if (((word >> 16) & 0x1) == 0)
  15137. {
  15138. if (((word >> 17) & 0x1) == 0)
  15139. {
  15140. if (((word >> 18) & 0x1) == 0)
  15141. {
  15142. /* 33222222222211111111110000000000
  15143. 10987654321098765432109876543210
  15144. 011001x1xx000000100xxxxxxxxxxxxx
  15145. fadd. */
  15146. return 1396;
  15147. }
  15148. else
  15149. {
  15150. /* 33222222222211111111110000000000
  15151. 10987654321098765432109876543210
  15152. 011001x1xx000100100xxxxxxxxxxxxx
  15153. fmaxnm. */
  15154. return 1443;
  15155. }
  15156. }
  15157. else
  15158. {
  15159. if (((word >> 18) & 0x1) == 0)
  15160. {
  15161. /* 33222222222211111111110000000000
  15162. 10987654321098765432109876543210
  15163. 011001x1xx000010100xxxxxxxxxxxxx
  15164. fmul. */
  15165. return 1463;
  15166. }
  15167. else
  15168. {
  15169. /* 33222222222211111111110000000000
  15170. 10987654321098765432109876543210
  15171. 011001x1xx000110100xxxxxxxxxxxxx
  15172. fmax. */
  15173. return 1441;
  15174. }
  15175. }
  15176. }
  15177. else
  15178. {
  15179. if (((word >> 17) & 0x1) == 0)
  15180. {
  15181. if (((word >> 18) & 0x1) == 0)
  15182. {
  15183. /* 33222222222211111111110000000000
  15184. 10987654321098765432109876543210
  15185. 011001x1xx000001100xxxxxxxxxxxxx
  15186. fsub. */
  15187. return 1489;
  15188. }
  15189. else
  15190. {
  15191. /* 33222222222211111111110000000000
  15192. 10987654321098765432109876543210
  15193. 011001x1xx000101100xxxxxxxxxxxxx
  15194. fminnm. */
  15195. return 1449;
  15196. }
  15197. }
  15198. else
  15199. {
  15200. if (((word >> 18) & 0x1) == 0)
  15201. {
  15202. /* 33222222222211111111110000000000
  15203. 10987654321098765432109876543210
  15204. 011001x1xx000011100xxxxxxxxxxxxx
  15205. fsubr. */
  15206. return 1491;
  15207. }
  15208. else
  15209. {
  15210. /* 33222222222211111111110000000000
  15211. 10987654321098765432109876543210
  15212. 011001x1xx000111100xxxxxxxxxxxxx
  15213. fmin. */
  15214. return 1447;
  15215. }
  15216. }
  15217. }
  15218. }
  15219. else
  15220. {
  15221. /* 33222222222211111111110000000000
  15222. 10987654321098765432109876543210
  15223. 011001x1xx010xxx100xxxxxxxxxxxxx
  15224. ftmad. */
  15225. return 1493;
  15226. }
  15227. }
  15228. else
  15229. {
  15230. if (((word >> 16) & 0x1) == 0)
  15231. {
  15232. if (((word >> 17) & 0x1) == 0)
  15233. {
  15234. if (((word >> 18) & 0x1) == 0)
  15235. {
  15236. if (((word >> 20) & 0x1) == 0)
  15237. {
  15238. /* 33222222222211111111110000000000
  15239. 10987654321098765432109876543210
  15240. 011001x1xx001000100xxxxxxxxxxxxx
  15241. fabd. */
  15242. return 1391;
  15243. }
  15244. else
  15245. {
  15246. /* 33222222222211111111110000000000
  15247. 10987654321098765432109876543210
  15248. 011001x1xx011000100xxxxxxxxxxxxx
  15249. fadd. */
  15250. return 1397;
  15251. }
  15252. }
  15253. else
  15254. {
  15255. if (((word >> 20) & 0x1) == 0)
  15256. {
  15257. /* 33222222222211111111110000000000
  15258. 10987654321098765432109876543210
  15259. 011001x1xx001100100xxxxxxxxxxxxx
  15260. fdivr. */
  15261. return 1437;
  15262. }
  15263. else
  15264. {
  15265. /* 33222222222211111111110000000000
  15266. 10987654321098765432109876543210
  15267. 011001x1xx011100100xxxxxxxxxxxxx
  15268. fmaxnm. */
  15269. return 1444;
  15270. }
  15271. }
  15272. }
  15273. else
  15274. {
  15275. if (((word >> 18) & 0x1) == 0)
  15276. {
  15277. if (((word >> 20) & 0x1) == 0)
  15278. {
  15279. /* 33222222222211111111110000000000
  15280. 10987654321098765432109876543210
  15281. 011001x1xx001010100xxxxxxxxxxxxx
  15282. fmulx. */
  15283. return 1468;
  15284. }
  15285. else
  15286. {
  15287. /* 33222222222211111111110000000000
  15288. 10987654321098765432109876543210
  15289. 011001x1xx011010100xxxxxxxxxxxxx
  15290. fmul. */
  15291. return 1464;
  15292. }
  15293. }
  15294. else
  15295. {
  15296. /* 33222222222211111111110000000000
  15297. 10987654321098765432109876543210
  15298. 011001x1xx0x1110100xxxxxxxxxxxxx
  15299. fmax. */
  15300. return 1442;
  15301. }
  15302. }
  15303. }
  15304. else
  15305. {
  15306. if (((word >> 17) & 0x1) == 0)
  15307. {
  15308. if (((word >> 18) & 0x1) == 0)
  15309. {
  15310. if (((word >> 20) & 0x1) == 0)
  15311. {
  15312. /* 33222222222211111111110000000000
  15313. 10987654321098765432109876543210
  15314. 011001x1xx001001100xxxxxxxxxxxxx
  15315. fscale. */
  15316. return 1486;
  15317. }
  15318. else
  15319. {
  15320. /* 33222222222211111111110000000000
  15321. 10987654321098765432109876543210
  15322. 011001x1xx011001100xxxxxxxxxxxxx
  15323. fsub. */
  15324. return 1490;
  15325. }
  15326. }
  15327. else
  15328. {
  15329. if (((word >> 20) & 0x1) == 0)
  15330. {
  15331. /* 33222222222211111111110000000000
  15332. 10987654321098765432109876543210
  15333. 011001x1xx001101100xxxxxxxxxxxxx
  15334. fdiv. */
  15335. return 1436;
  15336. }
  15337. else
  15338. {
  15339. /* 33222222222211111111110000000000
  15340. 10987654321098765432109876543210
  15341. 011001x1xx011101100xxxxxxxxxxxxx
  15342. fminnm. */
  15343. return 1450;
  15344. }
  15345. }
  15346. }
  15347. else
  15348. {
  15349. if (((word >> 18) & 0x1) == 0)
  15350. {
  15351. /* 33222222222211111111110000000000
  15352. 10987654321098765432109876543210
  15353. 011001x1xx0x1011100xxxxxxxxxxxxx
  15354. fsubr. */
  15355. return 1492;
  15356. }
  15357. else
  15358. {
  15359. /* 33222222222211111111110000000000
  15360. 10987654321098765432109876543210
  15361. 011001x1xx0x1111100xxxxxxxxxxxxx
  15362. fmin. */
  15363. return 1448;
  15364. }
  15365. }
  15366. }
  15367. }
  15368. }
  15369. else
  15370. {
  15371. if (((word >> 4) & 0x1) == 0)
  15372. {
  15373. /* 33222222222211111111110000000000
  15374. 10987654321098765432109876543210
  15375. 011001x1xx0xxxxx110xxxxxxxx0xxxx
  15376. fcmuo. */
  15377. return 1414;
  15378. }
  15379. else
  15380. {
  15381. /* 33222222222211111111110000000000
  15382. 10987654321098765432109876543210
  15383. 011001x1xx0xxxxx110xxxxxxxx1xxxx
  15384. facge. */
  15385. return 1393;
  15386. }
  15387. }
  15388. }
  15389. else
  15390. {
  15391. if (((word >> 22) & 0x1) == 0)
  15392. {
  15393. if (((word >> 23) & 0x1) == 0)
  15394. {
  15395. /* 33222222222211111111110000000000
  15396. 10987654321098765432109876543210
  15397. 111001x1000xxxxx1x0xxxxxxxxxxxxx
  15398. st1w. */
  15399. return 1912;
  15400. }
  15401. else
  15402. {
  15403. /* 33222222222211111111110000000000
  15404. 10987654321098765432109876543210
  15405. 111001x1100xxxxx1x0xxxxxxxxxxxxx
  15406. st1d. */
  15407. return 1891;
  15408. }
  15409. }
  15410. else
  15411. {
  15412. /* 33222222222211111111110000000000
  15413. 10987654321098765432109876543210
  15414. 111001x1x10xxxxx1x0xxxxxxxxxxxxx
  15415. st1w. */
  15416. return 1917;
  15417. }
  15418. }
  15419. }
  15420. else
  15421. {
  15422. if (((word >> 14) & 0x1) == 0)
  15423. {
  15424. if (((word >> 31) & 0x1) == 0)
  15425. {
  15426. if (((word >> 16) & 0x1) == 0)
  15427. {
  15428. if (((word >> 19) & 0x1) == 0)
  15429. {
  15430. if (((word >> 17) & 0x1) == 0)
  15431. {
  15432. if (((word >> 18) & 0x1) == 0)
  15433. {
  15434. if (((word >> 20) & 0x1) == 0)
  15435. {
  15436. /* 33222222222211111111110000000000
  15437. 10987654321098765432109876543210
  15438. 011001x1xx000000101xxxxxxxxxxxxx
  15439. frintn. */
  15440. return 1480;
  15441. }
  15442. else
  15443. {
  15444. /* 33222222222211111111110000000000
  15445. 10987654321098765432109876543210
  15446. 011001x1xx010000101xxxxxxxxxxxxx
  15447. scvtf. */
  15448. return 1826;
  15449. }
  15450. }
  15451. else
  15452. {
  15453. if (((word >> 20) & 0x1) == 0)
  15454. {
  15455. /* 33222222222211111111110000000000
  15456. 10987654321098765432109876543210
  15457. 011001x1xx000100101xxxxxxxxxxxxx
  15458. frinta. */
  15459. return 1477;
  15460. }
  15461. else
  15462. {
  15463. if (((word >> 22) & 0x1) == 0)
  15464. {
  15465. /* 33222222222211111111110000000000
  15466. 10987654321098765432109876543210
  15467. 011001x1x0010100101xxxxxxxxxxxxx
  15468. scvtf. */
  15469. return 1825;
  15470. }
  15471. else
  15472. {
  15473. if (((word >> 23) & 0x1) == 0)
  15474. {
  15475. /* 33222222222211111111110000000000
  15476. 10987654321098765432109876543210
  15477. 011001x101010100101xxxxxxxxxxxxx
  15478. scvtf. */
  15479. return 1824;
  15480. }
  15481. else
  15482. {
  15483. /* 33222222222211111111110000000000
  15484. 10987654321098765432109876543210
  15485. 011001x111010100101xxxxxxxxxxxxx
  15486. scvtf. */
  15487. return 1828;
  15488. }
  15489. }
  15490. }
  15491. }
  15492. }
  15493. else
  15494. {
  15495. if (((word >> 18) & 0x1) == 0)
  15496. {
  15497. if (((word >> 20) & 0x1) == 0)
  15498. {
  15499. /* 33222222222211111111110000000000
  15500. 10987654321098765432109876543210
  15501. 011001x1xx000010101xxxxxxxxxxxxx
  15502. frintm. */
  15503. return 1479;
  15504. }
  15505. else
  15506. {
  15507. /* 33222222222211111111110000000000
  15508. 10987654321098765432109876543210
  15509. 011001x1xx010010101xxxxxxxxxxxxx
  15510. scvtf. */
  15511. return 1823;
  15512. }
  15513. }
  15514. else
  15515. {
  15516. if (((word >> 20) & 0x1) == 0)
  15517. {
  15518. /* 33222222222211111111110000000000
  15519. 10987654321098765432109876543210
  15520. 011001x1xx000110101xxxxxxxxxxxxx
  15521. frintx. */
  15522. return 1482;
  15523. }
  15524. else
  15525. {
  15526. if (((word >> 23) & 0x1) == 0)
  15527. {
  15528. /* 33222222222211111111110000000000
  15529. 10987654321098765432109876543210
  15530. 011001x10x010110101xxxxxxxxxxxxx
  15531. scvtf. */
  15532. return 1827;
  15533. }
  15534. else
  15535. {
  15536. /* 33222222222211111111110000000000
  15537. 10987654321098765432109876543210
  15538. 011001x11x010110101xxxxxxxxxxxxx
  15539. scvtf. */
  15540. return 1829;
  15541. }
  15542. }
  15543. }
  15544. }
  15545. }
  15546. else
  15547. {
  15548. if (((word >> 20) & 0x1) == 0)
  15549. {
  15550. if (((word >> 17) & 0x1) == 0)
  15551. {
  15552. if (((word >> 18) & 0x1) == 0)
  15553. {
  15554. if (((word >> 22) & 0x1) == 0)
  15555. {
  15556. /* 33222222222211111111110000000000
  15557. 10987654321098765432109876543210
  15558. 011001x1x0001000101xxxxxxxxxxxxx
  15559. fcvt. */
  15560. return 1416;
  15561. }
  15562. else
  15563. {
  15564. /* 33222222222211111111110000000000
  15565. 10987654321098765432109876543210
  15566. 011001x1x1001000101xxxxxxxxxxxxx
  15567. fcvt. */
  15568. return 1418;
  15569. }
  15570. }
  15571. else
  15572. {
  15573. /* 33222222222211111111110000000000
  15574. 10987654321098765432109876543210
  15575. 011001x1xx001100101xxxxxxxxxxxxx
  15576. frecpx. */
  15577. return 1476;
  15578. }
  15579. }
  15580. else
  15581. {
  15582. if (((word >> 22) & 0x1) == 0)
  15583. {
  15584. if (((word >> 23) & 0x1) == 0)
  15585. {
  15586. /* 33222222222211111111110000000000
  15587. 10987654321098765432109876543210
  15588. 011001x100001x10101xxxxxxxxxxxxx
  15589. fcvtx. */
  15590. return 2086;
  15591. }
  15592. else
  15593. {
  15594. /* 33222222222211111111110000000000
  15595. 10987654321098765432109876543210
  15596. 011001x110001x10101xxxxxxxxxxxxx
  15597. bfcvt. */
  15598. return 2498;
  15599. }
  15600. }
  15601. else
  15602. {
  15603. /* 33222222222211111111110000000000
  15604. 10987654321098765432109876543210
  15605. 011001x1x1001x10101xxxxxxxxxxxxx
  15606. fcvt. */
  15607. return 1420;
  15608. }
  15609. }
  15610. }
  15611. else
  15612. {
  15613. if (((word >> 22) & 0x1) == 0)
  15614. {
  15615. if (((word >> 23) & 0x1) == 0)
  15616. {
  15617. /* 33222222222211111111110000000000
  15618. 10987654321098765432109876543210
  15619. 011001x100011xx0101xxxxxxxxxxxxx
  15620. flogb. */
  15621. return 2088;
  15622. }
  15623. else
  15624. {
  15625. /* 33222222222211111111110000000000
  15626. 10987654321098765432109876543210
  15627. 011001x110011xx0101xxxxxxxxxxxxx
  15628. fcvtzs. */
  15629. return 1425;
  15630. }
  15631. }
  15632. else
  15633. {
  15634. if (((word >> 17) & 0x1) == 0)
  15635. {
  15636. if (((word >> 18) & 0x1) == 0)
  15637. {
  15638. /* 33222222222211111111110000000000
  15639. 10987654321098765432109876543210
  15640. 011001x1x1011000101xxxxxxxxxxxxx
  15641. fcvtzs. */
  15642. return 1426;
  15643. }
  15644. else
  15645. {
  15646. if (((word >> 23) & 0x1) == 0)
  15647. {
  15648. /* 33222222222211111111110000000000
  15649. 10987654321098765432109876543210
  15650. 011001x101011100101xxxxxxxxxxxxx
  15651. fcvtzs. */
  15652. return 1423;
  15653. }
  15654. else
  15655. {
  15656. /* 33222222222211111111110000000000
  15657. 10987654321098765432109876543210
  15658. 011001x111011100101xxxxxxxxxxxxx
  15659. fcvtzs. */
  15660. return 1427;
  15661. }
  15662. }
  15663. }
  15664. else
  15665. {
  15666. if (((word >> 18) & 0x1) == 0)
  15667. {
  15668. /* 33222222222211111111110000000000
  15669. 10987654321098765432109876543210
  15670. 011001x1x1011010101xxxxxxxxxxxxx
  15671. fcvtzs. */
  15672. return 1422;
  15673. }
  15674. else
  15675. {
  15676. if (((word >> 23) & 0x1) == 0)
  15677. {
  15678. /* 33222222222211111111110000000000
  15679. 10987654321098765432109876543210
  15680. 011001x101011110101xxxxxxxxxxxxx
  15681. fcvtzs. */
  15682. return 1424;
  15683. }
  15684. else
  15685. {
  15686. /* 33222222222211111111110000000000
  15687. 10987654321098765432109876543210
  15688. 011001x111011110101xxxxxxxxxxxxx
  15689. fcvtzs. */
  15690. return 1428;
  15691. }
  15692. }
  15693. }
  15694. }
  15695. }
  15696. }
  15697. }
  15698. else
  15699. {
  15700. if (((word >> 17) & 0x1) == 0)
  15701. {
  15702. if (((word >> 18) & 0x1) == 0)
  15703. {
  15704. if (((word >> 19) & 0x1) == 0)
  15705. {
  15706. if (((word >> 20) & 0x1) == 0)
  15707. {
  15708. /* 33222222222211111111110000000000
  15709. 10987654321098765432109876543210
  15710. 011001x1xx000001101xxxxxxxxxxxxx
  15711. frintp. */
  15712. return 1481;
  15713. }
  15714. else
  15715. {
  15716. /* 33222222222211111111110000000000
  15717. 10987654321098765432109876543210
  15718. 011001x1xx010001101xxxxxxxxxxxxx
  15719. ucvtf. */
  15720. return 1978;
  15721. }
  15722. }
  15723. else
  15724. {
  15725. if (((word >> 20) & 0x1) == 0)
  15726. {
  15727. if (((word >> 22) & 0x1) == 0)
  15728. {
  15729. /* 33222222222211111111110000000000
  15730. 10987654321098765432109876543210
  15731. 011001x1x0001001101xxxxxxxxxxxxx
  15732. fcvt. */
  15733. return 1417;
  15734. }
  15735. else
  15736. {
  15737. /* 33222222222211111111110000000000
  15738. 10987654321098765432109876543210
  15739. 011001x1x1001001101xxxxxxxxxxxxx
  15740. fcvt. */
  15741. return 1419;
  15742. }
  15743. }
  15744. else
  15745. {
  15746. /* 33222222222211111111110000000000
  15747. 10987654321098765432109876543210
  15748. 011001x1xx011001101xxxxxxxxxxxxx
  15749. fcvtzu. */
  15750. return 1433;
  15751. }
  15752. }
  15753. }
  15754. else
  15755. {
  15756. if (((word >> 19) & 0x1) == 0)
  15757. {
  15758. if (((word >> 22) & 0x1) == 0)
  15759. {
  15760. /* 33222222222211111111110000000000
  15761. 10987654321098765432109876543210
  15762. 011001x1x00x0101101xxxxxxxxxxxxx
  15763. ucvtf. */
  15764. return 1977;
  15765. }
  15766. else
  15767. {
  15768. if (((word >> 23) & 0x1) == 0)
  15769. {
  15770. /* 33222222222211111111110000000000
  15771. 10987654321098765432109876543210
  15772. 011001x1010x0101101xxxxxxxxxxxxx
  15773. ucvtf. */
  15774. return 1976;
  15775. }
  15776. else
  15777. {
  15778. /* 33222222222211111111110000000000
  15779. 10987654321098765432109876543210
  15780. 011001x1110x0101101xxxxxxxxxxxxx
  15781. ucvtf. */
  15782. return 1980;
  15783. }
  15784. }
  15785. }
  15786. else
  15787. {
  15788. if (((word >> 20) & 0x1) == 0)
  15789. {
  15790. /* 33222222222211111111110000000000
  15791. 10987654321098765432109876543210
  15792. 011001x1xx001101101xxxxxxxxxxxxx
  15793. fsqrt. */
  15794. return 1487;
  15795. }
  15796. else
  15797. {
  15798. if (((word >> 22) & 0x1) == 0)
  15799. {
  15800. /* 33222222222211111111110000000000
  15801. 10987654321098765432109876543210
  15802. 011001x1x0011101101xxxxxxxxxxxxx
  15803. fcvtzu. */
  15804. return 1432;
  15805. }
  15806. else
  15807. {
  15808. if (((word >> 23) & 0x1) == 0)
  15809. {
  15810. /* 33222222222211111111110000000000
  15811. 10987654321098765432109876543210
  15812. 011001x101011101101xxxxxxxxxxxxx
  15813. fcvtzu. */
  15814. return 1430;
  15815. }
  15816. else
  15817. {
  15818. /* 33222222222211111111110000000000
  15819. 10987654321098765432109876543210
  15820. 011001x111011101101xxxxxxxxxxxxx
  15821. fcvtzu. */
  15822. return 1434;
  15823. }
  15824. }
  15825. }
  15826. }
  15827. }
  15828. }
  15829. else
  15830. {
  15831. if (((word >> 18) & 0x1) == 0)
  15832. {
  15833. if (((word >> 19) & 0x1) == 0)
  15834. {
  15835. if (((word >> 20) & 0x1) == 0)
  15836. {
  15837. /* 33222222222211111111110000000000
  15838. 10987654321098765432109876543210
  15839. 011001x1xx000011101xxxxxxxxxxxxx
  15840. frintz. */
  15841. return 1483;
  15842. }
  15843. else
  15844. {
  15845. /* 33222222222211111111110000000000
  15846. 10987654321098765432109876543210
  15847. 011001x1xx010011101xxxxxxxxxxxxx
  15848. ucvtf. */
  15849. return 1975;
  15850. }
  15851. }
  15852. else
  15853. {
  15854. if (((word >> 20) & 0x1) == 0)
  15855. {
  15856. /* 33222222222211111111110000000000
  15857. 10987654321098765432109876543210
  15858. 011001x1xx001011101xxxxxxxxxxxxx
  15859. fcvt. */
  15860. return 1421;
  15861. }
  15862. else
  15863. {
  15864. /* 33222222222211111111110000000000
  15865. 10987654321098765432109876543210
  15866. 011001x1xx011011101xxxxxxxxxxxxx
  15867. fcvtzu. */
  15868. return 1429;
  15869. }
  15870. }
  15871. }
  15872. else
  15873. {
  15874. if (((word >> 19) & 0x1) == 0)
  15875. {
  15876. if (((word >> 20) & 0x1) == 0)
  15877. {
  15878. /* 33222222222211111111110000000000
  15879. 10987654321098765432109876543210
  15880. 011001x1xx000111101xxxxxxxxxxxxx
  15881. frinti. */
  15882. return 1478;
  15883. }
  15884. else
  15885. {
  15886. if (((word >> 23) & 0x1) == 0)
  15887. {
  15888. /* 33222222222211111111110000000000
  15889. 10987654321098765432109876543210
  15890. 011001x10x010111101xxxxxxxxxxxxx
  15891. ucvtf. */
  15892. return 1979;
  15893. }
  15894. else
  15895. {
  15896. /* 33222222222211111111110000000000
  15897. 10987654321098765432109876543210
  15898. 011001x11x010111101xxxxxxxxxxxxx
  15899. ucvtf. */
  15900. return 1981;
  15901. }
  15902. }
  15903. }
  15904. else
  15905. {
  15906. if (((word >> 23) & 0x1) == 0)
  15907. {
  15908. /* 33222222222211111111110000000000
  15909. 10987654321098765432109876543210
  15910. 011001x10x0x1111101xxxxxxxxxxxxx
  15911. fcvtzu. */
  15912. return 1431;
  15913. }
  15914. else
  15915. {
  15916. /* 33222222222211111111110000000000
  15917. 10987654321098765432109876543210
  15918. 011001x11x0x1111101xxxxxxxxxxxxx
  15919. fcvtzu. */
  15920. return 1435;
  15921. }
  15922. }
  15923. }
  15924. }
  15925. }
  15926. }
  15927. else
  15928. {
  15929. if (((word >> 22) & 0x1) == 0)
  15930. {
  15931. if (((word >> 23) & 0x1) == 0)
  15932. {
  15933. /* 33222222222211111111110000000000
  15934. 10987654321098765432109876543210
  15935. 111001x1000xxxxx101xxxxxxxxxxxxx
  15936. st1w. */
  15937. return 1913;
  15938. }
  15939. else
  15940. {
  15941. /* 33222222222211111111110000000000
  15942. 10987654321098765432109876543210
  15943. 111001x1100xxxxx101xxxxxxxxxxxxx
  15944. st1d. */
  15945. return 1892;
  15946. }
  15947. }
  15948. else
  15949. {
  15950. if (((word >> 23) & 0x1) == 0)
  15951. {
  15952. /* 33222222222211111111110000000000
  15953. 10987654321098765432109876543210
  15954. 111001x1010xxxxx101xxxxxxxxxxxxx
  15955. st1w. */
  15956. return 1920;
  15957. }
  15958. else
  15959. {
  15960. /* 33222222222211111111110000000000
  15961. 10987654321098765432109876543210
  15962. 111001x1110xxxxx101xxxxxxxxxxxxx
  15963. st1d. */
  15964. return 1896;
  15965. }
  15966. }
  15967. }
  15968. }
  15969. else
  15970. {
  15971. if (((word >> 31) & 0x1) == 0)
  15972. {
  15973. /* 33222222222211111111110000000000
  15974. 10987654321098765432109876543210
  15975. 011001x1xx0xxxxx111xxxxxxxxxxxxx
  15976. facgt. */
  15977. return 1394;
  15978. }
  15979. else
  15980. {
  15981. if (((word >> 20) & 0x1) == 0)
  15982. {
  15983. /* 33222222222211111111110000000000
  15984. 10987654321098765432109876543210
  15985. 111001x1xx00xxxx111xxxxxxxxxxxxx
  15986. st1w. */
  15987. return 1921;
  15988. }
  15989. else
  15990. {
  15991. if (((word >> 22) & 0x1) == 0)
  15992. {
  15993. if (((word >> 23) & 0x1) == 0)
  15994. {
  15995. /* 33222222222211111111110000000000
  15996. 10987654321098765432109876543210
  15997. 111001x10001xxxx111xxxxxxxxxxxxx
  15998. stnt1w. */
  15999. return 1955;
  16000. }
  16001. else
  16002. {
  16003. /* 33222222222211111111110000000000
  16004. 10987654321098765432109876543210
  16005. 111001x11001xxxx111xxxxxxxxxxxxx
  16006. stnt1d. */
  16007. return 1951;
  16008. }
  16009. }
  16010. else
  16011. {
  16012. if (((word >> 23) & 0x1) == 0)
  16013. {
  16014. /* 33222222222211111111110000000000
  16015. 10987654321098765432109876543210
  16016. 111001x10101xxxx111xxxxxxxxxxxxx
  16017. st3w. */
  16018. return 1939;
  16019. }
  16020. else
  16021. {
  16022. /* 33222222222211111111110000000000
  16023. 10987654321098765432109876543210
  16024. 111001x11101xxxx111xxxxxxxxxxxxx
  16025. st3d. */
  16026. return 1935;
  16027. }
  16028. }
  16029. }
  16030. }
  16031. }
  16032. }
  16033. }
  16034. }
  16035. else
  16036. {
  16037. if (((word >> 30) & 0x1) == 0)
  16038. {
  16039. if (((word >> 14) & 0x1) == 0)
  16040. {
  16041. if (((word >> 20) & 0x1) == 0)
  16042. {
  16043. if (((word >> 31) & 0x1) == 0)
  16044. {
  16045. if (((word >> 16) & 0x1) == 0)
  16046. {
  16047. if (((word >> 17) & 0x1) == 0)
  16048. {
  16049. if (((word >> 18) & 0x1) == 0)
  16050. {
  16051. if (((word >> 19) & 0x1) == 0)
  16052. {
  16053. /* 33222222222211111111110000000000
  16054. 10987654321098765432109876543210
  16055. 001001x1xx10000010xxxxxxxxxxxxxx
  16056. cntp. */
  16057. return 1363;
  16058. }
  16059. else
  16060. {
  16061. if (((word >> 10) & 0x1) == 0)
  16062. {
  16063. if (((word >> 11) & 0x1) == 0)
  16064. {
  16065. if (((word >> 12) & 0x1) == 0)
  16066. {
  16067. /* 33222222222211111111110000000000
  16068. 10987654321098765432109876543210
  16069. 001001x1xx10100010x000xxxxxxxxxx
  16070. sqincp. */
  16071. return 1870;
  16072. }
  16073. else
  16074. {
  16075. /* 33222222222211111111110000000000
  16076. 10987654321098765432109876543210
  16077. 001001x1xx10100010x100xxxxxxxxxx
  16078. wrffr. */
  16079. return 2043;
  16080. }
  16081. }
  16082. else
  16083. {
  16084. /* 33222222222211111111110000000000
  16085. 10987654321098765432109876543210
  16086. 001001x1xx10100010xx10xxxxxxxxxx
  16087. sqincp. */
  16088. return 1872;
  16089. }
  16090. }
  16091. else
  16092. {
  16093. /* 33222222222211111111110000000000
  16094. 10987654321098765432109876543210
  16095. 001001x1xx10100010xxx1xxxxxxxxxx
  16096. sqincp. */
  16097. return 1871;
  16098. }
  16099. }
  16100. }
  16101. else
  16102. {
  16103. if (((word >> 11) & 0x1) == 0)
  16104. {
  16105. if (((word >> 12) & 0x1) == 0)
  16106. {
  16107. /* 33222222222211111111110000000000
  16108. 10987654321098765432109876543210
  16109. 001001x1xx10x10010x00xxxxxxxxxxx
  16110. incp. */
  16111. return 1501;
  16112. }
  16113. else
  16114. {
  16115. /* 33222222222211111111110000000000
  16116. 10987654321098765432109876543210
  16117. 001001x1xx10x10010x10xxxxxxxxxxx
  16118. setffr. */
  16119. return 1837;
  16120. }
  16121. }
  16122. else
  16123. {
  16124. /* 33222222222211111111110000000000
  16125. 10987654321098765432109876543210
  16126. 001001x1xx10x10010xx1xxxxxxxxxxx
  16127. incp. */
  16128. return 1502;
  16129. }
  16130. }
  16131. }
  16132. else
  16133. {
  16134. if (((word >> 10) & 0x1) == 0)
  16135. {
  16136. if (((word >> 11) & 0x1) == 0)
  16137. {
  16138. /* 33222222222211111111110000000000
  16139. 10987654321098765432109876543210
  16140. 001001x1xx10xx1010xx00xxxxxxxxxx
  16141. sqdecp. */
  16142. return 1856;
  16143. }
  16144. else
  16145. {
  16146. /* 33222222222211111111110000000000
  16147. 10987654321098765432109876543210
  16148. 001001x1xx10xx1010xx10xxxxxxxxxx
  16149. sqdecp. */
  16150. return 1858;
  16151. }
  16152. }
  16153. else
  16154. {
  16155. /* 33222222222211111111110000000000
  16156. 10987654321098765432109876543210
  16157. 001001x1xx10xx1010xxx1xxxxxxxxxx
  16158. sqdecp. */
  16159. return 1857;
  16160. }
  16161. }
  16162. }
  16163. else
  16164. {
  16165. if (((word >> 10) & 0x1) == 0)
  16166. {
  16167. if (((word >> 11) & 0x1) == 0)
  16168. {
  16169. if (((word >> 17) & 0x1) == 0)
  16170. {
  16171. if (((word >> 18) & 0x1) == 0)
  16172. {
  16173. /* 33222222222211111111110000000000
  16174. 10987654321098765432109876543210
  16175. 001001x1xx10x00110xx00xxxxxxxxxx
  16176. uqincp. */
  16177. return 2018;
  16178. }
  16179. else
  16180. {
  16181. /* 33222222222211111111110000000000
  16182. 10987654321098765432109876543210
  16183. 001001x1xx10x10110xx00xxxxxxxxxx
  16184. decp. */
  16185. return 1376;
  16186. }
  16187. }
  16188. else
  16189. {
  16190. /* 33222222222211111111110000000000
  16191. 10987654321098765432109876543210
  16192. 001001x1xx10xx1110xx00xxxxxxxxxx
  16193. uqdecp. */
  16194. return 2004;
  16195. }
  16196. }
  16197. else
  16198. {
  16199. if (((word >> 17) & 0x1) == 0)
  16200. {
  16201. if (((word >> 18) & 0x1) == 0)
  16202. {
  16203. /* 33222222222211111111110000000000
  16204. 10987654321098765432109876543210
  16205. 001001x1xx10x00110xx10xxxxxxxxxx
  16206. uqincp. */
  16207. return 2019;
  16208. }
  16209. else
  16210. {
  16211. /* 33222222222211111111110000000000
  16212. 10987654321098765432109876543210
  16213. 001001x1xx10x10110xx10xxxxxxxxxx
  16214. decp. */
  16215. return 1377;
  16216. }
  16217. }
  16218. else
  16219. {
  16220. /* 33222222222211111111110000000000
  16221. 10987654321098765432109876543210
  16222. 001001x1xx10xx1110xx10xxxxxxxxxx
  16223. uqdecp. */
  16224. return 2005;
  16225. }
  16226. }
  16227. }
  16228. else
  16229. {
  16230. if (((word >> 17) & 0x1) == 0)
  16231. {
  16232. /* 33222222222211111111110000000000
  16233. 10987654321098765432109876543210
  16234. 001001x1xx10xx0110xxx1xxxxxxxxxx
  16235. uqincp. */
  16236. return 2020;
  16237. }
  16238. else
  16239. {
  16240. /* 33222222222211111111110000000000
  16241. 10987654321098765432109876543210
  16242. 001001x1xx10xx1110xxx1xxxxxxxxxx
  16243. uqdecp. */
  16244. return 2006;
  16245. }
  16246. }
  16247. }
  16248. }
  16249. else
  16250. {
  16251. if (((word >> 22) & 0x1) == 0)
  16252. {
  16253. if (((word >> 23) & 0x1) == 0)
  16254. {
  16255. /* 33222222222211111111110000000000
  16256. 10987654321098765432109876543210
  16257. 101001x10010xxxx10xxxxxxxxxxxxxx
  16258. ld1sh. */
  16259. return 1594;
  16260. }
  16261. else
  16262. {
  16263. /* 33222222222211111111110000000000
  16264. 10987654321098765432109876543210
  16265. 101001x11010xxxx10xxxxxxxxxxxxxx
  16266. ld1sb. */
  16267. return 1581;
  16268. }
  16269. }
  16270. else
  16271. {
  16272. if (((word >> 23) & 0x1) == 0)
  16273. {
  16274. /* 33222222222211111111110000000000
  16275. 10987654321098765432109876543210
  16276. 101001x10110xxxx10xxxxxxxxxxxxxx
  16277. ld1w. */
  16278. return 1613;
  16279. }
  16280. else
  16281. {
  16282. /* 33222222222211111111110000000000
  16283. 10987654321098765432109876543210
  16284. 101001x11110xxxx10xxxxxxxxxxxxxx
  16285. ld1d. */
  16286. return 1533;
  16287. }
  16288. }
  16289. }
  16290. }
  16291. else
  16292. {
  16293. if (((word >> 22) & 0x1) == 0)
  16294. {
  16295. if (((word >> 23) & 0x1) == 0)
  16296. {
  16297. /* 33222222222211111111110000000000
  16298. 10987654321098765432109876543210
  16299. x01001x10011xxxx10xxxxxxxxxxxxxx
  16300. ldnf1sh. */
  16301. return 1727;
  16302. }
  16303. else
  16304. {
  16305. /* 33222222222211111111110000000000
  16306. 10987654321098765432109876543210
  16307. x01001x11011xxxx10xxxxxxxxxxxxxx
  16308. ldnf1sb. */
  16309. return 1724;
  16310. }
  16311. }
  16312. else
  16313. {
  16314. if (((word >> 23) & 0x1) == 0)
  16315. {
  16316. /* 33222222222211111111110000000000
  16317. 10987654321098765432109876543210
  16318. x01001x10111xxxx10xxxxxxxxxxxxxx
  16319. ldnf1w. */
  16320. return 1730;
  16321. }
  16322. else
  16323. {
  16324. /* 33222222222211111111110000000000
  16325. 10987654321098765432109876543210
  16326. x01001x11111xxxx10xxxxxxxxxxxxxx
  16327. ldnf1d. */
  16328. return 1719;
  16329. }
  16330. }
  16331. }
  16332. }
  16333. else
  16334. {
  16335. if (((word >> 31) & 0x1) == 0)
  16336. {
  16337. if (((word >> 16) & 0x1) == 0)
  16338. {
  16339. if (((word >> 17) & 0x1) == 0)
  16340. {
  16341. if (((word >> 18) & 0x1) == 0)
  16342. {
  16343. if (((word >> 19) & 0x1) == 0)
  16344. {
  16345. if (((word >> 20) & 0x1) == 0)
  16346. {
  16347. /* 33222222222211111111110000000000
  16348. 10987654321098765432109876543210
  16349. 001001x1xx10000011xxxxxxxxxxxxxx
  16350. add. */
  16351. return 1290;
  16352. }
  16353. else
  16354. {
  16355. /* 33222222222211111111110000000000
  16356. 10987654321098765432109876543210
  16357. 001001x1xx11000011xxxxxxxxxxxxxx
  16358. mul. */
  16359. return 1759;
  16360. }
  16361. }
  16362. else
  16363. {
  16364. if (((word >> 20) & 0x1) == 0)
  16365. {
  16366. /* 33222222222211111111110000000000
  16367. 10987654321098765432109876543210
  16368. 001001x1xx10100011xxxxxxxxxxxxxx
  16369. smax. */
  16370. return 1838;
  16371. }
  16372. else
  16373. {
  16374. /* 33222222222211111111110000000000
  16375. 10987654321098765432109876543210
  16376. 001001x1xx11100011xxxxxxxxxxxxxx
  16377. dup. */
  16378. return 1382;
  16379. }
  16380. }
  16381. }
  16382. else
  16383. {
  16384. /* 33222222222211111111110000000000
  16385. 10987654321098765432109876543210
  16386. 001001x1xx1xx10011xxxxxxxxxxxxxx
  16387. sqadd. */
  16388. return 1847;
  16389. }
  16390. }
  16391. else
  16392. {
  16393. if (((word >> 18) & 0x1) == 0)
  16394. {
  16395. /* 33222222222211111111110000000000
  16396. 10987654321098765432109876543210
  16397. 001001x1xx1xx01011xxxxxxxxxxxxxx
  16398. smin. */
  16399. return 1841;
  16400. }
  16401. else
  16402. {
  16403. /* 33222222222211111111110000000000
  16404. 10987654321098765432109876543210
  16405. 001001x1xx1xx11011xxxxxxxxxxxxxx
  16406. sqsub. */
  16407. return 1877;
  16408. }
  16409. }
  16410. }
  16411. else
  16412. {
  16413. if (((word >> 17) & 0x1) == 0)
  16414. {
  16415. if (((word >> 18) & 0x1) == 0)
  16416. {
  16417. if (((word >> 19) & 0x1) == 0)
  16418. {
  16419. /* 33222222222211111111110000000000
  16420. 10987654321098765432109876543210
  16421. 001001x1xx1x000111xxxxxxxxxxxxxx
  16422. sub. */
  16423. return 1959;
  16424. }
  16425. else
  16426. {
  16427. if (((word >> 20) & 0x1) == 0)
  16428. {
  16429. /* 33222222222211111111110000000000
  16430. 10987654321098765432109876543210
  16431. 001001x1xx10100111xxxxxxxxxxxxxx
  16432. umax. */
  16433. return 1987;
  16434. }
  16435. else
  16436. {
  16437. /* 33222222222211111111110000000000
  16438. 10987654321098765432109876543210
  16439. 001001x1xx11100111xxxxxxxxxxxxxx
  16440. fdup. */
  16441. return 1438;
  16442. }
  16443. }
  16444. }
  16445. else
  16446. {
  16447. /* 33222222222211111111110000000000
  16448. 10987654321098765432109876543210
  16449. 001001x1xx1xx10111xxxxxxxxxxxxxx
  16450. uqadd. */
  16451. return 1995;
  16452. }
  16453. }
  16454. else
  16455. {
  16456. if (((word >> 18) & 0x1) == 0)
  16457. {
  16458. if (((word >> 19) & 0x1) == 0)
  16459. {
  16460. /* 33222222222211111111110000000000
  16461. 10987654321098765432109876543210
  16462. 001001x1xx1x001111xxxxxxxxxxxxxx
  16463. subr. */
  16464. return 1961;
  16465. }
  16466. else
  16467. {
  16468. /* 33222222222211111111110000000000
  16469. 10987654321098765432109876543210
  16470. 001001x1xx1x101111xxxxxxxxxxxxxx
  16471. umin. */
  16472. return 1990;
  16473. }
  16474. }
  16475. else
  16476. {
  16477. /* 33222222222211111111110000000000
  16478. 10987654321098765432109876543210
  16479. 001001x1xx1xx11111xxxxxxxxxxxxxx
  16480. uqsub. */
  16481. return 2025;
  16482. }
  16483. }
  16484. }
  16485. }
  16486. else
  16487. {
  16488. if (((word >> 13) & 0x1) == 0)
  16489. {
  16490. if (((word >> 22) & 0x1) == 0)
  16491. {
  16492. if (((word >> 23) & 0x1) == 0)
  16493. {
  16494. /* 33222222222211111111110000000000
  16495. 10987654321098765432109876543210
  16496. 101001x1001xxxxx110xxxxxxxxxxxxx
  16497. ld2w. */
  16498. return 1621;
  16499. }
  16500. else
  16501. {
  16502. /* 33222222222211111111110000000000
  16503. 10987654321098765432109876543210
  16504. 101001x1101xxxxx110xxxxxxxxxxxxx
  16505. ld2d. */
  16506. return 1617;
  16507. }
  16508. }
  16509. else
  16510. {
  16511. if (((word >> 23) & 0x1) == 0)
  16512. {
  16513. /* 33222222222211111111110000000000
  16514. 10987654321098765432109876543210
  16515. 101001x1011xxxxx110xxxxxxxxxxxxx
  16516. ld4w. */
  16517. return 1637;
  16518. }
  16519. else
  16520. {
  16521. /* 33222222222211111111110000000000
  16522. 10987654321098765432109876543210
  16523. 101001x1111xxxxx110xxxxxxxxxxxxx
  16524. ld4d. */
  16525. return 1633;
  16526. }
  16527. }
  16528. }
  16529. else
  16530. {
  16531. if (((word >> 22) & 0x1) == 0)
  16532. {
  16533. if (((word >> 23) & 0x1) == 0)
  16534. {
  16535. /* 33222222222211111111110000000000
  16536. 10987654321098765432109876543210
  16537. 101001x1001xxxxx111xxxxxxxxxxxxx
  16538. ld2w. */
  16539. return 1622;
  16540. }
  16541. else
  16542. {
  16543. /* 33222222222211111111110000000000
  16544. 10987654321098765432109876543210
  16545. 101001x1101xxxxx111xxxxxxxxxxxxx
  16546. ld2d. */
  16547. return 1618;
  16548. }
  16549. }
  16550. else
  16551. {
  16552. if (((word >> 23) & 0x1) == 0)
  16553. {
  16554. /* 33222222222211111111110000000000
  16555. 10987654321098765432109876543210
  16556. 101001x1011xxxxx111xxxxxxxxxxxxx
  16557. ld4w. */
  16558. return 1638;
  16559. }
  16560. else
  16561. {
  16562. /* 33222222222211111111110000000000
  16563. 10987654321098765432109876543210
  16564. 101001x1111xxxxx111xxxxxxxxxxxxx
  16565. ld4d. */
  16566. return 1634;
  16567. }
  16568. }
  16569. }
  16570. }
  16571. }
  16572. }
  16573. else
  16574. {
  16575. if (((word >> 13) & 0x1) == 0)
  16576. {
  16577. if (((word >> 31) & 0x1) == 0)
  16578. {
  16579. if (((word >> 14) & 0x1) == 0)
  16580. {
  16581. /* 33222222222211111111110000000000
  16582. 10987654321098765432109876543210
  16583. 011001x1xx1xxxxx100xxxxxxxxxxxxx
  16584. fmad. */
  16585. return 1440;
  16586. }
  16587. else
  16588. {
  16589. /* 33222222222211111111110000000000
  16590. 10987654321098765432109876543210
  16591. 011001x1xx1xxxxx110xxxxxxxxxxxxx
  16592. fnmad. */
  16593. return 1470;
  16594. }
  16595. }
  16596. else
  16597. {
  16598. if (((word >> 22) & 0x1) == 0)
  16599. {
  16600. if (((word >> 23) & 0x1) == 0)
  16601. {
  16602. /* 33222222222211111111110000000000
  16603. 10987654321098765432109876543210
  16604. 111001x1001xxxxx1x0xxxxxxxxxxxxx
  16605. st1w. */
  16606. return 1914;
  16607. }
  16608. else
  16609. {
  16610. /* 33222222222211111111110000000000
  16611. 10987654321098765432109876543210
  16612. 111001x1101xxxxx1x0xxxxxxxxxxxxx
  16613. st1d. */
  16614. return 1893;
  16615. }
  16616. }
  16617. else
  16618. {
  16619. /* 33222222222211111111110000000000
  16620. 10987654321098765432109876543210
  16621. 111001x1x11xxxxx1x0xxxxxxxxxxxxx
  16622. st1w. */
  16623. return 1919;
  16624. }
  16625. }
  16626. }
  16627. else
  16628. {
  16629. if (((word >> 14) & 0x1) == 0)
  16630. {
  16631. if (((word >> 31) & 0x1) == 0)
  16632. {
  16633. /* 33222222222211111111110000000000
  16634. 10987654321098765432109876543210
  16635. 011001x1xx1xxxxx101xxxxxxxxxxxxx
  16636. fmsb. */
  16637. return 1461;
  16638. }
  16639. else
  16640. {
  16641. if (((word >> 22) & 0x1) == 0)
  16642. {
  16643. if (((word >> 23) & 0x1) == 0)
  16644. {
  16645. /* 33222222222211111111110000000000
  16646. 10987654321098765432109876543210
  16647. 111001x1001xxxxx101xxxxxxxxxxxxx
  16648. st1w. */
  16649. return 1915;
  16650. }
  16651. else
  16652. {
  16653. /* 33222222222211111111110000000000
  16654. 10987654321098765432109876543210
  16655. 111001x1101xxxxx101xxxxxxxxxxxxx
  16656. st1d. */
  16657. return 1894;
  16658. }
  16659. }
  16660. else
  16661. {
  16662. /* 33222222222211111111110000000000
  16663. 10987654321098765432109876543210
  16664. 111001x1x11xxxxx101xxxxxxxxxxxxx
  16665. st1w. */
  16666. return 1922;
  16667. }
  16668. }
  16669. }
  16670. else
  16671. {
  16672. if (((word >> 31) & 0x1) == 0)
  16673. {
  16674. /* 33222222222211111111110000000000
  16675. 10987654321098765432109876543210
  16676. 011001x1xx1xxxxx111xxxxxxxxxxxxx
  16677. fnmsb. */
  16678. return 1473;
  16679. }
  16680. else
  16681. {
  16682. if (((word >> 20) & 0x1) == 0)
  16683. {
  16684. if (((word >> 23) & 0x1) == 0)
  16685. {
  16686. /* 33222222222211111111110000000000
  16687. 10987654321098765432109876543210
  16688. 111001x10x10xxxx111xxxxxxxxxxxxx
  16689. st1w. */
  16690. return 1923;
  16691. }
  16692. else
  16693. {
  16694. /* 33222222222211111111110000000000
  16695. 10987654321098765432109876543210
  16696. 111001x11x10xxxx111xxxxxxxxxxxxx
  16697. st1d. */
  16698. return 1897;
  16699. }
  16700. }
  16701. else
  16702. {
  16703. if (((word >> 22) & 0x1) == 0)
  16704. {
  16705. if (((word >> 23) & 0x1) == 0)
  16706. {
  16707. /* 33222222222211111111110000000000
  16708. 10987654321098765432109876543210
  16709. 111001x10011xxxx111xxxxxxxxxxxxx
  16710. st2w. */
  16711. return 1931;
  16712. }
  16713. else
  16714. {
  16715. /* 33222222222211111111110000000000
  16716. 10987654321098765432109876543210
  16717. 111001x11011xxxx111xxxxxxxxxxxxx
  16718. st2d. */
  16719. return 1927;
  16720. }
  16721. }
  16722. else
  16723. {
  16724. if (((word >> 23) & 0x1) == 0)
  16725. {
  16726. /* 33222222222211111111110000000000
  16727. 10987654321098765432109876543210
  16728. 111001x10111xxxx111xxxxxxxxxxxxx
  16729. st4w. */
  16730. return 1947;
  16731. }
  16732. else
  16733. {
  16734. /* 33222222222211111111110000000000
  16735. 10987654321098765432109876543210
  16736. 111001x11111xxxx111xxxxxxxxxxxxx
  16737. st4d. */
  16738. return 1943;
  16739. }
  16740. }
  16741. }
  16742. }
  16743. }
  16744. }
  16745. }
  16746. }
  16747. }
  16748. }
  16749. }
  16750. }
  16751. else
  16752. {
  16753. if (((word >> 29) & 0x1) == 0)
  16754. {
  16755. if (((word >> 30) & 0x1) == 0)
  16756. {
  16757. if (((word >> 31) & 0x1) == 0)
  16758. {
  16759. /* 33222222222211111111110000000000
  16760. 10987654321098765432109876543210
  16761. 000101xxxxxxxxxxxxxxxxxxxxxxxxxx
  16762. b. */
  16763. return 636;
  16764. }
  16765. else
  16766. {
  16767. /* 33222222222211111111110000000000
  16768. 10987654321098765432109876543210
  16769. 100101xxxxxxxxxxxxxxxxxxxxxxxxxx
  16770. bl. */
  16771. return 637;
  16772. }
  16773. }
  16774. else
  16775. {
  16776. if (((word >> 24) & 0x1) == 0)
  16777. {
  16778. if (((word >> 4) & 0x1) == 0)
  16779. {
  16780. if (((word >> 25) & 0x1) == 0)
  16781. {
  16782. if (((word >> 31) & 0x1) == 0)
  16783. {
  16784. /* 33222222222211111111110000000000
  16785. 10987654321098765432109876543210
  16786. 01010100xxxxxxxxxxxxxxxxxxx0xxxx
  16787. b.c. */
  16788. return 657;
  16789. }
  16790. else
  16791. {
  16792. if (((word >> 0) & 0x1) == 0)
  16793. {
  16794. if (((word >> 1) & 0x1) == 0)
  16795. {
  16796. if (((word >> 21) & 0x1) == 0)
  16797. {
  16798. /* 33222222222211111111110000000000
  16799. 10987654321098765432109876543210
  16800. 11010100xx0xxxxxxxxxxxxxxxx0xx00
  16801. hlt. */
  16802. return 753;
  16803. }
  16804. else
  16805. {
  16806. if (((word >> 22) & 0x1) == 0)
  16807. {
  16808. /* 33222222222211111111110000000000
  16809. 10987654321098765432109876543210
  16810. 11010100x01xxxxxxxxxxxxxxxx0xx00
  16811. brk. */
  16812. return 752;
  16813. }
  16814. else
  16815. {
  16816. /* 33222222222211111111110000000000
  16817. 10987654321098765432109876543210
  16818. 11010100x11xxxxxxxxxxxxxxxx0xx00
  16819. tcancel. */
  16820. return 1196;
  16821. }
  16822. }
  16823. }
  16824. else
  16825. {
  16826. if (((word >> 21) & 0x1) == 0)
  16827. {
  16828. /* 33222222222211111111110000000000
  16829. 10987654321098765432109876543210
  16830. 11010100xx0xxxxxxxxxxxxxxxx0xx10
  16831. hvc. */
  16832. return 750;
  16833. }
  16834. else
  16835. {
  16836. /* 33222222222211111111110000000000
  16837. 10987654321098765432109876543210
  16838. 11010100xx1xxxxxxxxxxxxxxxx0xx10
  16839. dcps2. */
  16840. return 756;
  16841. }
  16842. }
  16843. }
  16844. else
  16845. {
  16846. if (((word >> 1) & 0x1) == 0)
  16847. {
  16848. if (((word >> 21) & 0x1) == 0)
  16849. {
  16850. /* 33222222222211111111110000000000
  16851. 10987654321098765432109876543210
  16852. 11010100xx0xxxxxxxxxxxxxxxx0xx01
  16853. svc. */
  16854. return 749;
  16855. }
  16856. else
  16857. {
  16858. /* 33222222222211111111110000000000
  16859. 10987654321098765432109876543210
  16860. 11010100xx1xxxxxxxxxxxxxxxx0xx01
  16861. dcps1. */
  16862. return 755;
  16863. }
  16864. }
  16865. else
  16866. {
  16867. if (((word >> 21) & 0x1) == 0)
  16868. {
  16869. /* 33222222222211111111110000000000
  16870. 10987654321098765432109876543210
  16871. 11010100xx0xxxxxxxxxxxxxxxx0xx11
  16872. smc. */
  16873. return 751;
  16874. }
  16875. else
  16876. {
  16877. /* 33222222222211111111110000000000
  16878. 10987654321098765432109876543210
  16879. 11010100xx1xxxxxxxxxxxxxxxx0xx11
  16880. dcps3. */
  16881. return 757;
  16882. }
  16883. }
  16884. }
  16885. }
  16886. }
  16887. else
  16888. {
  16889. if (((word >> 21) & 0x1) == 0)
  16890. {
  16891. if (((word >> 22) & 0x1) == 0)
  16892. {
  16893. if (((word >> 23) & 0x1) == 0)
  16894. {
  16895. /* 33222222222211111111110000000000
  16896. 10987654321098765432109876543210
  16897. x1010110000xxxxxxxxxxxxxxxx0xxxx
  16898. br. */
  16899. return 638;
  16900. }
  16901. else
  16902. {
  16903. /* 33222222222211111111110000000000
  16904. 10987654321098765432109876543210
  16905. x1010110100xxxxxxxxxxxxxxxx0xxxx
  16906. eret. */
  16907. return 641;
  16908. }
  16909. }
  16910. else
  16911. {
  16912. /* 33222222222211111111110000000000
  16913. 10987654321098765432109876543210
  16914. x1010110x10xxxxxxxxxxxxxxxx0xxxx
  16915. ret. */
  16916. return 640;
  16917. }
  16918. }
  16919. else
  16920. {
  16921. if (((word >> 23) & 0x1) == 0)
  16922. {
  16923. /* 33222222222211111111110000000000
  16924. 10987654321098765432109876543210
  16925. x10101100x1xxxxxxxxxxxxxxxx0xxxx
  16926. blr. */
  16927. return 639;
  16928. }
  16929. else
  16930. {
  16931. /* 33222222222211111111110000000000
  16932. 10987654321098765432109876543210
  16933. x10101101x1xxxxxxxxxxxxxxxx0xxxx
  16934. drps. */
  16935. return 642;
  16936. }
  16937. }
  16938. }
  16939. }
  16940. else
  16941. {
  16942. if (((word >> 25) & 0x1) == 0)
  16943. {
  16944. /* 33222222222211111111110000000000
  16945. 10987654321098765432109876543210
  16946. x1010100xxxxxxxxxxxxxxxxxxx1xxxx
  16947. bc.c. */
  16948. return 2634;
  16949. }
  16950. else
  16951. {
  16952. if (((word >> 10) & 0x1) == 0)
  16953. {
  16954. if (((word >> 21) & 0x1) == 0)
  16955. {
  16956. if (((word >> 22) & 0x1) == 0)
  16957. {
  16958. if (((word >> 23) & 0x1) == 0)
  16959. {
  16960. /* 33222222222211111111110000000000
  16961. 10987654321098765432109876543210
  16962. x1010110000xxxxxxxxxx0xxxxx1xxxx
  16963. braaz. */
  16964. return 647;
  16965. }
  16966. else
  16967. {
  16968. /* 33222222222211111111110000000000
  16969. 10987654321098765432109876543210
  16970. x1010110100xxxxxxxxxx0xxxxx1xxxx
  16971. eretaa. */
  16972. return 653;
  16973. }
  16974. }
  16975. else
  16976. {
  16977. /* 33222222222211111111110000000000
  16978. 10987654321098765432109876543210
  16979. x1010110x10xxxxxxxxxx0xxxxx1xxxx
  16980. retaa. */
  16981. return 651;
  16982. }
  16983. }
  16984. else
  16985. {
  16986. /* 33222222222211111111110000000000
  16987. 10987654321098765432109876543210
  16988. x1010110xx1xxxxxxxxxx0xxxxx1xxxx
  16989. blraaz. */
  16990. return 649;
  16991. }
  16992. }
  16993. else
  16994. {
  16995. if (((word >> 21) & 0x1) == 0)
  16996. {
  16997. if (((word >> 22) & 0x1) == 0)
  16998. {
  16999. if (((word >> 23) & 0x1) == 0)
  17000. {
  17001. /* 33222222222211111111110000000000
  17002. 10987654321098765432109876543210
  17003. x1010110000xxxxxxxxxx1xxxxx1xxxx
  17004. brabz. */
  17005. return 648;
  17006. }
  17007. else
  17008. {
  17009. /* 33222222222211111111110000000000
  17010. 10987654321098765432109876543210
  17011. x1010110100xxxxxxxxxx1xxxxx1xxxx
  17012. eretab. */
  17013. return 654;
  17014. }
  17015. }
  17016. else
  17017. {
  17018. /* 33222222222211111111110000000000
  17019. 10987654321098765432109876543210
  17020. x1010110x10xxxxxxxxxx1xxxxx1xxxx
  17021. retab. */
  17022. return 652;
  17023. }
  17024. }
  17025. else
  17026. {
  17027. /* 33222222222211111111110000000000
  17028. 10987654321098765432109876543210
  17029. x1010110xx1xxxxxxxxxx1xxxxx1xxxx
  17030. blrabz. */
  17031. return 650;
  17032. }
  17033. }
  17034. }
  17035. }
  17036. }
  17037. else
  17038. {
  17039. if (((word >> 21) & 0x1) == 0)
  17040. {
  17041. if (((word >> 25) & 0x1) == 0)
  17042. {
  17043. /* 33222222222211111111110000000000
  17044. 10987654321098765432109876543210
  17045. x1010101xx0xxxxxxxxxxxxxxxxxxxxx
  17046. xaflag. */
  17047. return 811;
  17048. }
  17049. else
  17050. {
  17051. if (((word >> 10) & 0x1) == 0)
  17052. {
  17053. /* 33222222222211111111110000000000
  17054. 10987654321098765432109876543210
  17055. x1010111xx0xxxxxxxxxx0xxxxxxxxxx
  17056. braa. */
  17057. return 643;
  17058. }
  17059. else
  17060. {
  17061. /* 33222222222211111111110000000000
  17062. 10987654321098765432109876543210
  17063. x1010111xx0xxxxxxxxxx1xxxxxxxxxx
  17064. brab. */
  17065. return 644;
  17066. }
  17067. }
  17068. }
  17069. else
  17070. {
  17071. if (((word >> 25) & 0x1) == 0)
  17072. {
  17073. /* 33222222222211111111110000000000
  17074. 10987654321098765432109876543210
  17075. x1010101xx1xxxxxxxxxxxxxxxxxxxxx
  17076. tstart. */
  17077. return 1193;
  17078. }
  17079. else
  17080. {
  17081. if (((word >> 10) & 0x1) == 0)
  17082. {
  17083. /* 33222222222211111111110000000000
  17084. 10987654321098765432109876543210
  17085. x1010111xx1xxxxxxxxxx0xxxxxxxxxx
  17086. blraa. */
  17087. return 645;
  17088. }
  17089. else
  17090. {
  17091. /* 33222222222211111111110000000000
  17092. 10987654321098765432109876543210
  17093. x1010111xx1xxxxxxxxxx1xxxxxxxxxx
  17094. blrab. */
  17095. return 646;
  17096. }
  17097. }
  17098. }
  17099. }
  17100. }
  17101. }
  17102. else
  17103. {
  17104. if (((word >> 24) & 0x1) == 0)
  17105. {
  17106. if (((word >> 25) & 0x1) == 0)
  17107. {
  17108. /* 33222222222211111111110000000000
  17109. 10987654321098765432109876543210
  17110. xx110100xxxxxxxxxxxxxxxxxxxxxxxx
  17111. cbz. */
  17112. return 655;
  17113. }
  17114. else
  17115. {
  17116. /* 33222222222211111111110000000000
  17117. 10987654321098765432109876543210
  17118. xx110110xxxxxxxxxxxxxxxxxxxxxxxx
  17119. tbz. */
  17120. return 1251;
  17121. }
  17122. }
  17123. else
  17124. {
  17125. if (((word >> 25) & 0x1) == 0)
  17126. {
  17127. /* 33222222222211111111110000000000
  17128. 10987654321098765432109876543210
  17129. xx110101xxxxxxxxxxxxxxxxxxxxxxxx
  17130. cbnz. */
  17131. return 656;
  17132. }
  17133. else
  17134. {
  17135. /* 33222222222211111111110000000000
  17136. 10987654321098765432109876543210
  17137. xx110111xxxxxxxxxxxxxxxxxxxxxxxx
  17138. tbnz. */
  17139. return 1252;
  17140. }
  17141. }
  17142. }
  17143. }
  17144. }
  17145. else
  17146. {
  17147. if (((word >> 25) & 0x1) == 0)
  17148. {
  17149. if (((word >> 28) & 0x1) == 0)
  17150. {
  17151. if (((word >> 22) & 0x1) == 0)
  17152. {
  17153. if (((word >> 23) & 0x1) == 0)
  17154. {
  17155. if (((word >> 24) & 0x1) == 0)
  17156. {
  17157. if (((word >> 29) & 0x1) == 0)
  17158. {
  17159. /* 33222222222211111111110000000000
  17160. 10987654321098765432109876543210
  17161. xx00110000xxxxxxxxxxxxxxxxxxxxxx
  17162. st4. */
  17163. return 440;
  17164. }
  17165. else
  17166. {
  17167. /* 33222222222211111111110000000000
  17168. 10987654321098765432109876543210
  17169. xx10110000xxxxxxxxxxxxxxxxxxxxxx
  17170. stnp. */
  17171. return 973;
  17172. }
  17173. }
  17174. else
  17175. {
  17176. if (((word >> 29) & 0x1) == 0)
  17177. {
  17178. if (((word >> 13) & 0x1) == 0)
  17179. {
  17180. if (((word >> 21) & 0x1) == 0)
  17181. {
  17182. /* 33222222222211111111110000000000
  17183. 10987654321098765432109876543210
  17184. xx001101000xxxxxxx0xxxxxxxxxxxxx
  17185. st1. */
  17186. return 456;
  17187. }
  17188. else
  17189. {
  17190. /* 33222222222211111111110000000000
  17191. 10987654321098765432109876543210
  17192. xx001101001xxxxxxx0xxxxxxxxxxxxx
  17193. st2. */
  17194. return 458;
  17195. }
  17196. }
  17197. else
  17198. {
  17199. if (((word >> 21) & 0x1) == 0)
  17200. {
  17201. /* 33222222222211111111110000000000
  17202. 10987654321098765432109876543210
  17203. xx001101000xxxxxxx1xxxxxxxxxxxxx
  17204. st3. */
  17205. return 457;
  17206. }
  17207. else
  17208. {
  17209. /* 33222222222211111111110000000000
  17210. 10987654321098765432109876543210
  17211. xx001101001xxxxxxx1xxxxxxxxxxxxx
  17212. st4. */
  17213. return 459;
  17214. }
  17215. }
  17216. }
  17217. else
  17218. {
  17219. /* 33222222222211111111110000000000
  17220. 10987654321098765432109876543210
  17221. xx10110100xxxxxxxxxxxxxxxxxxxxxx
  17222. stp. */
  17223. return 977;
  17224. }
  17225. }
  17226. }
  17227. else
  17228. {
  17229. if (((word >> 29) & 0x1) == 0)
  17230. {
  17231. if (((word >> 21) & 0x1) == 0)
  17232. {
  17233. if (((word >> 24) & 0x1) == 0)
  17234. {
  17235. /* 33222222222211111111110000000000
  17236. 10987654321098765432109876543210
  17237. xx001100100xxxxxxxxxxxxxxxxxxxxx
  17238. st4. */
  17239. return 448;
  17240. }
  17241. else
  17242. {
  17243. if (((word >> 13) & 0x1) == 0)
  17244. {
  17245. /* 33222222222211111111110000000000
  17246. 10987654321098765432109876543210
  17247. xx001101100xxxxxxx0xxxxxxxxxxxxx
  17248. st1. */
  17249. return 468;
  17250. }
  17251. else
  17252. {
  17253. /* 33222222222211111111110000000000
  17254. 10987654321098765432109876543210
  17255. xx001101100xxxxxxx1xxxxxxxxxxxxx
  17256. st3. */
  17257. return 469;
  17258. }
  17259. }
  17260. }
  17261. else
  17262. {
  17263. if (((word >> 13) & 0x1) == 0)
  17264. {
  17265. /* 33222222222211111111110000000000
  17266. 10987654321098765432109876543210
  17267. xx00110x101xxxxxxx0xxxxxxxxxxxxx
  17268. st2. */
  17269. return 470;
  17270. }
  17271. else
  17272. {
  17273. /* 33222222222211111111110000000000
  17274. 10987654321098765432109876543210
  17275. xx00110x101xxxxxxx1xxxxxxxxxxxxx
  17276. st4. */
  17277. return 471;
  17278. }
  17279. }
  17280. }
  17281. else
  17282. {
  17283. /* 33222222222211111111110000000000
  17284. 10987654321098765432109876543210
  17285. xx10110x10xxxxxxxxxxxxxxxxxxxxxx
  17286. stp. */
  17287. return 983;
  17288. }
  17289. }
  17290. }
  17291. else
  17292. {
  17293. if (((word >> 23) & 0x1) == 0)
  17294. {
  17295. if (((word >> 24) & 0x1) == 0)
  17296. {
  17297. if (((word >> 29) & 0x1) == 0)
  17298. {
  17299. /* 33222222222211111111110000000000
  17300. 10987654321098765432109876543210
  17301. xx00110001xxxxxxxxxxxxxxxxxxxxxx
  17302. ld4. */
  17303. return 444;
  17304. }
  17305. else
  17306. {
  17307. /* 33222222222211111111110000000000
  17308. 10987654321098765432109876543210
  17309. xx10110001xxxxxxxxxxxxxxxxxxxxxx
  17310. ldnp. */
  17311. return 974;
  17312. }
  17313. }
  17314. else
  17315. {
  17316. if (((word >> 29) & 0x1) == 0)
  17317. {
  17318. if (((word >> 13) & 0x1) == 0)
  17319. {
  17320. if (((word >> 21) & 0x1) == 0)
  17321. {
  17322. /* 33222222222211111111110000000000
  17323. 10987654321098765432109876543210
  17324. xx001101010xxxxxxx0xxxxxxxxxxxxx
  17325. ld1. */
  17326. return 460;
  17327. }
  17328. else
  17329. {
  17330. /* 33222222222211111111110000000000
  17331. 10987654321098765432109876543210
  17332. xx001101011xxxxxxx0xxxxxxxxxxxxx
  17333. ld2. */
  17334. return 464;
  17335. }
  17336. }
  17337. else
  17338. {
  17339. if (((word >> 21) & 0x1) == 0)
  17340. {
  17341. /* 33222222222211111111110000000000
  17342. 10987654321098765432109876543210
  17343. xx001101010xxxxxxx1xxxxxxxxxxxxx
  17344. ld3. */
  17345. return 461;
  17346. }
  17347. else
  17348. {
  17349. /* 33222222222211111111110000000000
  17350. 10987654321098765432109876543210
  17351. xx001101011xxxxxxx1xxxxxxxxxxxxx
  17352. ld4. */
  17353. return 465;
  17354. }
  17355. }
  17356. }
  17357. else
  17358. {
  17359. /* 33222222222211111111110000000000
  17360. 10987654321098765432109876543210
  17361. xx10110101xxxxxxxxxxxxxxxxxxxxxx
  17362. ldp. */
  17363. return 978;
  17364. }
  17365. }
  17366. }
  17367. else
  17368. {
  17369. if (((word >> 29) & 0x1) == 0)
  17370. {
  17371. if (((word >> 21) & 0x1) == 0)
  17372. {
  17373. if (((word >> 24) & 0x1) == 0)
  17374. {
  17375. /* 33222222222211111111110000000000
  17376. 10987654321098765432109876543210
  17377. xx001100110xxxxxxxxxxxxxxxxxxxxx
  17378. ld4. */
  17379. return 452;
  17380. }
  17381. else
  17382. {
  17383. if (((word >> 13) & 0x1) == 0)
  17384. {
  17385. /* 33222222222211111111110000000000
  17386. 10987654321098765432109876543210
  17387. xx001101110xxxxxxx0xxxxxxxxxxxxx
  17388. ld1. */
  17389. return 472;
  17390. }
  17391. else
  17392. {
  17393. /* 33222222222211111111110000000000
  17394. 10987654321098765432109876543210
  17395. xx001101110xxxxxxx1xxxxxxxxxxxxx
  17396. ld3. */
  17397. return 473;
  17398. }
  17399. }
  17400. }
  17401. else
  17402. {
  17403. if (((word >> 13) & 0x1) == 0)
  17404. {
  17405. /* 33222222222211111111110000000000
  17406. 10987654321098765432109876543210
  17407. xx00110x111xxxxxxx0xxxxxxxxxxxxx
  17408. ld2. */
  17409. return 476;
  17410. }
  17411. else
  17412. {
  17413. /* 33222222222211111111110000000000
  17414. 10987654321098765432109876543210
  17415. xx00110x111xxxxxxx1xxxxxxxxxxxxx
  17416. ld4. */
  17417. return 477;
  17418. }
  17419. }
  17420. }
  17421. else
  17422. {
  17423. /* 33222222222211111111110000000000
  17424. 10987654321098765432109876543210
  17425. xx10110x11xxxxxxxxxxxxxxxxxxxxxx
  17426. ldp. */
  17427. return 984;
  17428. }
  17429. }
  17430. }
  17431. }
  17432. else
  17433. {
  17434. if (((word >> 24) & 0x1) == 0)
  17435. {
  17436. if (((word >> 29) & 0x1) == 0)
  17437. {
  17438. /* 33222222222211111111110000000000
  17439. 10987654321098765432109876543210
  17440. xx011100xxxxxxxxxxxxxxxxxxxxxxxx
  17441. ldr. */
  17442. return 988;
  17443. }
  17444. else
  17445. {
  17446. if (((word >> 10) & 0x1) == 0)
  17447. {
  17448. if (((word >> 11) & 0x1) == 0)
  17449. {
  17450. if (((word >> 22) & 0x1) == 0)
  17451. {
  17452. /* 33222222222211111111110000000000
  17453. 10987654321098765432109876543210
  17454. xx111100x0xxxxxxxxxx00xxxxxxxxxx
  17455. stur. */
  17456. return 925;
  17457. }
  17458. else
  17459. {
  17460. /* 33222222222211111111110000000000
  17461. 10987654321098765432109876543210
  17462. xx111100x1xxxxxxxxxx00xxxxxxxxxx
  17463. ldur. */
  17464. return 926;
  17465. }
  17466. }
  17467. else
  17468. {
  17469. if (((word >> 22) & 0x1) == 0)
  17470. {
  17471. /* 33222222222211111111110000000000
  17472. 10987654321098765432109876543210
  17473. xx111100x0xxxxxxxxxx10xxxxxxxxxx
  17474. str. */
  17475. return 904;
  17476. }
  17477. else
  17478. {
  17479. /* 33222222222211111111110000000000
  17480. 10987654321098765432109876543210
  17481. xx111100x1xxxxxxxxxx10xxxxxxxxxx
  17482. ldr. */
  17483. return 905;
  17484. }
  17485. }
  17486. }
  17487. else
  17488. {
  17489. if (((word >> 22) & 0x1) == 0)
  17490. {
  17491. /* 33222222222211111111110000000000
  17492. 10987654321098765432109876543210
  17493. xx111100x0xxxxxxxxxxx1xxxxxxxxxx
  17494. str. */
  17495. return 873;
  17496. }
  17497. else
  17498. {
  17499. /* 33222222222211111111110000000000
  17500. 10987654321098765432109876543210
  17501. xx111100x1xxxxxxxxxxx1xxxxxxxxxx
  17502. ldr. */
  17503. return 874;
  17504. }
  17505. }
  17506. }
  17507. }
  17508. else
  17509. {
  17510. if (((word >> 22) & 0x1) == 0)
  17511. {
  17512. if (((word >> 29) & 0x1) == 0)
  17513. {
  17514. if (((word >> 12) & 0x1) == 0)
  17515. {
  17516. if (((word >> 13) & 0x1) == 0)
  17517. {
  17518. if (((word >> 14) & 0x1) == 0)
  17519. {
  17520. if (((word >> 15) & 0x1) == 0)
  17521. {
  17522. if (((word >> 23) & 0x1) == 0)
  17523. {
  17524. /* 33222222222211111111110000000000
  17525. 10987654321098765432109876543210
  17526. xx01110100xxxxxx0000xxxxxxxxxxxx
  17527. cpyp. */
  17528. return 2562;
  17529. }
  17530. else
  17531. {
  17532. /* 33222222222211111111110000000000
  17533. 10987654321098765432109876543210
  17534. xx01110110xxxxxx0000xxxxxxxxxxxx
  17535. cpye. */
  17536. return 2564;
  17537. }
  17538. }
  17539. else
  17540. {
  17541. if (((word >> 23) & 0x1) == 0)
  17542. {
  17543. /* 33222222222211111111110000000000
  17544. 10987654321098765432109876543210
  17545. xx01110100xxxxxx1000xxxxxxxxxxxx
  17546. cpyprn. */
  17547. return 2568;
  17548. }
  17549. else
  17550. {
  17551. /* 33222222222211111111110000000000
  17552. 10987654321098765432109876543210
  17553. xx01110110xxxxxx1000xxxxxxxxxxxx
  17554. cpyern. */
  17555. return 2570;
  17556. }
  17557. }
  17558. }
  17559. else
  17560. {
  17561. if (((word >> 15) & 0x1) == 0)
  17562. {
  17563. if (((word >> 23) & 0x1) == 0)
  17564. {
  17565. /* 33222222222211111111110000000000
  17566. 10987654321098765432109876543210
  17567. xx01110100xxxxxx0100xxxxxxxxxxxx
  17568. cpypwn. */
  17569. return 2565;
  17570. }
  17571. else
  17572. {
  17573. /* 33222222222211111111110000000000
  17574. 10987654321098765432109876543210
  17575. xx01110110xxxxxx0100xxxxxxxxxxxx
  17576. cpyewn. */
  17577. return 2567;
  17578. }
  17579. }
  17580. else
  17581. {
  17582. if (((word >> 23) & 0x1) == 0)
  17583. {
  17584. /* 33222222222211111111110000000000
  17585. 10987654321098765432109876543210
  17586. xx01110100xxxxxx1100xxxxxxxxxxxx
  17587. cpypn. */
  17588. return 2571;
  17589. }
  17590. else
  17591. {
  17592. /* 33222222222211111111110000000000
  17593. 10987654321098765432109876543210
  17594. xx01110110xxxxxx1100xxxxxxxxxxxx
  17595. cpyen. */
  17596. return 2573;
  17597. }
  17598. }
  17599. }
  17600. }
  17601. else
  17602. {
  17603. if (((word >> 14) & 0x1) == 0)
  17604. {
  17605. if (((word >> 15) & 0x1) == 0)
  17606. {
  17607. if (((word >> 23) & 0x1) == 0)
  17608. {
  17609. /* 33222222222211111111110000000000
  17610. 10987654321098765432109876543210
  17611. xx01110100xxxxxx0010xxxxxxxxxxxx
  17612. cpyprt. */
  17613. return 2586;
  17614. }
  17615. else
  17616. {
  17617. /* 33222222222211111111110000000000
  17618. 10987654321098765432109876543210
  17619. xx01110110xxxxxx0010xxxxxxxxxxxx
  17620. cpyert. */
  17621. return 2588;
  17622. }
  17623. }
  17624. else
  17625. {
  17626. if (((word >> 23) & 0x1) == 0)
  17627. {
  17628. /* 33222222222211111111110000000000
  17629. 10987654321098765432109876543210
  17630. xx01110100xxxxxx1010xxxxxxxxxxxx
  17631. cpyprtrn. */
  17632. return 2592;
  17633. }
  17634. else
  17635. {
  17636. /* 33222222222211111111110000000000
  17637. 10987654321098765432109876543210
  17638. xx01110110xxxxxx1010xxxxxxxxxxxx
  17639. cpyertrn. */
  17640. return 2594;
  17641. }
  17642. }
  17643. }
  17644. else
  17645. {
  17646. if (((word >> 15) & 0x1) == 0)
  17647. {
  17648. if (((word >> 23) & 0x1) == 0)
  17649. {
  17650. /* 33222222222211111111110000000000
  17651. 10987654321098765432109876543210
  17652. xx01110100xxxxxx0110xxxxxxxxxxxx
  17653. cpyprtwn. */
  17654. return 2589;
  17655. }
  17656. else
  17657. {
  17658. /* 33222222222211111111110000000000
  17659. 10987654321098765432109876543210
  17660. xx01110110xxxxxx0110xxxxxxxxxxxx
  17661. cpyertwn. */
  17662. return 2591;
  17663. }
  17664. }
  17665. else
  17666. {
  17667. if (((word >> 23) & 0x1) == 0)
  17668. {
  17669. /* 33222222222211111111110000000000
  17670. 10987654321098765432109876543210
  17671. xx01110100xxxxxx1110xxxxxxxxxxxx
  17672. cpyprtn. */
  17673. return 2595;
  17674. }
  17675. else
  17676. {
  17677. /* 33222222222211111111110000000000
  17678. 10987654321098765432109876543210
  17679. xx01110110xxxxxx1110xxxxxxxxxxxx
  17680. cpyertn. */
  17681. return 2597;
  17682. }
  17683. }
  17684. }
  17685. }
  17686. }
  17687. else
  17688. {
  17689. if (((word >> 13) & 0x1) == 0)
  17690. {
  17691. if (((word >> 14) & 0x1) == 0)
  17692. {
  17693. if (((word >> 15) & 0x1) == 0)
  17694. {
  17695. if (((word >> 23) & 0x1) == 0)
  17696. {
  17697. /* 33222222222211111111110000000000
  17698. 10987654321098765432109876543210
  17699. xx01110100xxxxxx0001xxxxxxxxxxxx
  17700. cpypwt. */
  17701. return 2574;
  17702. }
  17703. else
  17704. {
  17705. /* 33222222222211111111110000000000
  17706. 10987654321098765432109876543210
  17707. xx01110110xxxxxx0001xxxxxxxxxxxx
  17708. cpyewt. */
  17709. return 2576;
  17710. }
  17711. }
  17712. else
  17713. {
  17714. if (((word >> 23) & 0x1) == 0)
  17715. {
  17716. /* 33222222222211111111110000000000
  17717. 10987654321098765432109876543210
  17718. xx01110100xxxxxx1001xxxxxxxxxxxx
  17719. cpypwtrn. */
  17720. return 2580;
  17721. }
  17722. else
  17723. {
  17724. /* 33222222222211111111110000000000
  17725. 10987654321098765432109876543210
  17726. xx01110110xxxxxx1001xxxxxxxxxxxx
  17727. cpyewtrn. */
  17728. return 2582;
  17729. }
  17730. }
  17731. }
  17732. else
  17733. {
  17734. if (((word >> 15) & 0x1) == 0)
  17735. {
  17736. if (((word >> 23) & 0x1) == 0)
  17737. {
  17738. /* 33222222222211111111110000000000
  17739. 10987654321098765432109876543210
  17740. xx01110100xxxxxx0101xxxxxxxxxxxx
  17741. cpypwtwn. */
  17742. return 2577;
  17743. }
  17744. else
  17745. {
  17746. /* 33222222222211111111110000000000
  17747. 10987654321098765432109876543210
  17748. xx01110110xxxxxx0101xxxxxxxxxxxx
  17749. cpyewtwn. */
  17750. return 2579;
  17751. }
  17752. }
  17753. else
  17754. {
  17755. if (((word >> 23) & 0x1) == 0)
  17756. {
  17757. /* 33222222222211111111110000000000
  17758. 10987654321098765432109876543210
  17759. xx01110100xxxxxx1101xxxxxxxxxxxx
  17760. cpypwtn. */
  17761. return 2583;
  17762. }
  17763. else
  17764. {
  17765. /* 33222222222211111111110000000000
  17766. 10987654321098765432109876543210
  17767. xx01110110xxxxxx1101xxxxxxxxxxxx
  17768. cpyewtn. */
  17769. return 2585;
  17770. }
  17771. }
  17772. }
  17773. }
  17774. else
  17775. {
  17776. if (((word >> 14) & 0x1) == 0)
  17777. {
  17778. if (((word >> 15) & 0x1) == 0)
  17779. {
  17780. if (((word >> 23) & 0x1) == 0)
  17781. {
  17782. /* 33222222222211111111110000000000
  17783. 10987654321098765432109876543210
  17784. xx01110100xxxxxx0011xxxxxxxxxxxx
  17785. cpypt. */
  17786. return 2598;
  17787. }
  17788. else
  17789. {
  17790. /* 33222222222211111111110000000000
  17791. 10987654321098765432109876543210
  17792. xx01110110xxxxxx0011xxxxxxxxxxxx
  17793. cpyet. */
  17794. return 2600;
  17795. }
  17796. }
  17797. else
  17798. {
  17799. if (((word >> 23) & 0x1) == 0)
  17800. {
  17801. /* 33222222222211111111110000000000
  17802. 10987654321098765432109876543210
  17803. xx01110100xxxxxx1011xxxxxxxxxxxx
  17804. cpyptrn. */
  17805. return 2604;
  17806. }
  17807. else
  17808. {
  17809. /* 33222222222211111111110000000000
  17810. 10987654321098765432109876543210
  17811. xx01110110xxxxxx1011xxxxxxxxxxxx
  17812. cpyetrn. */
  17813. return 2606;
  17814. }
  17815. }
  17816. }
  17817. else
  17818. {
  17819. if (((word >> 15) & 0x1) == 0)
  17820. {
  17821. if (((word >> 23) & 0x1) == 0)
  17822. {
  17823. /* 33222222222211111111110000000000
  17824. 10987654321098765432109876543210
  17825. xx01110100xxxxxx0111xxxxxxxxxxxx
  17826. cpyptwn. */
  17827. return 2601;
  17828. }
  17829. else
  17830. {
  17831. /* 33222222222211111111110000000000
  17832. 10987654321098765432109876543210
  17833. xx01110110xxxxxx0111xxxxxxxxxxxx
  17834. cpyetwn. */
  17835. return 2603;
  17836. }
  17837. }
  17838. else
  17839. {
  17840. if (((word >> 23) & 0x1) == 0)
  17841. {
  17842. /* 33222222222211111111110000000000
  17843. 10987654321098765432109876543210
  17844. xx01110100xxxxxx1111xxxxxxxxxxxx
  17845. cpyptn. */
  17846. return 2607;
  17847. }
  17848. else
  17849. {
  17850. /* 33222222222211111111110000000000
  17851. 10987654321098765432109876543210
  17852. xx01110110xxxxxx1111xxxxxxxxxxxx
  17853. cpyetn. */
  17854. return 2609;
  17855. }
  17856. }
  17857. }
  17858. }
  17859. }
  17860. }
  17861. else
  17862. {
  17863. /* 33222222222211111111110000000000
  17864. 10987654321098765432109876543210
  17865. xx111101x0xxxxxxxxxxxxxxxxxxxxxx
  17866. str. */
  17867. return 892;
  17868. }
  17869. }
  17870. else
  17871. {
  17872. if (((word >> 29) & 0x1) == 0)
  17873. {
  17874. if (((word >> 12) & 0x1) == 0)
  17875. {
  17876. if (((word >> 13) & 0x1) == 0)
  17877. {
  17878. if (((word >> 14) & 0x1) == 0)
  17879. {
  17880. if (((word >> 15) & 0x1) == 0)
  17881. {
  17882. if (((word >> 23) & 0x1) == 0)
  17883. {
  17884. /* 33222222222211111111110000000000
  17885. 10987654321098765432109876543210
  17886. xx01110101xxxxxx0000xxxxxxxxxxxx
  17887. cpym. */
  17888. return 2563;
  17889. }
  17890. else
  17891. {
  17892. /* 33222222222211111111110000000000
  17893. 10987654321098765432109876543210
  17894. xx01110111xxxxxx0000xxxxxxxxxxxx
  17895. setgp. */
  17896. return 2622;
  17897. }
  17898. }
  17899. else
  17900. {
  17901. if (((word >> 23) & 0x1) == 0)
  17902. {
  17903. /* 33222222222211111111110000000000
  17904. 10987654321098765432109876543210
  17905. xx01110101xxxxxx1000xxxxxxxxxxxx
  17906. cpymrn. */
  17907. return 2569;
  17908. }
  17909. else
  17910. {
  17911. /* 33222222222211111111110000000000
  17912. 10987654321098765432109876543210
  17913. xx01110111xxxxxx1000xxxxxxxxxxxx
  17914. setge. */
  17915. return 2624;
  17916. }
  17917. }
  17918. }
  17919. else
  17920. {
  17921. if (((word >> 15) & 0x1) == 0)
  17922. {
  17923. if (((word >> 23) & 0x1) == 0)
  17924. {
  17925. /* 33222222222211111111110000000000
  17926. 10987654321098765432109876543210
  17927. xx01110101xxxxxx0100xxxxxxxxxxxx
  17928. cpymwn. */
  17929. return 2566;
  17930. }
  17931. else
  17932. {
  17933. /* 33222222222211111111110000000000
  17934. 10987654321098765432109876543210
  17935. xx01110111xxxxxx0100xxxxxxxxxxxx
  17936. setgm. */
  17937. return 2623;
  17938. }
  17939. }
  17940. else
  17941. {
  17942. /* 33222222222211111111110000000000
  17943. 10987654321098765432109876543210
  17944. xx011101x1xxxxxx1100xxxxxxxxxxxx
  17945. cpymn. */
  17946. return 2572;
  17947. }
  17948. }
  17949. }
  17950. else
  17951. {
  17952. if (((word >> 14) & 0x1) == 0)
  17953. {
  17954. if (((word >> 15) & 0x1) == 0)
  17955. {
  17956. if (((word >> 23) & 0x1) == 0)
  17957. {
  17958. /* 33222222222211111111110000000000
  17959. 10987654321098765432109876543210
  17960. xx01110101xxxxxx0010xxxxxxxxxxxx
  17961. cpymrt. */
  17962. return 2587;
  17963. }
  17964. else
  17965. {
  17966. /* 33222222222211111111110000000000
  17967. 10987654321098765432109876543210
  17968. xx01110111xxxxxx0010xxxxxxxxxxxx
  17969. setgpn. */
  17970. return 2628;
  17971. }
  17972. }
  17973. else
  17974. {
  17975. if (((word >> 23) & 0x1) == 0)
  17976. {
  17977. /* 33222222222211111111110000000000
  17978. 10987654321098765432109876543210
  17979. xx01110101xxxxxx1010xxxxxxxxxxxx
  17980. cpymrtrn. */
  17981. return 2593;
  17982. }
  17983. else
  17984. {
  17985. /* 33222222222211111111110000000000
  17986. 10987654321098765432109876543210
  17987. xx01110111xxxxxx1010xxxxxxxxxxxx
  17988. setgen. */
  17989. return 2630;
  17990. }
  17991. }
  17992. }
  17993. else
  17994. {
  17995. if (((word >> 15) & 0x1) == 0)
  17996. {
  17997. if (((word >> 23) & 0x1) == 0)
  17998. {
  17999. /* 33222222222211111111110000000000
  18000. 10987654321098765432109876543210
  18001. xx01110101xxxxxx0110xxxxxxxxxxxx
  18002. cpymrtwn. */
  18003. return 2590;
  18004. }
  18005. else
  18006. {
  18007. /* 33222222222211111111110000000000
  18008. 10987654321098765432109876543210
  18009. xx01110111xxxxxx0110xxxxxxxxxxxx
  18010. setgmn. */
  18011. return 2629;
  18012. }
  18013. }
  18014. else
  18015. {
  18016. /* 33222222222211111111110000000000
  18017. 10987654321098765432109876543210
  18018. xx011101x1xxxxxx1110xxxxxxxxxxxx
  18019. cpymrtn. */
  18020. return 2596;
  18021. }
  18022. }
  18023. }
  18024. }
  18025. else
  18026. {
  18027. if (((word >> 13) & 0x1) == 0)
  18028. {
  18029. if (((word >> 14) & 0x1) == 0)
  18030. {
  18031. if (((word >> 15) & 0x1) == 0)
  18032. {
  18033. if (((word >> 23) & 0x1) == 0)
  18034. {
  18035. /* 33222222222211111111110000000000
  18036. 10987654321098765432109876543210
  18037. xx01110101xxxxxx0001xxxxxxxxxxxx
  18038. cpymwt. */
  18039. return 2575;
  18040. }
  18041. else
  18042. {
  18043. /* 33222222222211111111110000000000
  18044. 10987654321098765432109876543210
  18045. xx01110111xxxxxx0001xxxxxxxxxxxx
  18046. setgpt. */
  18047. return 2625;
  18048. }
  18049. }
  18050. else
  18051. {
  18052. if (((word >> 23) & 0x1) == 0)
  18053. {
  18054. /* 33222222222211111111110000000000
  18055. 10987654321098765432109876543210
  18056. xx01110101xxxxxx1001xxxxxxxxxxxx
  18057. cpymwtrn. */
  18058. return 2581;
  18059. }
  18060. else
  18061. {
  18062. /* 33222222222211111111110000000000
  18063. 10987654321098765432109876543210
  18064. xx01110111xxxxxx1001xxxxxxxxxxxx
  18065. setget. */
  18066. return 2627;
  18067. }
  18068. }
  18069. }
  18070. else
  18071. {
  18072. if (((word >> 15) & 0x1) == 0)
  18073. {
  18074. if (((word >> 23) & 0x1) == 0)
  18075. {
  18076. /* 33222222222211111111110000000000
  18077. 10987654321098765432109876543210
  18078. xx01110101xxxxxx0101xxxxxxxxxxxx
  18079. cpymwtwn. */
  18080. return 2578;
  18081. }
  18082. else
  18083. {
  18084. /* 33222222222211111111110000000000
  18085. 10987654321098765432109876543210
  18086. xx01110111xxxxxx0101xxxxxxxxxxxx
  18087. setgmt. */
  18088. return 2626;
  18089. }
  18090. }
  18091. else
  18092. {
  18093. /* 33222222222211111111110000000000
  18094. 10987654321098765432109876543210
  18095. xx011101x1xxxxxx1101xxxxxxxxxxxx
  18096. cpymwtn. */
  18097. return 2584;
  18098. }
  18099. }
  18100. }
  18101. else
  18102. {
  18103. if (((word >> 14) & 0x1) == 0)
  18104. {
  18105. if (((word >> 15) & 0x1) == 0)
  18106. {
  18107. if (((word >> 23) & 0x1) == 0)
  18108. {
  18109. /* 33222222222211111111110000000000
  18110. 10987654321098765432109876543210
  18111. xx01110101xxxxxx0011xxxxxxxxxxxx
  18112. cpymt. */
  18113. return 2599;
  18114. }
  18115. else
  18116. {
  18117. /* 33222222222211111111110000000000
  18118. 10987654321098765432109876543210
  18119. xx01110111xxxxxx0011xxxxxxxxxxxx
  18120. setgptn. */
  18121. return 2631;
  18122. }
  18123. }
  18124. else
  18125. {
  18126. if (((word >> 23) & 0x1) == 0)
  18127. {
  18128. /* 33222222222211111111110000000000
  18129. 10987654321098765432109876543210
  18130. xx01110101xxxxxx1011xxxxxxxxxxxx
  18131. cpymtrn. */
  18132. return 2605;
  18133. }
  18134. else
  18135. {
  18136. /* 33222222222211111111110000000000
  18137. 10987654321098765432109876543210
  18138. xx01110111xxxxxx1011xxxxxxxxxxxx
  18139. setgetn. */
  18140. return 2633;
  18141. }
  18142. }
  18143. }
  18144. else
  18145. {
  18146. if (((word >> 15) & 0x1) == 0)
  18147. {
  18148. if (((word >> 23) & 0x1) == 0)
  18149. {
  18150. /* 33222222222211111111110000000000
  18151. 10987654321098765432109876543210
  18152. xx01110101xxxxxx0111xxxxxxxxxxxx
  18153. cpymtwn. */
  18154. return 2602;
  18155. }
  18156. else
  18157. {
  18158. /* 33222222222211111111110000000000
  18159. 10987654321098765432109876543210
  18160. xx01110111xxxxxx0111xxxxxxxxxxxx
  18161. setgmtn. */
  18162. return 2632;
  18163. }
  18164. }
  18165. else
  18166. {
  18167. /* 33222222222211111111110000000000
  18168. 10987654321098765432109876543210
  18169. xx011101x1xxxxxx1111xxxxxxxxxxxx
  18170. cpymtn. */
  18171. return 2608;
  18172. }
  18173. }
  18174. }
  18175. }
  18176. }
  18177. else
  18178. {
  18179. /* 33222222222211111111110000000000
  18180. 10987654321098765432109876543210
  18181. xx111101x1xxxxxxxxxxxxxxxxxxxxxx
  18182. ldr. */
  18183. return 893;
  18184. }
  18185. }
  18186. }
  18187. }
  18188. }
  18189. else
  18190. {
  18191. if (((word >> 24) & 0x1) == 0)
  18192. {
  18193. if (((word >> 21) & 0x1) == 0)
  18194. {
  18195. if (((word >> 28) & 0x1) == 0)
  18196. {
  18197. if (((word >> 29) & 0x1) == 0)
  18198. {
  18199. if (((word >> 31) & 0x1) == 0)
  18200. {
  18201. if (((word >> 10) & 0x1) == 0)
  18202. {
  18203. if (((word >> 11) & 0x1) == 0)
  18204. {
  18205. if (((word >> 12) & 0x1) == 0)
  18206. {
  18207. /* 33222222222211111111110000000000
  18208. 10987654321098765432109876543210
  18209. 0x001110xx0xxxxxxxx000xxxxxxxxxx
  18210. tbl. */
  18211. return 420;
  18212. }
  18213. else
  18214. {
  18215. /* 33222222222211111111110000000000
  18216. 10987654321098765432109876543210
  18217. 0x001110xx0xxxxxxxx100xxxxxxxxxx
  18218. tbx. */
  18219. return 421;
  18220. }
  18221. }
  18222. else
  18223. {
  18224. if (((word >> 12) & 0x1) == 0)
  18225. {
  18226. if (((word >> 14) & 0x1) == 0)
  18227. {
  18228. /* 33222222222211111111110000000000
  18229. 10987654321098765432109876543210
  18230. 0x001110xx0xxxxxx0x010xxxxxxxxxx
  18231. trn1. */
  18232. return 263;
  18233. }
  18234. else
  18235. {
  18236. /* 33222222222211111111110000000000
  18237. 10987654321098765432109876543210
  18238. 0x001110xx0xxxxxx1x010xxxxxxxxxx
  18239. trn2. */
  18240. return 266;
  18241. }
  18242. }
  18243. else
  18244. {
  18245. if (((word >> 13) & 0x1) == 0)
  18246. {
  18247. if (((word >> 14) & 0x1) == 0)
  18248. {
  18249. /* 33222222222211111111110000000000
  18250. 10987654321098765432109876543210
  18251. 0x001110xx0xxxxxx00110xxxxxxxxxx
  18252. uzp1. */
  18253. return 262;
  18254. }
  18255. else
  18256. {
  18257. /* 33222222222211111111110000000000
  18258. 10987654321098765432109876543210
  18259. 0x001110xx0xxxxxx10110xxxxxxxxxx
  18260. uzp2. */
  18261. return 265;
  18262. }
  18263. }
  18264. else
  18265. {
  18266. if (((word >> 14) & 0x1) == 0)
  18267. {
  18268. /* 33222222222211111111110000000000
  18269. 10987654321098765432109876543210
  18270. 0x001110xx0xxxxxx01110xxxxxxxxxx
  18271. zip1. */
  18272. return 264;
  18273. }
  18274. else
  18275. {
  18276. /* 33222222222211111111110000000000
  18277. 10987654321098765432109876543210
  18278. 0x001110xx0xxxxxx11110xxxxxxxxxx
  18279. zip2. */
  18280. return 267;
  18281. }
  18282. }
  18283. }
  18284. }
  18285. }
  18286. else
  18287. {
  18288. if (((word >> 11) & 0x1) == 0)
  18289. {
  18290. if (((word >> 12) & 0x1) == 0)
  18291. {
  18292. if (((word >> 13) & 0x1) == 0)
  18293. {
  18294. if (((word >> 22) & 0x1) == 0)
  18295. {
  18296. /* 33222222222211111111110000000000
  18297. 10987654321098765432109876543210
  18298. 0x001110x00xxxxxxx0001xxxxxxxxxx
  18299. dup. */
  18300. return 149;
  18301. }
  18302. else
  18303. {
  18304. if (((word >> 23) & 0x1) == 0)
  18305. {
  18306. /* 33222222222211111111110000000000
  18307. 10987654321098765432109876543210
  18308. 0x001110010xxxxxxx0001xxxxxxxxxx
  18309. fmaxnm. */
  18310. return 292;
  18311. }
  18312. else
  18313. {
  18314. /* 33222222222211111111110000000000
  18315. 10987654321098765432109876543210
  18316. 0x001110110xxxxxxx0001xxxxxxxxxx
  18317. fminnm. */
  18318. return 308;
  18319. }
  18320. }
  18321. }
  18322. else
  18323. {
  18324. if (((word >> 15) & 0x1) == 0)
  18325. {
  18326. /* 33222222222211111111110000000000
  18327. 10987654321098765432109876543210
  18328. 0x001110xx0xxxxx0x1001xxxxxxxxxx
  18329. fcmeq. */
  18330. return 300;
  18331. }
  18332. else
  18333. {
  18334. /* 33222222222211111111110000000000
  18335. 10987654321098765432109876543210
  18336. 0x001110xx0xxxxx1x1001xxxxxxxxxx
  18337. smmla. */
  18338. return 2489;
  18339. }
  18340. }
  18341. }
  18342. else
  18343. {
  18344. if (((word >> 13) & 0x1) == 0)
  18345. {
  18346. if (((word >> 15) & 0x1) == 0)
  18347. {
  18348. if (((word >> 23) & 0x1) == 0)
  18349. {
  18350. /* 33222222222211111111110000000000
  18351. 10987654321098765432109876543210
  18352. 0x0011100x0xxxxx0x0101xxxxxxxxxx
  18353. fadd. */
  18354. return 296;
  18355. }
  18356. else
  18357. {
  18358. /* 33222222222211111111110000000000
  18359. 10987654321098765432109876543210
  18360. 0x0011101x0xxxxx0x0101xxxxxxxxxx
  18361. fsub. */
  18362. return 312;
  18363. }
  18364. }
  18365. else
  18366. {
  18367. /* 33222222222211111111110000000000
  18368. 10987654321098765432109876543210
  18369. 0x001110xx0xxxxx1x0101xxxxxxxxxx
  18370. sdot. */
  18371. return 2415;
  18372. }
  18373. }
  18374. else
  18375. {
  18376. if (((word >> 23) & 0x1) == 0)
  18377. {
  18378. /* 33222222222211111111110000000000
  18379. 10987654321098765432109876543210
  18380. 0x0011100x0xxxxxxx1101xxxxxxxxxx
  18381. fmax. */
  18382. return 302;
  18383. }
  18384. else
  18385. {
  18386. /* 33222222222211111111110000000000
  18387. 10987654321098765432109876543210
  18388. 0x0011101x0xxxxxxx1101xxxxxxxxxx
  18389. fmin. */
  18390. return 314;
  18391. }
  18392. }
  18393. }
  18394. }
  18395. else
  18396. {
  18397. if (((word >> 12) & 0x1) == 0)
  18398. {
  18399. if (((word >> 13) & 0x1) == 0)
  18400. {
  18401. if (((word >> 22) & 0x1) == 0)
  18402. {
  18403. /* 33222222222211111111110000000000
  18404. 10987654321098765432109876543210
  18405. 0x001110x00xxxxxxx0011xxxxxxxxxx
  18406. dup. */
  18407. return 150;
  18408. }
  18409. else
  18410. {
  18411. if (((word >> 23) & 0x1) == 0)
  18412. {
  18413. /* 33222222222211111111110000000000
  18414. 10987654321098765432109876543210
  18415. 0x001110010xxxxxxx0011xxxxxxxxxx
  18416. fmla. */
  18417. return 294;
  18418. }
  18419. else
  18420. {
  18421. /* 33222222222211111111110000000000
  18422. 10987654321098765432109876543210
  18423. 0x001110110xxxxxxx0011xxxxxxxxxx
  18424. fmls. */
  18425. return 310;
  18426. }
  18427. }
  18428. }
  18429. else
  18430. {
  18431. if (((word >> 15) & 0x1) == 0)
  18432. {
  18433. /* 33222222222211111111110000000000
  18434. 10987654321098765432109876543210
  18435. 0x001110xx0xxxxx0x1011xxxxxxxxxx
  18436. smov. */
  18437. return 151;
  18438. }
  18439. else
  18440. {
  18441. /* 33222222222211111111110000000000
  18442. 10987654321098765432109876543210
  18443. 0x001110xx0xxxxx1x1011xxxxxxxxxx
  18444. usmmla. */
  18445. return 2491;
  18446. }
  18447. }
  18448. }
  18449. else
  18450. {
  18451. if (((word >> 13) & 0x1) == 0)
  18452. {
  18453. if (((word >> 15) & 0x1) == 0)
  18454. {
  18455. if (((word >> 22) & 0x1) == 0)
  18456. {
  18457. /* 33222222222211111111110000000000
  18458. 10987654321098765432109876543210
  18459. 0x001110x00xxxxx0x0111xxxxxxxxxx
  18460. ins. */
  18461. return 154;
  18462. }
  18463. else
  18464. {
  18465. /* 33222222222211111111110000000000
  18466. 10987654321098765432109876543210
  18467. 0x001110x10xxxxx0x0111xxxxxxxxxx
  18468. fmulx. */
  18469. return 298;
  18470. }
  18471. }
  18472. else
  18473. {
  18474. /* 33222222222211111111110000000000
  18475. 10987654321098765432109876543210
  18476. 0x001110xx0xxxxx1x0111xxxxxxxxxx
  18477. usdot. */
  18478. return 2492;
  18479. }
  18480. }
  18481. else
  18482. {
  18483. if (((word >> 22) & 0x1) == 0)
  18484. {
  18485. /* 33222222222211111111110000000000
  18486. 10987654321098765432109876543210
  18487. 0x001110x00xxxxxxx1111xxxxxxxxxx
  18488. umov. */
  18489. return 152;
  18490. }
  18491. else
  18492. {
  18493. if (((word >> 23) & 0x1) == 0)
  18494. {
  18495. /* 33222222222211111111110000000000
  18496. 10987654321098765432109876543210
  18497. 0x001110010xxxxxxx1111xxxxxxxxxx
  18498. frecps. */
  18499. return 304;
  18500. }
  18501. else
  18502. {
  18503. /* 33222222222211111111110000000000
  18504. 10987654321098765432109876543210
  18505. 0x001110110xxxxxxx1111xxxxxxxxxx
  18506. frsqrts. */
  18507. return 316;
  18508. }
  18509. }
  18510. }
  18511. }
  18512. }
  18513. }
  18514. }
  18515. else
  18516. {
  18517. if (((word >> 22) & 0x1) == 0)
  18518. {
  18519. if (((word >> 23) & 0x1) == 0)
  18520. {
  18521. /* 33222222222211111111110000000000
  18522. 10987654321098765432109876543210
  18523. 1x001110000xxxxxxxxxxxxxxxxxxxxx
  18524. eor3. */
  18525. return 2422;
  18526. }
  18527. else
  18528. {
  18529. /* 33222222222211111111110000000000
  18530. 10987654321098765432109876543210
  18531. 1x001110100xxxxxxxxxxxxxxxxxxxxx
  18532. xar. */
  18533. return 2424;
  18534. }
  18535. }
  18536. else
  18537. {
  18538. if (((word >> 15) & 0x1) == 0)
  18539. {
  18540. /* 33222222222211111111110000000000
  18541. 10987654321098765432109876543210
  18542. 1x001110x10xxxxx0xxxxxxxxxxxxxxx
  18543. sm3ss1. */
  18544. return 2426;
  18545. }
  18546. else
  18547. {
  18548. if (((word >> 10) & 0x1) == 0)
  18549. {
  18550. if (((word >> 11) & 0x1) == 0)
  18551. {
  18552. if (((word >> 23) & 0x1) == 0)
  18553. {
  18554. /* 33222222222211111111110000000000
  18555. 10987654321098765432109876543210
  18556. 1x001110010xxxxx1xxx00xxxxxxxxxx
  18557. sm3tt1a. */
  18558. return 2427;
  18559. }
  18560. else
  18561. {
  18562. /* 33222222222211111111110000000000
  18563. 10987654321098765432109876543210
  18564. 1x001110110xxxxx1xxx00xxxxxxxxxx
  18565. sha512su0. */
  18566. return 2420;
  18567. }
  18568. }
  18569. else
  18570. {
  18571. /* 33222222222211111111110000000000
  18572. 10987654321098765432109876543210
  18573. 1x001110x10xxxxx1xxx10xxxxxxxxxx
  18574. sm3tt2a. */
  18575. return 2429;
  18576. }
  18577. }
  18578. else
  18579. {
  18580. if (((word >> 11) & 0x1) == 0)
  18581. {
  18582. if (((word >> 23) & 0x1) == 0)
  18583. {
  18584. /* 33222222222211111111110000000000
  18585. 10987654321098765432109876543210
  18586. 1x001110010xxxxx1xxx01xxxxxxxxxx
  18587. sm3tt1b. */
  18588. return 2428;
  18589. }
  18590. else
  18591. {
  18592. /* 33222222222211111111110000000000
  18593. 10987654321098765432109876543210
  18594. 1x001110110xxxxx1xxx01xxxxxxxxxx
  18595. sm4e. */
  18596. return 2433;
  18597. }
  18598. }
  18599. else
  18600. {
  18601. /* 33222222222211111111110000000000
  18602. 10987654321098765432109876543210
  18603. 1x001110x10xxxxx1xxx11xxxxxxxxxx
  18604. sm3tt2b. */
  18605. return 2430;
  18606. }
  18607. }
  18608. }
  18609. }
  18610. }
  18611. }
  18612. else
  18613. {
  18614. if (((word >> 10) & 0x1) == 0)
  18615. {
  18616. /* 33222222222211111111110000000000
  18617. 10987654321098765432109876543210
  18618. xx101110xx0xxxxxxxxxx0xxxxxxxxxx
  18619. ext. */
  18620. return 132;
  18621. }
  18622. else
  18623. {
  18624. if (((word >> 15) & 0x1) == 0)
  18625. {
  18626. if (((word >> 22) & 0x1) == 0)
  18627. {
  18628. /* 33222222222211111111110000000000
  18629. 10987654321098765432109876543210
  18630. xx101110x00xxxxx0xxxx1xxxxxxxxxx
  18631. ins. */
  18632. return 156;
  18633. }
  18634. else
  18635. {
  18636. if (((word >> 11) & 0x1) == 0)
  18637. {
  18638. if (((word >> 12) & 0x1) == 0)
  18639. {
  18640. if (((word >> 13) & 0x1) == 0)
  18641. {
  18642. if (((word >> 23) & 0x1) == 0)
  18643. {
  18644. /* 33222222222211111111110000000000
  18645. 10987654321098765432109876543210
  18646. xx101110010xxxxx0x0001xxxxxxxxxx
  18647. fmaxnmp. */
  18648. return 343;
  18649. }
  18650. else
  18651. {
  18652. /* 33222222222211111111110000000000
  18653. 10987654321098765432109876543210
  18654. xx101110110xxxxx0x0001xxxxxxxxxx
  18655. fminnmp. */
  18656. return 359;
  18657. }
  18658. }
  18659. else
  18660. {
  18661. if (((word >> 23) & 0x1) == 0)
  18662. {
  18663. /* 33222222222211111111110000000000
  18664. 10987654321098765432109876543210
  18665. xx101110010xxxxx0x1001xxxxxxxxxx
  18666. fcmge. */
  18667. return 349;
  18668. }
  18669. else
  18670. {
  18671. /* 33222222222211111111110000000000
  18672. 10987654321098765432109876543210
  18673. xx101110110xxxxx0x1001xxxxxxxxxx
  18674. fcmgt. */
  18675. return 363;
  18676. }
  18677. }
  18678. }
  18679. else
  18680. {
  18681. if (((word >> 13) & 0x1) == 0)
  18682. {
  18683. if (((word >> 23) & 0x1) == 0)
  18684. {
  18685. /* 33222222222211111111110000000000
  18686. 10987654321098765432109876543210
  18687. xx101110010xxxxx0x0101xxxxxxxxxx
  18688. faddp. */
  18689. return 345;
  18690. }
  18691. else
  18692. {
  18693. /* 33222222222211111111110000000000
  18694. 10987654321098765432109876543210
  18695. xx101110110xxxxx0x0101xxxxxxxxxx
  18696. fabd. */
  18697. return 361;
  18698. }
  18699. }
  18700. else
  18701. {
  18702. if (((word >> 23) & 0x1) == 0)
  18703. {
  18704. /* 33222222222211111111110000000000
  18705. 10987654321098765432109876543210
  18706. xx101110010xxxxx0x1101xxxxxxxxxx
  18707. fmaxp. */
  18708. return 353;
  18709. }
  18710. else
  18711. {
  18712. /* 33222222222211111111110000000000
  18713. 10987654321098765432109876543210
  18714. xx101110110xxxxx0x1101xxxxxxxxxx
  18715. fminp. */
  18716. return 367;
  18717. }
  18718. }
  18719. }
  18720. }
  18721. else
  18722. {
  18723. if (((word >> 12) & 0x1) == 0)
  18724. {
  18725. if (((word >> 23) & 0x1) == 0)
  18726. {
  18727. /* 33222222222211111111110000000000
  18728. 10987654321098765432109876543210
  18729. xx101110010xxxxx0xx011xxxxxxxxxx
  18730. facge. */
  18731. return 351;
  18732. }
  18733. else
  18734. {
  18735. /* 33222222222211111111110000000000
  18736. 10987654321098765432109876543210
  18737. xx101110110xxxxx0xx011xxxxxxxxxx
  18738. facgt. */
  18739. return 365;
  18740. }
  18741. }
  18742. else
  18743. {
  18744. if (((word >> 13) & 0x1) == 0)
  18745. {
  18746. /* 33222222222211111111110000000000
  18747. 10987654321098765432109876543210
  18748. xx101110x10xxxxx0x0111xxxxxxxxxx
  18749. fmul. */
  18750. return 347;
  18751. }
  18752. else
  18753. {
  18754. /* 33222222222211111111110000000000
  18755. 10987654321098765432109876543210
  18756. xx101110x10xxxxx0x1111xxxxxxxxxx
  18757. fdiv. */
  18758. return 355;
  18759. }
  18760. }
  18761. }
  18762. }
  18763. }
  18764. else
  18765. {
  18766. if (((word >> 13) & 0x1) == 0)
  18767. {
  18768. if (((word >> 14) & 0x1) == 0)
  18769. {
  18770. if (((word >> 11) & 0x1) == 0)
  18771. {
  18772. if (((word >> 12) & 0x1) == 0)
  18773. {
  18774. /* 33222222222211111111110000000000
  18775. 10987654321098765432109876543210
  18776. xx101110xx0xxxxx100001xxxxxxxxxx
  18777. sqrdmlah. */
  18778. return 370;
  18779. }
  18780. else
  18781. {
  18782. /* 33222222222211111111110000000000
  18783. 10987654321098765432109876543210
  18784. xx101110xx0xxxxx100101xxxxxxxxxx
  18785. udot. */
  18786. return 2414;
  18787. }
  18788. }
  18789. else
  18790. {
  18791. /* 33222222222211111111110000000000
  18792. 10987654321098765432109876543210
  18793. xx101110xx0xxxxx100x11xxxxxxxxxx
  18794. sqrdmlsh. */
  18795. return 371;
  18796. }
  18797. }
  18798. else
  18799. {
  18800. /* 33222222222211111111110000000000
  18801. 10987654321098765432109876543210
  18802. xx101110xx0xxxxx110xx1xxxxxxxxxx
  18803. fcmla. */
  18804. return 372;
  18805. }
  18806. }
  18807. else
  18808. {
  18809. if (((word >> 11) & 0x1) == 0)
  18810. {
  18811. if (((word >> 14) & 0x1) == 0)
  18812. {
  18813. /* 33222222222211111111110000000000
  18814. 10987654321098765432109876543210
  18815. xx101110xx0xxxxx101x01xxxxxxxxxx
  18816. ummla. */
  18817. return 2490;
  18818. }
  18819. else
  18820. {
  18821. /* 33222222222211111111110000000000
  18822. 10987654321098765432109876543210
  18823. xx101110xx0xxxxx111x01xxxxxxxxxx
  18824. fcadd. */
  18825. return 373;
  18826. }
  18827. }
  18828. else
  18829. {
  18830. if (((word >> 12) & 0x1) == 0)
  18831. {
  18832. /* 33222222222211111111110000000000
  18833. 10987654321098765432109876543210
  18834. xx101110xx0xxxxx1x1011xxxxxxxxxx
  18835. bfmmla. */
  18836. return 2506;
  18837. }
  18838. else
  18839. {
  18840. if (((word >> 23) & 0x1) == 0)
  18841. {
  18842. /* 33222222222211111111110000000000
  18843. 10987654321098765432109876543210
  18844. xx1011100x0xxxxx1x1111xxxxxxxxxx
  18845. bfdot. */
  18846. return 2504;
  18847. }
  18848. else
  18849. {
  18850. if (((word >> 30) & 0x1) == 0)
  18851. {
  18852. /* 33222222222211111111110000000000
  18853. 10987654321098765432109876543210
  18854. x01011101x0xxxxx1x1111xxxxxxxxxx
  18855. bfmlalb. */
  18856. return 2511;
  18857. }
  18858. else
  18859. {
  18860. /* 33222222222211111111110000000000
  18861. 10987654321098765432109876543210
  18862. x11011101x0xxxxx1x1111xxxxxxxxxx
  18863. bfmlalt. */
  18864. return 2510;
  18865. }
  18866. }
  18867. }
  18868. }
  18869. }
  18870. }
  18871. }
  18872. }
  18873. }
  18874. else
  18875. {
  18876. if (((word >> 29) & 0x1) == 0)
  18877. {
  18878. if (((word >> 30) & 0x1) == 0)
  18879. {
  18880. if (((word >> 16) & 0x1) == 0)
  18881. {
  18882. if (((word >> 17) & 0x1) == 0)
  18883. {
  18884. /* 33222222222211111111110000000000
  18885. 10987654321098765432109876543210
  18886. x0011110xx0xxx00xxxxxxxxxxxxxxxx
  18887. fcvtzs. */
  18888. return 764;
  18889. }
  18890. else
  18891. {
  18892. /* 33222222222211111111110000000000
  18893. 10987654321098765432109876543210
  18894. x0011110xx0xxx10xxxxxxxxxxxxxxxx
  18895. scvtf. */
  18896. return 760;
  18897. }
  18898. }
  18899. else
  18900. {
  18901. if (((word >> 17) & 0x1) == 0)
  18902. {
  18903. /* 33222222222211111111110000000000
  18904. 10987654321098765432109876543210
  18905. x0011110xx0xxx01xxxxxxxxxxxxxxxx
  18906. fcvtzu. */
  18907. return 766;
  18908. }
  18909. else
  18910. {
  18911. /* 33222222222211111111110000000000
  18912. 10987654321098765432109876543210
  18913. x0011110xx0xxx11xxxxxxxxxxxxxxxx
  18914. ucvtf. */
  18915. return 762;
  18916. }
  18917. }
  18918. }
  18919. else
  18920. {
  18921. if (((word >> 10) & 0x1) == 0)
  18922. {
  18923. if (((word >> 12) & 0x1) == 0)
  18924. {
  18925. if (((word >> 13) & 0x1) == 0)
  18926. {
  18927. if (((word >> 14) & 0x1) == 0)
  18928. {
  18929. /* 33222222222211111111110000000000
  18930. 10987654321098765432109876543210
  18931. x1011110xx0xxxxxx000x0xxxxxxxxxx
  18932. sha1c. */
  18933. return 678;
  18934. }
  18935. else
  18936. {
  18937. /* 33222222222211111111110000000000
  18938. 10987654321098765432109876543210
  18939. x1011110xx0xxxxxx100x0xxxxxxxxxx
  18940. sha256h. */
  18941. return 682;
  18942. }
  18943. }
  18944. else
  18945. {
  18946. if (((word >> 14) & 0x1) == 0)
  18947. {
  18948. /* 33222222222211111111110000000000
  18949. 10987654321098765432109876543210
  18950. x1011110xx0xxxxxx010x0xxxxxxxxxx
  18951. sha1m. */
  18952. return 680;
  18953. }
  18954. else
  18955. {
  18956. /* 33222222222211111111110000000000
  18957. 10987654321098765432109876543210
  18958. x1011110xx0xxxxxx110x0xxxxxxxxxx
  18959. sha256su1. */
  18960. return 684;
  18961. }
  18962. }
  18963. }
  18964. else
  18965. {
  18966. if (((word >> 13) & 0x1) == 0)
  18967. {
  18968. if (((word >> 14) & 0x1) == 0)
  18969. {
  18970. /* 33222222222211111111110000000000
  18971. 10987654321098765432109876543210
  18972. x1011110xx0xxxxxx001x0xxxxxxxxxx
  18973. sha1p. */
  18974. return 679;
  18975. }
  18976. else
  18977. {
  18978. /* 33222222222211111111110000000000
  18979. 10987654321098765432109876543210
  18980. x1011110xx0xxxxxx101x0xxxxxxxxxx
  18981. sha256h2. */
  18982. return 683;
  18983. }
  18984. }
  18985. else
  18986. {
  18987. /* 33222222222211111111110000000000
  18988. 10987654321098765432109876543210
  18989. x1011110xx0xxxxxxx11x0xxxxxxxxxx
  18990. sha1su0. */
  18991. return 681;
  18992. }
  18993. }
  18994. }
  18995. else
  18996. {
  18997. if (((word >> 11) & 0x1) == 0)
  18998. {
  18999. if (((word >> 13) & 0x1) == 0)
  19000. {
  19001. /* 33222222222211111111110000000000
  19002. 10987654321098765432109876543210
  19003. x1011110xx0xxxxxxx0x01xxxxxxxxxx
  19004. dup. */
  19005. return 535;
  19006. }
  19007. else
  19008. {
  19009. /* 33222222222211111111110000000000
  19010. 10987654321098765432109876543210
  19011. x1011110xx0xxxxxxx1x01xxxxxxxxxx
  19012. fcmeq. */
  19013. return 556;
  19014. }
  19015. }
  19016. else
  19017. {
  19018. if (((word >> 13) & 0x1) == 0)
  19019. {
  19020. /* 33222222222211111111110000000000
  19021. 10987654321098765432109876543210
  19022. x1011110xx0xxxxxxx0x11xxxxxxxxxx
  19023. fmulx. */
  19024. return 554;
  19025. }
  19026. else
  19027. {
  19028. if (((word >> 23) & 0x1) == 0)
  19029. {
  19030. /* 33222222222211111111110000000000
  19031. 10987654321098765432109876543210
  19032. x10111100x0xxxxxxx1x11xxxxxxxxxx
  19033. frecps. */
  19034. return 558;
  19035. }
  19036. else
  19037. {
  19038. /* 33222222222211111111110000000000
  19039. 10987654321098765432109876543210
  19040. x10111101x0xxxxxxx1x11xxxxxxxxxx
  19041. frsqrts. */
  19042. return 560;
  19043. }
  19044. }
  19045. }
  19046. }
  19047. }
  19048. }
  19049. else
  19050. {
  19051. if (((word >> 11) & 0x1) == 0)
  19052. {
  19053. if (((word >> 12) & 0x1) == 0)
  19054. {
  19055. if (((word >> 13) & 0x1) == 0)
  19056. {
  19057. /* 33222222222211111111110000000000
  19058. 10987654321098765432109876543210
  19059. xx111110xx0xxxxxxx000xxxxxxxxxxx
  19060. sqrdmlah. */
  19061. return 588;
  19062. }
  19063. else
  19064. {
  19065. if (((word >> 23) & 0x1) == 0)
  19066. {
  19067. /* 33222222222211111111110000000000
  19068. 10987654321098765432109876543210
  19069. xx1111100x0xxxxxxx100xxxxxxxxxxx
  19070. fcmge. */
  19071. return 573;
  19072. }
  19073. else
  19074. {
  19075. /* 33222222222211111111110000000000
  19076. 10987654321098765432109876543210
  19077. xx1111101x0xxxxxxx100xxxxxxxxxxx
  19078. fcmgt. */
  19079. return 579;
  19080. }
  19081. }
  19082. }
  19083. else
  19084. {
  19085. /* 33222222222211111111110000000000
  19086. 10987654321098765432109876543210
  19087. xx111110xx0xxxxxxxx10xxxxxxxxxxx
  19088. fabd. */
  19089. return 577;
  19090. }
  19091. }
  19092. else
  19093. {
  19094. if (((word >> 13) & 0x1) == 0)
  19095. {
  19096. /* 33222222222211111111110000000000
  19097. 10987654321098765432109876543210
  19098. xx111110xx0xxxxxxx0x1xxxxxxxxxxx
  19099. sqrdmlsh. */
  19100. return 589;
  19101. }
  19102. else
  19103. {
  19104. if (((word >> 23) & 0x1) == 0)
  19105. {
  19106. /* 33222222222211111111110000000000
  19107. 10987654321098765432109876543210
  19108. xx1111100x0xxxxxxx1x1xxxxxxxxxxx
  19109. facge. */
  19110. return 575;
  19111. }
  19112. else
  19113. {
  19114. /* 33222222222211111111110000000000
  19115. 10987654321098765432109876543210
  19116. xx1111101x0xxxxxxx1x1xxxxxxxxxxx
  19117. facgt. */
  19118. return 581;
  19119. }
  19120. }
  19121. }
  19122. }
  19123. }
  19124. }
  19125. else
  19126. {
  19127. if (((word >> 28) & 0x1) == 0)
  19128. {
  19129. if (((word >> 15) & 0x1) == 0)
  19130. {
  19131. if (((word >> 29) & 0x1) == 0)
  19132. {
  19133. if (((word >> 31) & 0x1) == 0)
  19134. {
  19135. if (((word >> 10) & 0x1) == 0)
  19136. {
  19137. if (((word >> 11) & 0x1) == 0)
  19138. {
  19139. if (((word >> 12) & 0x1) == 0)
  19140. {
  19141. if (((word >> 13) & 0x1) == 0)
  19142. {
  19143. if (((word >> 14) & 0x1) == 0)
  19144. {
  19145. if (((word >> 30) & 0x1) == 0)
  19146. {
  19147. /* 33222222222211111111110000000000
  19148. 10987654321098765432109876543210
  19149. 00001110xx1xxxxx000000xxxxxxxxxx
  19150. saddl. */
  19151. return 44;
  19152. }
  19153. else
  19154. {
  19155. /* 33222222222211111111110000000000
  19156. 10987654321098765432109876543210
  19157. 01001110xx1xxxxx000000xxxxxxxxxx
  19158. saddl2. */
  19159. return 45;
  19160. }
  19161. }
  19162. else
  19163. {
  19164. if (((word >> 30) & 0x1) == 0)
  19165. {
  19166. /* 33222222222211111111110000000000
  19167. 10987654321098765432109876543210
  19168. 00001110xx1xxxxx010000xxxxxxxxxx
  19169. addhn. */
  19170. return 52;
  19171. }
  19172. else
  19173. {
  19174. /* 33222222222211111111110000000000
  19175. 10987654321098765432109876543210
  19176. 01001110xx1xxxxx010000xxxxxxxxxx
  19177. addhn2. */
  19178. return 53;
  19179. }
  19180. }
  19181. }
  19182. else
  19183. {
  19184. if (((word >> 14) & 0x1) == 0)
  19185. {
  19186. if (((word >> 30) & 0x1) == 0)
  19187. {
  19188. /* 33222222222211111111110000000000
  19189. 10987654321098765432109876543210
  19190. 00001110xx1xxxxx001000xxxxxxxxxx
  19191. ssubl. */
  19192. return 48;
  19193. }
  19194. else
  19195. {
  19196. /* 33222222222211111111110000000000
  19197. 10987654321098765432109876543210
  19198. 01001110xx1xxxxx001000xxxxxxxxxx
  19199. ssubl2. */
  19200. return 49;
  19201. }
  19202. }
  19203. else
  19204. {
  19205. if (((word >> 30) & 0x1) == 0)
  19206. {
  19207. /* 33222222222211111111110000000000
  19208. 10987654321098765432109876543210
  19209. 00001110xx1xxxxx011000xxxxxxxxxx
  19210. subhn. */
  19211. return 56;
  19212. }
  19213. else
  19214. {
  19215. /* 33222222222211111111110000000000
  19216. 10987654321098765432109876543210
  19217. 01001110xx1xxxxx011000xxxxxxxxxx
  19218. subhn2. */
  19219. return 57;
  19220. }
  19221. }
  19222. }
  19223. }
  19224. else
  19225. {
  19226. if (((word >> 13) & 0x1) == 0)
  19227. {
  19228. if (((word >> 14) & 0x1) == 0)
  19229. {
  19230. if (((word >> 30) & 0x1) == 0)
  19231. {
  19232. /* 33222222222211111111110000000000
  19233. 10987654321098765432109876543210
  19234. 00001110xx1xxxxx000100xxxxxxxxxx
  19235. saddw. */
  19236. return 46;
  19237. }
  19238. else
  19239. {
  19240. /* 33222222222211111111110000000000
  19241. 10987654321098765432109876543210
  19242. 01001110xx1xxxxx000100xxxxxxxxxx
  19243. saddw2. */
  19244. return 47;
  19245. }
  19246. }
  19247. else
  19248. {
  19249. if (((word >> 30) & 0x1) == 0)
  19250. {
  19251. /* 33222222222211111111110000000000
  19252. 10987654321098765432109876543210
  19253. 00001110xx1xxxxx010100xxxxxxxxxx
  19254. sabal. */
  19255. return 54;
  19256. }
  19257. else
  19258. {
  19259. /* 33222222222211111111110000000000
  19260. 10987654321098765432109876543210
  19261. 01001110xx1xxxxx010100xxxxxxxxxx
  19262. sabal2. */
  19263. return 55;
  19264. }
  19265. }
  19266. }
  19267. else
  19268. {
  19269. if (((word >> 14) & 0x1) == 0)
  19270. {
  19271. if (((word >> 30) & 0x1) == 0)
  19272. {
  19273. /* 33222222222211111111110000000000
  19274. 10987654321098765432109876543210
  19275. 00001110xx1xxxxx001100xxxxxxxxxx
  19276. ssubw. */
  19277. return 50;
  19278. }
  19279. else
  19280. {
  19281. /* 33222222222211111111110000000000
  19282. 10987654321098765432109876543210
  19283. 01001110xx1xxxxx001100xxxxxxxxxx
  19284. ssubw2. */
  19285. return 51;
  19286. }
  19287. }
  19288. else
  19289. {
  19290. if (((word >> 30) & 0x1) == 0)
  19291. {
  19292. /* 33222222222211111111110000000000
  19293. 10987654321098765432109876543210
  19294. 00001110xx1xxxxx011100xxxxxxxxxx
  19295. sabdl. */
  19296. return 58;
  19297. }
  19298. else
  19299. {
  19300. /* 33222222222211111111110000000000
  19301. 10987654321098765432109876543210
  19302. 01001110xx1xxxxx011100xxxxxxxxxx
  19303. sabdl2. */
  19304. return 59;
  19305. }
  19306. }
  19307. }
  19308. }
  19309. }
  19310. else
  19311. {
  19312. if (((word >> 12) & 0x1) == 0)
  19313. {
  19314. if (((word >> 13) & 0x1) == 0)
  19315. {
  19316. if (((word >> 14) & 0x1) == 0)
  19317. {
  19318. /* 33222222222211111111110000000000
  19319. 10987654321098765432109876543210
  19320. 0x001110xx1xxxxx000010xxxxxxxxxx
  19321. rev64. */
  19322. return 162;
  19323. }
  19324. else
  19325. {
  19326. if (((word >> 16) & 0x1) == 0)
  19327. {
  19328. if (((word >> 19) & 0x1) == 0)
  19329. {
  19330. /* 33222222222211111111110000000000
  19331. 10987654321098765432109876543210
  19332. 0x001110xx1x0xx0010010xxxxxxxxxx
  19333. cls. */
  19334. return 166;
  19335. }
  19336. else
  19337. {
  19338. /* 33222222222211111111110000000000
  19339. 10987654321098765432109876543210
  19340. 0x001110xx1x1xx0010010xxxxxxxxxx
  19341. aese. */
  19342. return 671;
  19343. }
  19344. }
  19345. else
  19346. {
  19347. if (((word >> 30) & 0x1) == 0)
  19348. {
  19349. /* 33222222222211111111110000000000
  19350. 10987654321098765432109876543210
  19351. 00001110xx1xxxx1010010xxxxxxxxxx
  19352. sqxtn. */
  19353. return 176;
  19354. }
  19355. else
  19356. {
  19357. /* 33222222222211111111110000000000
  19358. 10987654321098765432109876543210
  19359. 01001110xx1xxxx1010010xxxxxxxxxx
  19360. sqxtn2. */
  19361. return 177;
  19362. }
  19363. }
  19364. }
  19365. }
  19366. else
  19367. {
  19368. if (((word >> 14) & 0x1) == 0)
  19369. {
  19370. if (((word >> 16) & 0x1) == 0)
  19371. {
  19372. /* 33222222222211111111110000000000
  19373. 10987654321098765432109876543210
  19374. 0x001110xx1xxxx0001010xxxxxxxxxx
  19375. saddlp. */
  19376. return 164;
  19377. }
  19378. else
  19379. {
  19380. if (((word >> 30) & 0x1) == 0)
  19381. {
  19382. /* 33222222222211111111110000000000
  19383. 10987654321098765432109876543210
  19384. 00001110xx1xxxx1001010xxxxxxxxxx
  19385. xtn. */
  19386. return 174;
  19387. }
  19388. else
  19389. {
  19390. /* 33222222222211111111110000000000
  19391. 10987654321098765432109876543210
  19392. 01001110xx1xxxx1001010xxxxxxxxxx
  19393. xtn2. */
  19394. return 175;
  19395. }
  19396. }
  19397. }
  19398. else
  19399. {
  19400. if (((word >> 16) & 0x1) == 0)
  19401. {
  19402. if (((word >> 19) & 0x1) == 0)
  19403. {
  19404. /* 33222222222211111111110000000000
  19405. 10987654321098765432109876543210
  19406. 0x001110xx1x0xx0011010xxxxxxxxxx
  19407. sadalp. */
  19408. return 168;
  19409. }
  19410. else
  19411. {
  19412. /* 33222222222211111111110000000000
  19413. 10987654321098765432109876543210
  19414. 0x001110xx1x1xx0011010xxxxxxxxxx
  19415. aesmc. */
  19416. return 673;
  19417. }
  19418. }
  19419. else
  19420. {
  19421. if (((word >> 23) & 0x1) == 0)
  19422. {
  19423. if (((word >> 30) & 0x1) == 0)
  19424. {
  19425. /* 33222222222211111111110000000000
  19426. 10987654321098765432109876543210
  19427. 000011100x1xxxx1011010xxxxxxxxxx
  19428. fcvtn. */
  19429. return 178;
  19430. }
  19431. else
  19432. {
  19433. /* 33222222222211111111110000000000
  19434. 10987654321098765432109876543210
  19435. 010011100x1xxxx1011010xxxxxxxxxx
  19436. fcvtn2. */
  19437. return 179;
  19438. }
  19439. }
  19440. else
  19441. {
  19442. if (((word >> 30) & 0x1) == 0)
  19443. {
  19444. /* 33222222222211111111110000000000
  19445. 10987654321098765432109876543210
  19446. 000011101x1xxxx1011010xxxxxxxxxx
  19447. bfcvtn. */
  19448. return 2507;
  19449. }
  19450. else
  19451. {
  19452. /* 33222222222211111111110000000000
  19453. 10987654321098765432109876543210
  19454. 010011101x1xxxx1011010xxxxxxxxxx
  19455. bfcvtn2. */
  19456. return 2508;
  19457. }
  19458. }
  19459. }
  19460. }
  19461. }
  19462. }
  19463. else
  19464. {
  19465. if (((word >> 13) & 0x1) == 0)
  19466. {
  19467. if (((word >> 14) & 0x1) == 0)
  19468. {
  19469. /* 33222222222211111111110000000000
  19470. 10987654321098765432109876543210
  19471. 0x001110xx1xxxxx000110xxxxxxxxxx
  19472. rev16. */
  19473. return 163;
  19474. }
  19475. else
  19476. {
  19477. if (((word >> 19) & 0x1) == 0)
  19478. {
  19479. /* 33222222222211111111110000000000
  19480. 10987654321098765432109876543210
  19481. 0x001110xx1x0xxx010110xxxxxxxxxx
  19482. cnt. */
  19483. return 167;
  19484. }
  19485. else
  19486. {
  19487. /* 33222222222211111111110000000000
  19488. 10987654321098765432109876543210
  19489. 0x001110xx1x1xxx010110xxxxxxxxxx
  19490. aesd. */
  19491. return 672;
  19492. }
  19493. }
  19494. }
  19495. else
  19496. {
  19497. if (((word >> 14) & 0x1) == 0)
  19498. {
  19499. if (((word >> 20) & 0x1) == 0)
  19500. {
  19501. /* 33222222222211111111110000000000
  19502. 10987654321098765432109876543210
  19503. 0x001110xx10xxxx001110xxxxxxxxxx
  19504. suqadd. */
  19505. return 165;
  19506. }
  19507. else
  19508. {
  19509. /* 33222222222211111111110000000000
  19510. 10987654321098765432109876543210
  19511. 0x001110xx11xxxx001110xxxxxxxxxx
  19512. saddlv. */
  19513. return 29;
  19514. }
  19515. }
  19516. else
  19517. {
  19518. if (((word >> 16) & 0x1) == 0)
  19519. {
  19520. if (((word >> 19) & 0x1) == 0)
  19521. {
  19522. /* 33222222222211111111110000000000
  19523. 10987654321098765432109876543210
  19524. 0x001110xx1x0xx0011110xxxxxxxxxx
  19525. sqabs. */
  19526. return 169;
  19527. }
  19528. else
  19529. {
  19530. /* 33222222222211111111110000000000
  19531. 10987654321098765432109876543210
  19532. 0x001110xx1x1xx0011110xxxxxxxxxx
  19533. aesimc. */
  19534. return 674;
  19535. }
  19536. }
  19537. else
  19538. {
  19539. if (((word >> 30) & 0x1) == 0)
  19540. {
  19541. /* 33222222222211111111110000000000
  19542. 10987654321098765432109876543210
  19543. 00001110xx1xxxx1011110xxxxxxxxxx
  19544. fcvtl. */
  19545. return 180;
  19546. }
  19547. else
  19548. {
  19549. /* 33222222222211111111110000000000
  19550. 10987654321098765432109876543210
  19551. 01001110xx1xxxx1011110xxxxxxxxxx
  19552. fcvtl2. */
  19553. return 181;
  19554. }
  19555. }
  19556. }
  19557. }
  19558. }
  19559. }
  19560. }
  19561. else
  19562. {
  19563. if (((word >> 11) & 0x1) == 0)
  19564. {
  19565. if (((word >> 12) & 0x1) == 0)
  19566. {
  19567. if (((word >> 13) & 0x1) == 0)
  19568. {
  19569. if (((word >> 14) & 0x1) == 0)
  19570. {
  19571. /* 33222222222211111111110000000000
  19572. 10987654321098765432109876543210
  19573. 0x001110xx1xxxxx000001xxxxxxxxxx
  19574. shadd. */
  19575. return 268;
  19576. }
  19577. else
  19578. {
  19579. /* 33222222222211111111110000000000
  19580. 10987654321098765432109876543210
  19581. 0x001110xx1xxxxx010001xxxxxxxxxx
  19582. sshl. */
  19583. return 275;
  19584. }
  19585. }
  19586. else
  19587. {
  19588. if (((word >> 14) & 0x1) == 0)
  19589. {
  19590. /* 33222222222211111111110000000000
  19591. 10987654321098765432109876543210
  19592. 0x001110xx1xxxxx001001xxxxxxxxxx
  19593. shsub. */
  19594. return 271;
  19595. }
  19596. else
  19597. {
  19598. /* 33222222222211111111110000000000
  19599. 10987654321098765432109876543210
  19600. 0x001110xx1xxxxx011001xxxxxxxxxx
  19601. smax. */
  19602. return 279;
  19603. }
  19604. }
  19605. }
  19606. else
  19607. {
  19608. if (((word >> 13) & 0x1) == 0)
  19609. {
  19610. if (((word >> 14) & 0x1) == 0)
  19611. {
  19612. /* 33222222222211111111110000000000
  19613. 10987654321098765432109876543210
  19614. 0x001110xx1xxxxx000101xxxxxxxxxx
  19615. srhadd. */
  19616. return 270;
  19617. }
  19618. else
  19619. {
  19620. /* 33222222222211111111110000000000
  19621. 10987654321098765432109876543210
  19622. 0x001110xx1xxxxx010101xxxxxxxxxx
  19623. srshl. */
  19624. return 277;
  19625. }
  19626. }
  19627. else
  19628. {
  19629. if (((word >> 14) & 0x1) == 0)
  19630. {
  19631. /* 33222222222211111111110000000000
  19632. 10987654321098765432109876543210
  19633. 0x001110xx1xxxxx001101xxxxxxxxxx
  19634. cmgt. */
  19635. return 273;
  19636. }
  19637. else
  19638. {
  19639. /* 33222222222211111111110000000000
  19640. 10987654321098765432109876543210
  19641. 0x001110xx1xxxxx011101xxxxxxxxxx
  19642. sabd. */
  19643. return 281;
  19644. }
  19645. }
  19646. }
  19647. }
  19648. else
  19649. {
  19650. if (((word >> 12) & 0x1) == 0)
  19651. {
  19652. if (((word >> 13) & 0x1) == 0)
  19653. {
  19654. if (((word >> 14) & 0x1) == 0)
  19655. {
  19656. /* 33222222222211111111110000000000
  19657. 10987654321098765432109876543210
  19658. 0x001110xx1xxxxx000011xxxxxxxxxx
  19659. sqadd. */
  19660. return 269;
  19661. }
  19662. else
  19663. {
  19664. /* 33222222222211111111110000000000
  19665. 10987654321098765432109876543210
  19666. 0x001110xx1xxxxx010011xxxxxxxxxx
  19667. sqshl. */
  19668. return 276;
  19669. }
  19670. }
  19671. else
  19672. {
  19673. if (((word >> 14) & 0x1) == 0)
  19674. {
  19675. /* 33222222222211111111110000000000
  19676. 10987654321098765432109876543210
  19677. 0x001110xx1xxxxx001011xxxxxxxxxx
  19678. sqsub. */
  19679. return 272;
  19680. }
  19681. else
  19682. {
  19683. /* 33222222222211111111110000000000
  19684. 10987654321098765432109876543210
  19685. 0x001110xx1xxxxx011011xxxxxxxxxx
  19686. smin. */
  19687. return 280;
  19688. }
  19689. }
  19690. }
  19691. else
  19692. {
  19693. if (((word >> 13) & 0x1) == 0)
  19694. {
  19695. if (((word >> 14) & 0x1) == 0)
  19696. {
  19697. if (((word >> 22) & 0x1) == 0)
  19698. {
  19699. if (((word >> 23) & 0x1) == 0)
  19700. {
  19701. /* 33222222222211111111110000000000
  19702. 10987654321098765432109876543210
  19703. 0x001110001xxxxx000111xxxxxxxxxx
  19704. and. */
  19705. return 305;
  19706. }
  19707. else
  19708. {
  19709. /* 33222222222211111111110000000000
  19710. 10987654321098765432109876543210
  19711. 0x001110101xxxxx000111xxxxxxxxxx
  19712. orr. */
  19713. return 317;
  19714. }
  19715. }
  19716. else
  19717. {
  19718. if (((word >> 23) & 0x1) == 0)
  19719. {
  19720. /* 33222222222211111111110000000000
  19721. 10987654321098765432109876543210
  19722. 0x001110011xxxxx000111xxxxxxxxxx
  19723. bic. */
  19724. return 306;
  19725. }
  19726. else
  19727. {
  19728. /* 33222222222211111111110000000000
  19729. 10987654321098765432109876543210
  19730. 0x001110111xxxxx000111xxxxxxxxxx
  19731. orn. */
  19732. return 319;
  19733. }
  19734. }
  19735. }
  19736. else
  19737. {
  19738. /* 33222222222211111111110000000000
  19739. 10987654321098765432109876543210
  19740. 0x001110xx1xxxxx010111xxxxxxxxxx
  19741. sqrshl. */
  19742. return 278;
  19743. }
  19744. }
  19745. else
  19746. {
  19747. if (((word >> 14) & 0x1) == 0)
  19748. {
  19749. /* 33222222222211111111110000000000
  19750. 10987654321098765432109876543210
  19751. 0x001110xx1xxxxx001111xxxxxxxxxx
  19752. cmge. */
  19753. return 274;
  19754. }
  19755. else
  19756. {
  19757. /* 33222222222211111111110000000000
  19758. 10987654321098765432109876543210
  19759. 0x001110xx1xxxxx011111xxxxxxxxxx
  19760. saba. */
  19761. return 282;
  19762. }
  19763. }
  19764. }
  19765. }
  19766. }
  19767. }
  19768. else
  19769. {
  19770. /* 33222222222211111111110000000000
  19771. 10987654321098765432109876543210
  19772. 1x001110xx1xxxxx0xxxxxxxxxxxxxxx
  19773. bcax. */
  19774. return 2425;
  19775. }
  19776. }
  19777. else
  19778. {
  19779. if (((word >> 10) & 0x1) == 0)
  19780. {
  19781. if (((word >> 11) & 0x1) == 0)
  19782. {
  19783. if (((word >> 12) & 0x1) == 0)
  19784. {
  19785. if (((word >> 13) & 0x1) == 0)
  19786. {
  19787. if (((word >> 14) & 0x1) == 0)
  19788. {
  19789. if (((word >> 30) & 0x1) == 0)
  19790. {
  19791. /* 33222222222211111111110000000000
  19792. 10987654321098765432109876543210
  19793. x0101110xx1xxxxx000000xxxxxxxxxx
  19794. uaddl. */
  19795. return 76;
  19796. }
  19797. else
  19798. {
  19799. /* 33222222222211111111110000000000
  19800. 10987654321098765432109876543210
  19801. x1101110xx1xxxxx000000xxxxxxxxxx
  19802. uaddl2. */
  19803. return 77;
  19804. }
  19805. }
  19806. else
  19807. {
  19808. if (((word >> 30) & 0x1) == 0)
  19809. {
  19810. /* 33222222222211111111110000000000
  19811. 10987654321098765432109876543210
  19812. x0101110xx1xxxxx010000xxxxxxxxxx
  19813. raddhn. */
  19814. return 84;
  19815. }
  19816. else
  19817. {
  19818. /* 33222222222211111111110000000000
  19819. 10987654321098765432109876543210
  19820. x1101110xx1xxxxx010000xxxxxxxxxx
  19821. raddhn2. */
  19822. return 85;
  19823. }
  19824. }
  19825. }
  19826. else
  19827. {
  19828. if (((word >> 14) & 0x1) == 0)
  19829. {
  19830. if (((word >> 30) & 0x1) == 0)
  19831. {
  19832. /* 33222222222211111111110000000000
  19833. 10987654321098765432109876543210
  19834. x0101110xx1xxxxx001000xxxxxxxxxx
  19835. usubl. */
  19836. return 80;
  19837. }
  19838. else
  19839. {
  19840. /* 33222222222211111111110000000000
  19841. 10987654321098765432109876543210
  19842. x1101110xx1xxxxx001000xxxxxxxxxx
  19843. usubl2. */
  19844. return 81;
  19845. }
  19846. }
  19847. else
  19848. {
  19849. if (((word >> 30) & 0x1) == 0)
  19850. {
  19851. /* 33222222222211111111110000000000
  19852. 10987654321098765432109876543210
  19853. x0101110xx1xxxxx011000xxxxxxxxxx
  19854. rsubhn. */
  19855. return 88;
  19856. }
  19857. else
  19858. {
  19859. /* 33222222222211111111110000000000
  19860. 10987654321098765432109876543210
  19861. x1101110xx1xxxxx011000xxxxxxxxxx
  19862. rsubhn2. */
  19863. return 89;
  19864. }
  19865. }
  19866. }
  19867. }
  19868. else
  19869. {
  19870. if (((word >> 13) & 0x1) == 0)
  19871. {
  19872. if (((word >> 14) & 0x1) == 0)
  19873. {
  19874. if (((word >> 30) & 0x1) == 0)
  19875. {
  19876. /* 33222222222211111111110000000000
  19877. 10987654321098765432109876543210
  19878. x0101110xx1xxxxx000100xxxxxxxxxx
  19879. uaddw. */
  19880. return 78;
  19881. }
  19882. else
  19883. {
  19884. /* 33222222222211111111110000000000
  19885. 10987654321098765432109876543210
  19886. x1101110xx1xxxxx000100xxxxxxxxxx
  19887. uaddw2. */
  19888. return 79;
  19889. }
  19890. }
  19891. else
  19892. {
  19893. if (((word >> 30) & 0x1) == 0)
  19894. {
  19895. /* 33222222222211111111110000000000
  19896. 10987654321098765432109876543210
  19897. x0101110xx1xxxxx010100xxxxxxxxxx
  19898. uabal. */
  19899. return 86;
  19900. }
  19901. else
  19902. {
  19903. /* 33222222222211111111110000000000
  19904. 10987654321098765432109876543210
  19905. x1101110xx1xxxxx010100xxxxxxxxxx
  19906. uabal2. */
  19907. return 87;
  19908. }
  19909. }
  19910. }
  19911. else
  19912. {
  19913. if (((word >> 14) & 0x1) == 0)
  19914. {
  19915. if (((word >> 30) & 0x1) == 0)
  19916. {
  19917. /* 33222222222211111111110000000000
  19918. 10987654321098765432109876543210
  19919. x0101110xx1xxxxx001100xxxxxxxxxx
  19920. usubw. */
  19921. return 82;
  19922. }
  19923. else
  19924. {
  19925. /* 33222222222211111111110000000000
  19926. 10987654321098765432109876543210
  19927. x1101110xx1xxxxx001100xxxxxxxxxx
  19928. usubw2. */
  19929. return 83;
  19930. }
  19931. }
  19932. else
  19933. {
  19934. if (((word >> 30) & 0x1) == 0)
  19935. {
  19936. /* 33222222222211111111110000000000
  19937. 10987654321098765432109876543210
  19938. x0101110xx1xxxxx011100xxxxxxxxxx
  19939. uabdl. */
  19940. return 90;
  19941. }
  19942. else
  19943. {
  19944. /* 33222222222211111111110000000000
  19945. 10987654321098765432109876543210
  19946. x1101110xx1xxxxx011100xxxxxxxxxx
  19947. uabdl2. */
  19948. return 91;
  19949. }
  19950. }
  19951. }
  19952. }
  19953. }
  19954. else
  19955. {
  19956. if (((word >> 12) & 0x1) == 0)
  19957. {
  19958. if (((word >> 13) & 0x1) == 0)
  19959. {
  19960. if (((word >> 14) & 0x1) == 0)
  19961. {
  19962. /* 33222222222211111111110000000000
  19963. 10987654321098765432109876543210
  19964. xx101110xx1xxxxx000010xxxxxxxxxx
  19965. rev32. */
  19966. return 213;
  19967. }
  19968. else
  19969. {
  19970. if (((word >> 16) & 0x1) == 0)
  19971. {
  19972. /* 33222222222211111111110000000000
  19973. 10987654321098765432109876543210
  19974. xx101110xx1xxxx0010010xxxxxxxxxx
  19975. clz. */
  19976. return 216;
  19977. }
  19978. else
  19979. {
  19980. if (((word >> 30) & 0x1) == 0)
  19981. {
  19982. /* 33222222222211111111110000000000
  19983. 10987654321098765432109876543210
  19984. x0101110xx1xxxx1010010xxxxxxxxxx
  19985. uqxtn. */
  19986. return 226;
  19987. }
  19988. else
  19989. {
  19990. /* 33222222222211111111110000000000
  19991. 10987654321098765432109876543210
  19992. x1101110xx1xxxx1010010xxxxxxxxxx
  19993. uqxtn2. */
  19994. return 227;
  19995. }
  19996. }
  19997. }
  19998. }
  19999. else
  20000. {
  20001. if (((word >> 14) & 0x1) == 0)
  20002. {
  20003. if (((word >> 16) & 0x1) == 0)
  20004. {
  20005. /* 33222222222211111111110000000000
  20006. 10987654321098765432109876543210
  20007. xx101110xx1xxxx0001010xxxxxxxxxx
  20008. uaddlp. */
  20009. return 214;
  20010. }
  20011. else
  20012. {
  20013. if (((word >> 30) & 0x1) == 0)
  20014. {
  20015. /* 33222222222211111111110000000000
  20016. 10987654321098765432109876543210
  20017. x0101110xx1xxxx1001010xxxxxxxxxx
  20018. sqxtun. */
  20019. return 222;
  20020. }
  20021. else
  20022. {
  20023. /* 33222222222211111111110000000000
  20024. 10987654321098765432109876543210
  20025. x1101110xx1xxxx1001010xxxxxxxxxx
  20026. sqxtun2. */
  20027. return 223;
  20028. }
  20029. }
  20030. }
  20031. else
  20032. {
  20033. if (((word >> 16) & 0x1) == 0)
  20034. {
  20035. /* 33222222222211111111110000000000
  20036. 10987654321098765432109876543210
  20037. xx101110xx1xxxx0011010xxxxxxxxxx
  20038. uadalp. */
  20039. return 217;
  20040. }
  20041. else
  20042. {
  20043. if (((word >> 30) & 0x1) == 0)
  20044. {
  20045. /* 33222222222211111111110000000000
  20046. 10987654321098765432109876543210
  20047. x0101110xx1xxxx1011010xxxxxxxxxx
  20048. fcvtxn. */
  20049. return 228;
  20050. }
  20051. else
  20052. {
  20053. /* 33222222222211111111110000000000
  20054. 10987654321098765432109876543210
  20055. x1101110xx1xxxx1011010xxxxxxxxxx
  20056. fcvtxn2. */
  20057. return 229;
  20058. }
  20059. }
  20060. }
  20061. }
  20062. }
  20063. else
  20064. {
  20065. if (((word >> 13) & 0x1) == 0)
  20066. {
  20067. if (((word >> 22) & 0x1) == 0)
  20068. {
  20069. /* 33222222222211111111110000000000
  20070. 10987654321098765432109876543210
  20071. xx101110x01xxxxx0x0110xxxxxxxxxx
  20072. not. */
  20073. return 242;
  20074. }
  20075. else
  20076. {
  20077. /* 33222222222211111111110000000000
  20078. 10987654321098765432109876543210
  20079. xx101110x11xxxxx0x0110xxxxxxxxxx
  20080. rbit. */
  20081. return 244;
  20082. }
  20083. }
  20084. else
  20085. {
  20086. if (((word >> 14) & 0x1) == 0)
  20087. {
  20088. if (((word >> 16) & 0x1) == 0)
  20089. {
  20090. if (((word >> 20) & 0x1) == 0)
  20091. {
  20092. /* 33222222222211111111110000000000
  20093. 10987654321098765432109876543210
  20094. xx101110xx10xxx0001110xxxxxxxxxx
  20095. usqadd. */
  20096. return 215;
  20097. }
  20098. else
  20099. {
  20100. /* 33222222222211111111110000000000
  20101. 10987654321098765432109876543210
  20102. xx101110xx11xxx0001110xxxxxxxxxx
  20103. uaddlv. */
  20104. return 33;
  20105. }
  20106. }
  20107. else
  20108. {
  20109. if (((word >> 30) & 0x1) == 0)
  20110. {
  20111. /* 33222222222211111111110000000000
  20112. 10987654321098765432109876543210
  20113. x0101110xx1xxxx1001110xxxxxxxxxx
  20114. shll. */
  20115. return 224;
  20116. }
  20117. else
  20118. {
  20119. /* 33222222222211111111110000000000
  20120. 10987654321098765432109876543210
  20121. x1101110xx1xxxx1001110xxxxxxxxxx
  20122. shll2. */
  20123. return 225;
  20124. }
  20125. }
  20126. }
  20127. else
  20128. {
  20129. /* 33222222222211111111110000000000
  20130. 10987654321098765432109876543210
  20131. xx101110xx1xxxxx011110xxxxxxxxxx
  20132. sqneg. */
  20133. return 218;
  20134. }
  20135. }
  20136. }
  20137. }
  20138. }
  20139. else
  20140. {
  20141. if (((word >> 11) & 0x1) == 0)
  20142. {
  20143. if (((word >> 12) & 0x1) == 0)
  20144. {
  20145. if (((word >> 13) & 0x1) == 0)
  20146. {
  20147. if (((word >> 14) & 0x1) == 0)
  20148. {
  20149. /* 33222222222211111111110000000000
  20150. 10987654321098765432109876543210
  20151. xx101110xx1xxxxx000001xxxxxxxxxx
  20152. uhadd. */
  20153. return 320;
  20154. }
  20155. else
  20156. {
  20157. /* 33222222222211111111110000000000
  20158. 10987654321098765432109876543210
  20159. xx101110xx1xxxxx010001xxxxxxxxxx
  20160. ushl. */
  20161. return 327;
  20162. }
  20163. }
  20164. else
  20165. {
  20166. if (((word >> 14) & 0x1) == 0)
  20167. {
  20168. /* 33222222222211111111110000000000
  20169. 10987654321098765432109876543210
  20170. xx101110xx1xxxxx001001xxxxxxxxxx
  20171. uhsub. */
  20172. return 323;
  20173. }
  20174. else
  20175. {
  20176. /* 33222222222211111111110000000000
  20177. 10987654321098765432109876543210
  20178. xx101110xx1xxxxx011001xxxxxxxxxx
  20179. umax. */
  20180. return 331;
  20181. }
  20182. }
  20183. }
  20184. else
  20185. {
  20186. if (((word >> 13) & 0x1) == 0)
  20187. {
  20188. if (((word >> 14) & 0x1) == 0)
  20189. {
  20190. /* 33222222222211111111110000000000
  20191. 10987654321098765432109876543210
  20192. xx101110xx1xxxxx000101xxxxxxxxxx
  20193. urhadd. */
  20194. return 322;
  20195. }
  20196. else
  20197. {
  20198. /* 33222222222211111111110000000000
  20199. 10987654321098765432109876543210
  20200. xx101110xx1xxxxx010101xxxxxxxxxx
  20201. urshl. */
  20202. return 329;
  20203. }
  20204. }
  20205. else
  20206. {
  20207. if (((word >> 14) & 0x1) == 0)
  20208. {
  20209. /* 33222222222211111111110000000000
  20210. 10987654321098765432109876543210
  20211. xx101110xx1xxxxx001101xxxxxxxxxx
  20212. cmhi. */
  20213. return 325;
  20214. }
  20215. else
  20216. {
  20217. /* 33222222222211111111110000000000
  20218. 10987654321098765432109876543210
  20219. xx101110xx1xxxxx011101xxxxxxxxxx
  20220. uabd. */
  20221. return 333;
  20222. }
  20223. }
  20224. }
  20225. }
  20226. else
  20227. {
  20228. if (((word >> 12) & 0x1) == 0)
  20229. {
  20230. if (((word >> 13) & 0x1) == 0)
  20231. {
  20232. if (((word >> 14) & 0x1) == 0)
  20233. {
  20234. /* 33222222222211111111110000000000
  20235. 10987654321098765432109876543210
  20236. xx101110xx1xxxxx000011xxxxxxxxxx
  20237. uqadd. */
  20238. return 321;
  20239. }
  20240. else
  20241. {
  20242. /* 33222222222211111111110000000000
  20243. 10987654321098765432109876543210
  20244. xx101110xx1xxxxx010011xxxxxxxxxx
  20245. uqshl. */
  20246. return 328;
  20247. }
  20248. }
  20249. else
  20250. {
  20251. if (((word >> 14) & 0x1) == 0)
  20252. {
  20253. /* 33222222222211111111110000000000
  20254. 10987654321098765432109876543210
  20255. xx101110xx1xxxxx001011xxxxxxxxxx
  20256. uqsub. */
  20257. return 324;
  20258. }
  20259. else
  20260. {
  20261. /* 33222222222211111111110000000000
  20262. 10987654321098765432109876543210
  20263. xx101110xx1xxxxx011011xxxxxxxxxx
  20264. umin. */
  20265. return 332;
  20266. }
  20267. }
  20268. }
  20269. else
  20270. {
  20271. if (((word >> 13) & 0x1) == 0)
  20272. {
  20273. if (((word >> 14) & 0x1) == 0)
  20274. {
  20275. if (((word >> 22) & 0x1) == 0)
  20276. {
  20277. if (((word >> 23) & 0x1) == 0)
  20278. {
  20279. /* 33222222222211111111110000000000
  20280. 10987654321098765432109876543210
  20281. xx101110001xxxxx000111xxxxxxxxxx
  20282. eor. */
  20283. return 356;
  20284. }
  20285. else
  20286. {
  20287. /* 33222222222211111111110000000000
  20288. 10987654321098765432109876543210
  20289. xx101110101xxxxx000111xxxxxxxxxx
  20290. bit. */
  20291. return 368;
  20292. }
  20293. }
  20294. else
  20295. {
  20296. if (((word >> 23) & 0x1) == 0)
  20297. {
  20298. /* 33222222222211111111110000000000
  20299. 10987654321098765432109876543210
  20300. xx101110011xxxxx000111xxxxxxxxxx
  20301. bsl. */
  20302. return 357;
  20303. }
  20304. else
  20305. {
  20306. /* 33222222222211111111110000000000
  20307. 10987654321098765432109876543210
  20308. xx101110111xxxxx000111xxxxxxxxxx
  20309. bif. */
  20310. return 369;
  20311. }
  20312. }
  20313. }
  20314. else
  20315. {
  20316. /* 33222222222211111111110000000000
  20317. 10987654321098765432109876543210
  20318. xx101110xx1xxxxx010111xxxxxxxxxx
  20319. uqrshl. */
  20320. return 330;
  20321. }
  20322. }
  20323. else
  20324. {
  20325. if (((word >> 14) & 0x1) == 0)
  20326. {
  20327. /* 33222222222211111111110000000000
  20328. 10987654321098765432109876543210
  20329. xx101110xx1xxxxx001111xxxxxxxxxx
  20330. cmhs. */
  20331. return 326;
  20332. }
  20333. else
  20334. {
  20335. /* 33222222222211111111110000000000
  20336. 10987654321098765432109876543210
  20337. xx101110xx1xxxxx011111xxxxxxxxxx
  20338. uaba. */
  20339. return 334;
  20340. }
  20341. }
  20342. }
  20343. }
  20344. }
  20345. }
  20346. }
  20347. else
  20348. {
  20349. if (((word >> 10) & 0x1) == 0)
  20350. {
  20351. if (((word >> 11) & 0x1) == 0)
  20352. {
  20353. if (((word >> 12) & 0x1) == 0)
  20354. {
  20355. if (((word >> 13) & 0x1) == 0)
  20356. {
  20357. if (((word >> 14) & 0x1) == 0)
  20358. {
  20359. if (((word >> 29) & 0x1) == 0)
  20360. {
  20361. if (((word >> 30) & 0x1) == 0)
  20362. {
  20363. /* 33222222222211111111110000000000
  20364. 10987654321098765432109876543210
  20365. x0001110xx1xxxxx100000xxxxxxxxxx
  20366. smlal. */
  20367. return 60;
  20368. }
  20369. else
  20370. {
  20371. if (((word >> 31) & 0x1) == 0)
  20372. {
  20373. /* 33222222222211111111110000000000
  20374. 10987654321098765432109876543210
  20375. 01001110xx1xxxxx100000xxxxxxxxxx
  20376. smlal2. */
  20377. return 61;
  20378. }
  20379. else
  20380. {
  20381. /* 33222222222211111111110000000000
  20382. 10987654321098765432109876543210
  20383. 11001110xx1xxxxx100000xxxxxxxxxx
  20384. sha512h. */
  20385. return 2418;
  20386. }
  20387. }
  20388. }
  20389. else
  20390. {
  20391. if (((word >> 30) & 0x1) == 0)
  20392. {
  20393. /* 33222222222211111111110000000000
  20394. 10987654321098765432109876543210
  20395. x0101110xx1xxxxx100000xxxxxxxxxx
  20396. umlal. */
  20397. return 92;
  20398. }
  20399. else
  20400. {
  20401. /* 33222222222211111111110000000000
  20402. 10987654321098765432109876543210
  20403. x1101110xx1xxxxx100000xxxxxxxxxx
  20404. umlal2. */
  20405. return 93;
  20406. }
  20407. }
  20408. }
  20409. else
  20410. {
  20411. if (((word >> 29) & 0x1) == 0)
  20412. {
  20413. if (((word >> 30) & 0x1) == 0)
  20414. {
  20415. /* 33222222222211111111110000000000
  20416. 10987654321098765432109876543210
  20417. x0001110xx1xxxxx110000xxxxxxxxxx
  20418. smull. */
  20419. return 68;
  20420. }
  20421. else
  20422. {
  20423. if (((word >> 31) & 0x1) == 0)
  20424. {
  20425. /* 33222222222211111111110000000000
  20426. 10987654321098765432109876543210
  20427. 01001110xx1xxxxx110000xxxxxxxxxx
  20428. smull2. */
  20429. return 69;
  20430. }
  20431. else
  20432. {
  20433. /* 33222222222211111111110000000000
  20434. 10987654321098765432109876543210
  20435. 11001110xx1xxxxx110000xxxxxxxxxx
  20436. sm3partw1. */
  20437. return 2431;
  20438. }
  20439. }
  20440. }
  20441. else
  20442. {
  20443. if (((word >> 30) & 0x1) == 0)
  20444. {
  20445. /* 33222222222211111111110000000000
  20446. 10987654321098765432109876543210
  20447. x0101110xx1xxxxx110000xxxxxxxxxx
  20448. umull. */
  20449. return 96;
  20450. }
  20451. else
  20452. {
  20453. /* 33222222222211111111110000000000
  20454. 10987654321098765432109876543210
  20455. x1101110xx1xxxxx110000xxxxxxxxxx
  20456. umull2. */
  20457. return 97;
  20458. }
  20459. }
  20460. }
  20461. }
  20462. else
  20463. {
  20464. if (((word >> 14) & 0x1) == 0)
  20465. {
  20466. if (((word >> 29) & 0x1) == 0)
  20467. {
  20468. if (((word >> 30) & 0x1) == 0)
  20469. {
  20470. /* 33222222222211111111110000000000
  20471. 10987654321098765432109876543210
  20472. x0001110xx1xxxxx101000xxxxxxxxxx
  20473. smlsl. */
  20474. return 64;
  20475. }
  20476. else
  20477. {
  20478. /* 33222222222211111111110000000000
  20479. 10987654321098765432109876543210
  20480. x1001110xx1xxxxx101000xxxxxxxxxx
  20481. smlsl2. */
  20482. return 65;
  20483. }
  20484. }
  20485. else
  20486. {
  20487. if (((word >> 30) & 0x1) == 0)
  20488. {
  20489. /* 33222222222211111111110000000000
  20490. 10987654321098765432109876543210
  20491. x0101110xx1xxxxx101000xxxxxxxxxx
  20492. umlsl. */
  20493. return 94;
  20494. }
  20495. else
  20496. {
  20497. /* 33222222222211111111110000000000
  20498. 10987654321098765432109876543210
  20499. x1101110xx1xxxxx101000xxxxxxxxxx
  20500. umlsl2. */
  20501. return 95;
  20502. }
  20503. }
  20504. }
  20505. else
  20506. {
  20507. if (((word >> 22) & 0x1) == 0)
  20508. {
  20509. if (((word >> 30) & 0x1) == 0)
  20510. {
  20511. /* 33222222222211111111110000000000
  20512. 10987654321098765432109876543210
  20513. x0x01110x01xxxxx111000xxxxxxxxxx
  20514. pmull. */
  20515. return 72;
  20516. }
  20517. else
  20518. {
  20519. /* 33222222222211111111110000000000
  20520. 10987654321098765432109876543210
  20521. x1x01110x01xxxxx111000xxxxxxxxxx
  20522. pmull2. */
  20523. return 74;
  20524. }
  20525. }
  20526. else
  20527. {
  20528. if (((word >> 30) & 0x1) == 0)
  20529. {
  20530. /* 33222222222211111111110000000000
  20531. 10987654321098765432109876543210
  20532. x0x01110x11xxxxx111000xxxxxxxxxx
  20533. pmull. */
  20534. return 73;
  20535. }
  20536. else
  20537. {
  20538. /* 33222222222211111111110000000000
  20539. 10987654321098765432109876543210
  20540. x1x01110x11xxxxx111000xxxxxxxxxx
  20541. pmull2. */
  20542. return 75;
  20543. }
  20544. }
  20545. }
  20546. }
  20547. }
  20548. else
  20549. {
  20550. if (((word >> 13) & 0x1) == 0)
  20551. {
  20552. if (((word >> 14) & 0x1) == 0)
  20553. {
  20554. if (((word >> 30) & 0x1) == 0)
  20555. {
  20556. /* 33222222222211111111110000000000
  20557. 10987654321098765432109876543210
  20558. x0x01110xx1xxxxx100100xxxxxxxxxx
  20559. sqdmlal. */
  20560. return 62;
  20561. }
  20562. else
  20563. {
  20564. /* 33222222222211111111110000000000
  20565. 10987654321098765432109876543210
  20566. x1x01110xx1xxxxx100100xxxxxxxxxx
  20567. sqdmlal2. */
  20568. return 63;
  20569. }
  20570. }
  20571. else
  20572. {
  20573. if (((word >> 30) & 0x1) == 0)
  20574. {
  20575. /* 33222222222211111111110000000000
  20576. 10987654321098765432109876543210
  20577. x0x01110xx1xxxxx110100xxxxxxxxxx
  20578. sqdmull. */
  20579. return 70;
  20580. }
  20581. else
  20582. {
  20583. /* 33222222222211111111110000000000
  20584. 10987654321098765432109876543210
  20585. x1x01110xx1xxxxx110100xxxxxxxxxx
  20586. sqdmull2. */
  20587. return 71;
  20588. }
  20589. }
  20590. }
  20591. else
  20592. {
  20593. if (((word >> 30) & 0x1) == 0)
  20594. {
  20595. /* 33222222222211111111110000000000
  20596. 10987654321098765432109876543210
  20597. x0x01110xx1xxxxx1x1100xxxxxxxxxx
  20598. sqdmlsl. */
  20599. return 66;
  20600. }
  20601. else
  20602. {
  20603. /* 33222222222211111111110000000000
  20604. 10987654321098765432109876543210
  20605. x1x01110xx1xxxxx1x1100xxxxxxxxxx
  20606. sqdmlsl2. */
  20607. return 67;
  20608. }
  20609. }
  20610. }
  20611. }
  20612. else
  20613. {
  20614. if (((word >> 12) & 0x1) == 0)
  20615. {
  20616. if (((word >> 13) & 0x1) == 0)
  20617. {
  20618. if (((word >> 14) & 0x1) == 0)
  20619. {
  20620. if (((word >> 29) & 0x1) == 0)
  20621. {
  20622. if (((word >> 31) & 0x1) == 0)
  20623. {
  20624. if (((word >> 16) & 0x1) == 0)
  20625. {
  20626. /* 33222222222211111111110000000000
  20627. 10987654321098765432109876543210
  20628. 0x001110xx1xxxx0100010xxxxxxxxxx
  20629. cmgt. */
  20630. return 170;
  20631. }
  20632. else
  20633. {
  20634. if (((word >> 19) & 0x1) == 0)
  20635. {
  20636. if (((word >> 23) & 0x1) == 0)
  20637. {
  20638. /* 33222222222211111111110000000000
  20639. 10987654321098765432109876543210
  20640. 0x0011100x1x0xx1100010xxxxxxxxxx
  20641. frintn. */
  20642. return 182;
  20643. }
  20644. else
  20645. {
  20646. /* 33222222222211111111110000000000
  20647. 10987654321098765432109876543210
  20648. 0x0011101x1x0xx1100010xxxxxxxxxx
  20649. frintp. */
  20650. return 202;
  20651. }
  20652. }
  20653. else
  20654. {
  20655. if (((word >> 23) & 0x1) == 0)
  20656. {
  20657. /* 33222222222211111111110000000000
  20658. 10987654321098765432109876543210
  20659. 0x0011100x1x1xx1100010xxxxxxxxxx
  20660. frintn. */
  20661. return 183;
  20662. }
  20663. else
  20664. {
  20665. /* 33222222222211111111110000000000
  20666. 10987654321098765432109876543210
  20667. 0x0011101x1x1xx1100010xxxxxxxxxx
  20668. frintp. */
  20669. return 203;
  20670. }
  20671. }
  20672. }
  20673. }
  20674. else
  20675. {
  20676. /* 33222222222211111111110000000000
  20677. 10987654321098765432109876543210
  20678. 1x001110xx1xxxxx100010xxxxxxxxxx
  20679. sha512su1. */
  20680. return 2421;
  20681. }
  20682. }
  20683. else
  20684. {
  20685. if (((word >> 16) & 0x1) == 0)
  20686. {
  20687. /* 33222222222211111111110000000000
  20688. 10987654321098765432109876543210
  20689. xx101110xx1xxxx0100010xxxxxxxxxx
  20690. cmge. */
  20691. return 219;
  20692. }
  20693. else
  20694. {
  20695. if (((word >> 19) & 0x1) == 0)
  20696. {
  20697. /* 33222222222211111111110000000000
  20698. 10987654321098765432109876543210
  20699. xx101110xx1x0xx1100010xxxxxxxxxx
  20700. frinta. */
  20701. return 230;
  20702. }
  20703. else
  20704. {
  20705. /* 33222222222211111111110000000000
  20706. 10987654321098765432109876543210
  20707. xx101110xx1x1xx1100010xxxxxxxxxx
  20708. frinta. */
  20709. return 231;
  20710. }
  20711. }
  20712. }
  20713. }
  20714. else
  20715. {
  20716. if (((word >> 23) & 0x1) == 0)
  20717. {
  20718. if (((word >> 29) & 0x1) == 0)
  20719. {
  20720. if (((word >> 31) & 0x1) == 0)
  20721. {
  20722. if (((word >> 16) & 0x1) == 0)
  20723. {
  20724. /* 33222222222211111111110000000000
  20725. 10987654321098765432109876543210
  20726. 0x0011100x1xxxx0110010xxxxxxxxxx
  20727. fmaxnmv. */
  20728. return 37;
  20729. }
  20730. else
  20731. {
  20732. if (((word >> 19) & 0x1) == 0)
  20733. {
  20734. /* 33222222222211111111110000000000
  20735. 10987654321098765432109876543210
  20736. 0x0011100x1x0xx1110010xxxxxxxxxx
  20737. fcvtas. */
  20738. return 190;
  20739. }
  20740. else
  20741. {
  20742. /* 33222222222211111111110000000000
  20743. 10987654321098765432109876543210
  20744. 0x0011100x1x1xx1110010xxxxxxxxxx
  20745. fcvtas. */
  20746. return 191;
  20747. }
  20748. }
  20749. }
  20750. else
  20751. {
  20752. /* 33222222222211111111110000000000
  20753. 10987654321098765432109876543210
  20754. 1x0011100x1xxxxx110010xxxxxxxxxx
  20755. sm4ekey. */
  20756. return 2434;
  20757. }
  20758. }
  20759. else
  20760. {
  20761. if (((word >> 16) & 0x1) == 0)
  20762. {
  20763. /* 33222222222211111111110000000000
  20764. 10987654321098765432109876543210
  20765. xx1011100x1xxxx0110010xxxxxxxxxx
  20766. fmaxnmv. */
  20767. return 36;
  20768. }
  20769. else
  20770. {
  20771. if (((word >> 19) & 0x1) == 0)
  20772. {
  20773. /* 33222222222211111111110000000000
  20774. 10987654321098765432109876543210
  20775. xx1011100x1x0xx1110010xxxxxxxxxx
  20776. fcvtau. */
  20777. return 238;
  20778. }
  20779. else
  20780. {
  20781. /* 33222222222211111111110000000000
  20782. 10987654321098765432109876543210
  20783. xx1011100x1x1xx1110010xxxxxxxxxx
  20784. fcvtau. */
  20785. return 239;
  20786. }
  20787. }
  20788. }
  20789. }
  20790. else
  20791. {
  20792. if (((word >> 16) & 0x1) == 0)
  20793. {
  20794. if (((word >> 19) & 0x1) == 0)
  20795. {
  20796. if (((word >> 20) & 0x1) == 0)
  20797. {
  20798. if (((word >> 29) & 0x1) == 0)
  20799. {
  20800. /* 33222222222211111111110000000000
  20801. 10987654321098765432109876543210
  20802. xx0011101x100xx0110010xxxxxxxxxx
  20803. fcmgt. */
  20804. return 194;
  20805. }
  20806. else
  20807. {
  20808. /* 33222222222211111111110000000000
  20809. 10987654321098765432109876543210
  20810. xx1011101x100xx0110010xxxxxxxxxx
  20811. fcmge. */
  20812. return 245;
  20813. }
  20814. }
  20815. else
  20816. {
  20817. if (((word >> 29) & 0x1) == 0)
  20818. {
  20819. /* 33222222222211111111110000000000
  20820. 10987654321098765432109876543210
  20821. xx0011101x110xx0110010xxxxxxxxxx
  20822. fminnmv. */
  20823. return 41;
  20824. }
  20825. else
  20826. {
  20827. /* 33222222222211111111110000000000
  20828. 10987654321098765432109876543210
  20829. xx1011101x110xx0110010xxxxxxxxxx
  20830. fminnmv. */
  20831. return 40;
  20832. }
  20833. }
  20834. }
  20835. else
  20836. {
  20837. if (((word >> 29) & 0x1) == 0)
  20838. {
  20839. /* 33222222222211111111110000000000
  20840. 10987654321098765432109876543210
  20841. xx0011101x1x1xx0110010xxxxxxxxxx
  20842. fcmgt. */
  20843. return 195;
  20844. }
  20845. else
  20846. {
  20847. /* 33222222222211111111110000000000
  20848. 10987654321098765432109876543210
  20849. xx1011101x1x1xx0110010xxxxxxxxxx
  20850. fcmge. */
  20851. return 246;
  20852. }
  20853. }
  20854. }
  20855. else
  20856. {
  20857. if (((word >> 29) & 0x1) == 0)
  20858. {
  20859. /* 33222222222211111111110000000000
  20860. 10987654321098765432109876543210
  20861. xx0011101x1xxxx1110010xxxxxxxxxx
  20862. urecpe. */
  20863. return 210;
  20864. }
  20865. else
  20866. {
  20867. /* 33222222222211111111110000000000
  20868. 10987654321098765432109876543210
  20869. xx1011101x1xxxx1110010xxxxxxxxxx
  20870. ursqrte. */
  20871. return 257;
  20872. }
  20873. }
  20874. }
  20875. }
  20876. }
  20877. else
  20878. {
  20879. if (((word >> 14) & 0x1) == 0)
  20880. {
  20881. if (((word >> 16) & 0x1) == 0)
  20882. {
  20883. if (((word >> 20) & 0x1) == 0)
  20884. {
  20885. /* 33222222222211111111110000000000
  20886. 10987654321098765432109876543210
  20887. xxx01110xx10xxx0101010xxxxxxxxxx
  20888. cmlt. */
  20889. return 172;
  20890. }
  20891. else
  20892. {
  20893. if (((word >> 29) & 0x1) == 0)
  20894. {
  20895. /* 33222222222211111111110000000000
  20896. 10987654321098765432109876543210
  20897. xx001110xx11xxx0101010xxxxxxxxxx
  20898. smaxv. */
  20899. return 30;
  20900. }
  20901. else
  20902. {
  20903. /* 33222222222211111111110000000000
  20904. 10987654321098765432109876543210
  20905. xx101110xx11xxx0101010xxxxxxxxxx
  20906. umaxv. */
  20907. return 34;
  20908. }
  20909. }
  20910. }
  20911. else
  20912. {
  20913. if (((word >> 19) & 0x1) == 0)
  20914. {
  20915. if (((word >> 20) & 0x1) == 0)
  20916. {
  20917. if (((word >> 23) & 0x1) == 0)
  20918. {
  20919. if (((word >> 29) & 0x1) == 0)
  20920. {
  20921. /* 33222222222211111111110000000000
  20922. 10987654321098765432109876543210
  20923. xx0011100x100xx1101010xxxxxxxxxx
  20924. fcvtns. */
  20925. return 186;
  20926. }
  20927. else
  20928. {
  20929. /* 33222222222211111111110000000000
  20930. 10987654321098765432109876543210
  20931. xx1011100x100xx1101010xxxxxxxxxx
  20932. fcvtnu. */
  20933. return 234;
  20934. }
  20935. }
  20936. else
  20937. {
  20938. if (((word >> 29) & 0x1) == 0)
  20939. {
  20940. /* 33222222222211111111110000000000
  20941. 10987654321098765432109876543210
  20942. xx0011101x100xx1101010xxxxxxxxxx
  20943. fcvtps. */
  20944. return 206;
  20945. }
  20946. else
  20947. {
  20948. /* 33222222222211111111110000000000
  20949. 10987654321098765432109876543210
  20950. xx1011101x100xx1101010xxxxxxxxxx
  20951. fcvtpu. */
  20952. return 253;
  20953. }
  20954. }
  20955. }
  20956. else
  20957. {
  20958. if (((word >> 29) & 0x1) == 0)
  20959. {
  20960. /* 33222222222211111111110000000000
  20961. 10987654321098765432109876543210
  20962. xx001110xx110xx1101010xxxxxxxxxx
  20963. sminv. */
  20964. return 31;
  20965. }
  20966. else
  20967. {
  20968. /* 33222222222211111111110000000000
  20969. 10987654321098765432109876543210
  20970. xx101110xx110xx1101010xxxxxxxxxx
  20971. uminv. */
  20972. return 35;
  20973. }
  20974. }
  20975. }
  20976. else
  20977. {
  20978. if (((word >> 23) & 0x1) == 0)
  20979. {
  20980. if (((word >> 29) & 0x1) == 0)
  20981. {
  20982. /* 33222222222211111111110000000000
  20983. 10987654321098765432109876543210
  20984. xx0011100x1x1xx1101010xxxxxxxxxx
  20985. fcvtns. */
  20986. return 187;
  20987. }
  20988. else
  20989. {
  20990. /* 33222222222211111111110000000000
  20991. 10987654321098765432109876543210
  20992. xx1011100x1x1xx1101010xxxxxxxxxx
  20993. fcvtnu. */
  20994. return 235;
  20995. }
  20996. }
  20997. else
  20998. {
  20999. if (((word >> 29) & 0x1) == 0)
  21000. {
  21001. /* 33222222222211111111110000000000
  21002. 10987654321098765432109876543210
  21003. xx0011101x1x1xx1101010xxxxxxxxxx
  21004. fcvtps. */
  21005. return 207;
  21006. }
  21007. else
  21008. {
  21009. /* 33222222222211111111110000000000
  21010. 10987654321098765432109876543210
  21011. xx1011101x1x1xx1101010xxxxxxxxxx
  21012. fcvtpu. */
  21013. return 254;
  21014. }
  21015. }
  21016. }
  21017. }
  21018. }
  21019. else
  21020. {
  21021. if (((word >> 16) & 0x1) == 0)
  21022. {
  21023. if (((word >> 19) & 0x1) == 0)
  21024. {
  21025. /* 33222222222211111111110000000000
  21026. 10987654321098765432109876543210
  21027. xxx01110xx1x0xx0111010xxxxxxxxxx
  21028. fcmlt. */
  21029. return 198;
  21030. }
  21031. else
  21032. {
  21033. /* 33222222222211111111110000000000
  21034. 10987654321098765432109876543210
  21035. xxx01110xx1x1xx0111010xxxxxxxxxx
  21036. fcmlt. */
  21037. return 199;
  21038. }
  21039. }
  21040. else
  21041. {
  21042. if (((word >> 29) & 0x1) == 0)
  21043. {
  21044. /* 33222222222211111111110000000000
  21045. 10987654321098765432109876543210
  21046. xx001110xx1xxxx1111010xxxxxxxxxx
  21047. frint32z. */
  21048. return 158;
  21049. }
  21050. else
  21051. {
  21052. /* 33222222222211111111110000000000
  21053. 10987654321098765432109876543210
  21054. xx101110xx1xxxx1111010xxxxxxxxxx
  21055. frint32x. */
  21056. return 159;
  21057. }
  21058. }
  21059. }
  21060. }
  21061. }
  21062. else
  21063. {
  21064. if (((word >> 13) & 0x1) == 0)
  21065. {
  21066. if (((word >> 14) & 0x1) == 0)
  21067. {
  21068. if (((word >> 16) & 0x1) == 0)
  21069. {
  21070. if (((word >> 29) & 0x1) == 0)
  21071. {
  21072. /* 33222222222211111111110000000000
  21073. 10987654321098765432109876543210
  21074. xx001110xx1xxxx0100110xxxxxxxxxx
  21075. cmeq. */
  21076. return 171;
  21077. }
  21078. else
  21079. {
  21080. /* 33222222222211111111110000000000
  21081. 10987654321098765432109876543210
  21082. xx101110xx1xxxx0100110xxxxxxxxxx
  21083. cmle. */
  21084. return 220;
  21085. }
  21086. }
  21087. else
  21088. {
  21089. if (((word >> 19) & 0x1) == 0)
  21090. {
  21091. if (((word >> 23) & 0x1) == 0)
  21092. {
  21093. if (((word >> 29) & 0x1) == 0)
  21094. {
  21095. /* 33222222222211111111110000000000
  21096. 10987654321098765432109876543210
  21097. xx0011100x1x0xx1100110xxxxxxxxxx
  21098. frintm. */
  21099. return 184;
  21100. }
  21101. else
  21102. {
  21103. /* 33222222222211111111110000000000
  21104. 10987654321098765432109876543210
  21105. xx1011100x1x0xx1100110xxxxxxxxxx
  21106. frintx. */
  21107. return 232;
  21108. }
  21109. }
  21110. else
  21111. {
  21112. if (((word >> 29) & 0x1) == 0)
  21113. {
  21114. /* 33222222222211111111110000000000
  21115. 10987654321098765432109876543210
  21116. xx0011101x1x0xx1100110xxxxxxxxxx
  21117. frintz. */
  21118. return 204;
  21119. }
  21120. else
  21121. {
  21122. /* 33222222222211111111110000000000
  21123. 10987654321098765432109876543210
  21124. xx1011101x1x0xx1100110xxxxxxxxxx
  21125. frinti. */
  21126. return 251;
  21127. }
  21128. }
  21129. }
  21130. else
  21131. {
  21132. if (((word >> 23) & 0x1) == 0)
  21133. {
  21134. if (((word >> 29) & 0x1) == 0)
  21135. {
  21136. /* 33222222222211111111110000000000
  21137. 10987654321098765432109876543210
  21138. xx0011100x1x1xx1100110xxxxxxxxxx
  21139. frintm. */
  21140. return 185;
  21141. }
  21142. else
  21143. {
  21144. /* 33222222222211111111110000000000
  21145. 10987654321098765432109876543210
  21146. xx1011100x1x1xx1100110xxxxxxxxxx
  21147. frintx. */
  21148. return 233;
  21149. }
  21150. }
  21151. else
  21152. {
  21153. if (((word >> 29) & 0x1) == 0)
  21154. {
  21155. /* 33222222222211111111110000000000
  21156. 10987654321098765432109876543210
  21157. xx0011101x1x1xx1100110xxxxxxxxxx
  21158. frintz. */
  21159. return 205;
  21160. }
  21161. else
  21162. {
  21163. /* 33222222222211111111110000000000
  21164. 10987654321098765432109876543210
  21165. xx1011101x1x1xx1100110xxxxxxxxxx
  21166. frinti. */
  21167. return 252;
  21168. }
  21169. }
  21170. }
  21171. }
  21172. }
  21173. else
  21174. {
  21175. if (((word >> 16) & 0x1) == 0)
  21176. {
  21177. if (((word >> 19) & 0x1) == 0)
  21178. {
  21179. if (((word >> 29) & 0x1) == 0)
  21180. {
  21181. /* 33222222222211111111110000000000
  21182. 10987654321098765432109876543210
  21183. xx001110xx1x0xx0110110xxxxxxxxxx
  21184. fcmeq. */
  21185. return 196;
  21186. }
  21187. else
  21188. {
  21189. /* 33222222222211111111110000000000
  21190. 10987654321098765432109876543210
  21191. xx101110xx1x0xx0110110xxxxxxxxxx
  21192. fcmle. */
  21193. return 247;
  21194. }
  21195. }
  21196. else
  21197. {
  21198. if (((word >> 29) & 0x1) == 0)
  21199. {
  21200. /* 33222222222211111111110000000000
  21201. 10987654321098765432109876543210
  21202. xx001110xx1x1xx0110110xxxxxxxxxx
  21203. fcmeq. */
  21204. return 197;
  21205. }
  21206. else
  21207. {
  21208. /* 33222222222211111111110000000000
  21209. 10987654321098765432109876543210
  21210. xx101110xx1x1xx0110110xxxxxxxxxx
  21211. fcmle. */
  21212. return 248;
  21213. }
  21214. }
  21215. }
  21216. else
  21217. {
  21218. if (((word >> 19) & 0x1) == 0)
  21219. {
  21220. if (((word >> 23) & 0x1) == 0)
  21221. {
  21222. if (((word >> 29) & 0x1) == 0)
  21223. {
  21224. /* 33222222222211111111110000000000
  21225. 10987654321098765432109876543210
  21226. xx0011100x1x0xx1110110xxxxxxxxxx
  21227. scvtf. */
  21228. return 192;
  21229. }
  21230. else
  21231. {
  21232. /* 33222222222211111111110000000000
  21233. 10987654321098765432109876543210
  21234. xx1011100x1x0xx1110110xxxxxxxxxx
  21235. ucvtf. */
  21236. return 240;
  21237. }
  21238. }
  21239. else
  21240. {
  21241. if (((word >> 29) & 0x1) == 0)
  21242. {
  21243. /* 33222222222211111111110000000000
  21244. 10987654321098765432109876543210
  21245. xx0011101x1x0xx1110110xxxxxxxxxx
  21246. frecpe. */
  21247. return 211;
  21248. }
  21249. else
  21250. {
  21251. /* 33222222222211111111110000000000
  21252. 10987654321098765432109876543210
  21253. xx1011101x1x0xx1110110xxxxxxxxxx
  21254. frsqrte. */
  21255. return 258;
  21256. }
  21257. }
  21258. }
  21259. else
  21260. {
  21261. if (((word >> 23) & 0x1) == 0)
  21262. {
  21263. if (((word >> 29) & 0x1) == 0)
  21264. {
  21265. /* 33222222222211111111110000000000
  21266. 10987654321098765432109876543210
  21267. xx0011100x1x1xx1110110xxxxxxxxxx
  21268. scvtf. */
  21269. return 193;
  21270. }
  21271. else
  21272. {
  21273. /* 33222222222211111111110000000000
  21274. 10987654321098765432109876543210
  21275. xx1011100x1x1xx1110110xxxxxxxxxx
  21276. ucvtf. */
  21277. return 241;
  21278. }
  21279. }
  21280. else
  21281. {
  21282. if (((word >> 29) & 0x1) == 0)
  21283. {
  21284. /* 33222222222211111111110000000000
  21285. 10987654321098765432109876543210
  21286. xx0011101x1x1xx1110110xxxxxxxxxx
  21287. frecpe. */
  21288. return 212;
  21289. }
  21290. else
  21291. {
  21292. /* 33222222222211111111110000000000
  21293. 10987654321098765432109876543210
  21294. xx1011101x1x1xx1110110xxxxxxxxxx
  21295. frsqrte. */
  21296. return 259;
  21297. }
  21298. }
  21299. }
  21300. }
  21301. }
  21302. }
  21303. else
  21304. {
  21305. if (((word >> 14) & 0x1) == 0)
  21306. {
  21307. if (((word >> 16) & 0x1) == 0)
  21308. {
  21309. if (((word >> 29) & 0x1) == 0)
  21310. {
  21311. /* 33222222222211111111110000000000
  21312. 10987654321098765432109876543210
  21313. xx001110xx1xxxx0101110xxxxxxxxxx
  21314. abs. */
  21315. return 173;
  21316. }
  21317. else
  21318. {
  21319. /* 33222222222211111111110000000000
  21320. 10987654321098765432109876543210
  21321. xx101110xx1xxxx0101110xxxxxxxxxx
  21322. neg. */
  21323. return 221;
  21324. }
  21325. }
  21326. else
  21327. {
  21328. if (((word >> 19) & 0x1) == 0)
  21329. {
  21330. if (((word >> 20) & 0x1) == 0)
  21331. {
  21332. if (((word >> 23) & 0x1) == 0)
  21333. {
  21334. if (((word >> 29) & 0x1) == 0)
  21335. {
  21336. /* 33222222222211111111110000000000
  21337. 10987654321098765432109876543210
  21338. xx0011100x100xx1101110xxxxxxxxxx
  21339. fcvtms. */
  21340. return 188;
  21341. }
  21342. else
  21343. {
  21344. /* 33222222222211111111110000000000
  21345. 10987654321098765432109876543210
  21346. xx1011100x100xx1101110xxxxxxxxxx
  21347. fcvtmu. */
  21348. return 236;
  21349. }
  21350. }
  21351. else
  21352. {
  21353. if (((word >> 29) & 0x1) == 0)
  21354. {
  21355. /* 33222222222211111111110000000000
  21356. 10987654321098765432109876543210
  21357. xx0011101x100xx1101110xxxxxxxxxx
  21358. fcvtzs. */
  21359. return 208;
  21360. }
  21361. else
  21362. {
  21363. /* 33222222222211111111110000000000
  21364. 10987654321098765432109876543210
  21365. xx1011101x100xx1101110xxxxxxxxxx
  21366. fcvtzu. */
  21367. return 255;
  21368. }
  21369. }
  21370. }
  21371. else
  21372. {
  21373. /* 33222222222211111111110000000000
  21374. 10987654321098765432109876543210
  21375. xxx01110xx110xx1101110xxxxxxxxxx
  21376. addv. */
  21377. return 32;
  21378. }
  21379. }
  21380. else
  21381. {
  21382. if (((word >> 23) & 0x1) == 0)
  21383. {
  21384. if (((word >> 29) & 0x1) == 0)
  21385. {
  21386. /* 33222222222211111111110000000000
  21387. 10987654321098765432109876543210
  21388. xx0011100x1x1xx1101110xxxxxxxxxx
  21389. fcvtms. */
  21390. return 189;
  21391. }
  21392. else
  21393. {
  21394. /* 33222222222211111111110000000000
  21395. 10987654321098765432109876543210
  21396. xx1011100x1x1xx1101110xxxxxxxxxx
  21397. fcvtmu. */
  21398. return 237;
  21399. }
  21400. }
  21401. else
  21402. {
  21403. if (((word >> 29) & 0x1) == 0)
  21404. {
  21405. /* 33222222222211111111110000000000
  21406. 10987654321098765432109876543210
  21407. xx0011101x1x1xx1101110xxxxxxxxxx
  21408. fcvtzs. */
  21409. return 209;
  21410. }
  21411. else
  21412. {
  21413. /* 33222222222211111111110000000000
  21414. 10987654321098765432109876543210
  21415. xx1011101x1x1xx1101110xxxxxxxxxx
  21416. fcvtzu. */
  21417. return 256;
  21418. }
  21419. }
  21420. }
  21421. }
  21422. }
  21423. else
  21424. {
  21425. if (((word >> 16) & 0x1) == 0)
  21426. {
  21427. if (((word >> 19) & 0x1) == 0)
  21428. {
  21429. if (((word >> 20) & 0x1) == 0)
  21430. {
  21431. if (((word >> 29) & 0x1) == 0)
  21432. {
  21433. /* 33222222222211111111110000000000
  21434. 10987654321098765432109876543210
  21435. xx001110xx100xx0111110xxxxxxxxxx
  21436. fabs. */
  21437. return 200;
  21438. }
  21439. else
  21440. {
  21441. /* 33222222222211111111110000000000
  21442. 10987654321098765432109876543210
  21443. xx101110xx100xx0111110xxxxxxxxxx
  21444. fneg. */
  21445. return 249;
  21446. }
  21447. }
  21448. else
  21449. {
  21450. if (((word >> 23) & 0x1) == 0)
  21451. {
  21452. if (((word >> 29) & 0x1) == 0)
  21453. {
  21454. /* 33222222222211111111110000000000
  21455. 10987654321098765432109876543210
  21456. xx0011100x110xx0111110xxxxxxxxxx
  21457. fmaxv. */
  21458. return 39;
  21459. }
  21460. else
  21461. {
  21462. /* 33222222222211111111110000000000
  21463. 10987654321098765432109876543210
  21464. xx1011100x110xx0111110xxxxxxxxxx
  21465. fmaxv. */
  21466. return 38;
  21467. }
  21468. }
  21469. else
  21470. {
  21471. if (((word >> 29) & 0x1) == 0)
  21472. {
  21473. /* 33222222222211111111110000000000
  21474. 10987654321098765432109876543210
  21475. xx0011101x110xx0111110xxxxxxxxxx
  21476. fminv. */
  21477. return 43;
  21478. }
  21479. else
  21480. {
  21481. /* 33222222222211111111110000000000
  21482. 10987654321098765432109876543210
  21483. xx1011101x110xx0111110xxxxxxxxxx
  21484. fminv. */
  21485. return 42;
  21486. }
  21487. }
  21488. }
  21489. }
  21490. else
  21491. {
  21492. if (((word >> 29) & 0x1) == 0)
  21493. {
  21494. /* 33222222222211111111110000000000
  21495. 10987654321098765432109876543210
  21496. xx001110xx1x1xx0111110xxxxxxxxxx
  21497. fabs. */
  21498. return 201;
  21499. }
  21500. else
  21501. {
  21502. /* 33222222222211111111110000000000
  21503. 10987654321098765432109876543210
  21504. xx101110xx1x1xx0111110xxxxxxxxxx
  21505. fneg. */
  21506. return 250;
  21507. }
  21508. }
  21509. }
  21510. else
  21511. {
  21512. if (((word >> 19) & 0x1) == 0)
  21513. {
  21514. if (((word >> 23) & 0x1) == 0)
  21515. {
  21516. if (((word >> 29) & 0x1) == 0)
  21517. {
  21518. /* 33222222222211111111110000000000
  21519. 10987654321098765432109876543210
  21520. xx0011100x1x0xx1111110xxxxxxxxxx
  21521. frint64z. */
  21522. return 160;
  21523. }
  21524. else
  21525. {
  21526. /* 33222222222211111111110000000000
  21527. 10987654321098765432109876543210
  21528. xx1011100x1x0xx1111110xxxxxxxxxx
  21529. frint64x. */
  21530. return 161;
  21531. }
  21532. }
  21533. else
  21534. {
  21535. /* 33222222222211111111110000000000
  21536. 10987654321098765432109876543210
  21537. xxx011101x1x0xx1111110xxxxxxxxxx
  21538. fsqrt. */
  21539. return 260;
  21540. }
  21541. }
  21542. else
  21543. {
  21544. /* 33222222222211111111110000000000
  21545. 10987654321098765432109876543210
  21546. xxx01110xx1x1xx1111110xxxxxxxxxx
  21547. fsqrt. */
  21548. return 261;
  21549. }
  21550. }
  21551. }
  21552. }
  21553. }
  21554. }
  21555. }
  21556. else
  21557. {
  21558. if (((word >> 11) & 0x1) == 0)
  21559. {
  21560. if (((word >> 12) & 0x1) == 0)
  21561. {
  21562. if (((word >> 13) & 0x1) == 0)
  21563. {
  21564. if (((word >> 14) & 0x1) == 0)
  21565. {
  21566. if (((word >> 29) & 0x1) == 0)
  21567. {
  21568. if (((word >> 31) & 0x1) == 0)
  21569. {
  21570. /* 33222222222211111111110000000000
  21571. 10987654321098765432109876543210
  21572. 0x001110xx1xxxxx100001xxxxxxxxxx
  21573. add. */
  21574. return 283;
  21575. }
  21576. else
  21577. {
  21578. /* 33222222222211111111110000000000
  21579. 10987654321098765432109876543210
  21580. 1x001110xx1xxxxx100001xxxxxxxxxx
  21581. sha512h2. */
  21582. return 2419;
  21583. }
  21584. }
  21585. else
  21586. {
  21587. /* 33222222222211111111110000000000
  21588. 10987654321098765432109876543210
  21589. xx101110xx1xxxxx100001xxxxxxxxxx
  21590. sub. */
  21591. return 335;
  21592. }
  21593. }
  21594. else
  21595. {
  21596. if (((word >> 23) & 0x1) == 0)
  21597. {
  21598. if (((word >> 29) & 0x1) == 0)
  21599. {
  21600. if (((word >> 31) & 0x1) == 0)
  21601. {
  21602. /* 33222222222211111111110000000000
  21603. 10987654321098765432109876543210
  21604. 0x0011100x1xxxxx110001xxxxxxxxxx
  21605. fmaxnm. */
  21606. return 291;
  21607. }
  21608. else
  21609. {
  21610. /* 33222222222211111111110000000000
  21611. 10987654321098765432109876543210
  21612. 1x0011100x1xxxxx110001xxxxxxxxxx
  21613. sm3partw2. */
  21614. return 2432;
  21615. }
  21616. }
  21617. else
  21618. {
  21619. /* 33222222222211111111110000000000
  21620. 10987654321098765432109876543210
  21621. xx1011100x1xxxxx110001xxxxxxxxxx
  21622. fmaxnmp. */
  21623. return 342;
  21624. }
  21625. }
  21626. else
  21627. {
  21628. if (((word >> 29) & 0x1) == 0)
  21629. {
  21630. /* 33222222222211111111110000000000
  21631. 10987654321098765432109876543210
  21632. xx0011101x1xxxxx110001xxxxxxxxxx
  21633. fminnm. */
  21634. return 307;
  21635. }
  21636. else
  21637. {
  21638. /* 33222222222211111111110000000000
  21639. 10987654321098765432109876543210
  21640. xx1011101x1xxxxx110001xxxxxxxxxx
  21641. fminnmp. */
  21642. return 358;
  21643. }
  21644. }
  21645. }
  21646. }
  21647. else
  21648. {
  21649. if (((word >> 14) & 0x1) == 0)
  21650. {
  21651. if (((word >> 29) & 0x1) == 0)
  21652. {
  21653. /* 33222222222211111111110000000000
  21654. 10987654321098765432109876543210
  21655. xx001110xx1xxxxx101001xxxxxxxxxx
  21656. smaxp. */
  21657. return 287;
  21658. }
  21659. else
  21660. {
  21661. /* 33222222222211111111110000000000
  21662. 10987654321098765432109876543210
  21663. xx101110xx1xxxxx101001xxxxxxxxxx
  21664. umaxp. */
  21665. return 339;
  21666. }
  21667. }
  21668. else
  21669. {
  21670. if (((word >> 23) & 0x1) == 0)
  21671. {
  21672. if (((word >> 29) & 0x1) == 0)
  21673. {
  21674. /* 33222222222211111111110000000000
  21675. 10987654321098765432109876543210
  21676. xx0011100x1xxxxx111001xxxxxxxxxx
  21677. fcmeq. */
  21678. return 299;
  21679. }
  21680. else
  21681. {
  21682. /* 33222222222211111111110000000000
  21683. 10987654321098765432109876543210
  21684. xx1011100x1xxxxx111001xxxxxxxxxx
  21685. fcmge. */
  21686. return 348;
  21687. }
  21688. }
  21689. else
  21690. {
  21691. /* 33222222222211111111110000000000
  21692. 10987654321098765432109876543210
  21693. xxx011101x1xxxxx111001xxxxxxxxxx
  21694. fcmgt. */
  21695. return 362;
  21696. }
  21697. }
  21698. }
  21699. }
  21700. else
  21701. {
  21702. if (((word >> 13) & 0x1) == 0)
  21703. {
  21704. if (((word >> 14) & 0x1) == 0)
  21705. {
  21706. if (((word >> 29) & 0x1) == 0)
  21707. {
  21708. /* 33222222222211111111110000000000
  21709. 10987654321098765432109876543210
  21710. xx001110xx1xxxxx100101xxxxxxxxxx
  21711. mla. */
  21712. return 285;
  21713. }
  21714. else
  21715. {
  21716. /* 33222222222211111111110000000000
  21717. 10987654321098765432109876543210
  21718. xx101110xx1xxxxx100101xxxxxxxxxx
  21719. mls. */
  21720. return 337;
  21721. }
  21722. }
  21723. else
  21724. {
  21725. if (((word >> 23) & 0x1) == 0)
  21726. {
  21727. if (((word >> 29) & 0x1) == 0)
  21728. {
  21729. /* 33222222222211111111110000000000
  21730. 10987654321098765432109876543210
  21731. xx0011100x1xxxxx110101xxxxxxxxxx
  21732. fadd. */
  21733. return 295;
  21734. }
  21735. else
  21736. {
  21737. /* 33222222222211111111110000000000
  21738. 10987654321098765432109876543210
  21739. xx1011100x1xxxxx110101xxxxxxxxxx
  21740. faddp. */
  21741. return 344;
  21742. }
  21743. }
  21744. else
  21745. {
  21746. if (((word >> 29) & 0x1) == 0)
  21747. {
  21748. /* 33222222222211111111110000000000
  21749. 10987654321098765432109876543210
  21750. xx0011101x1xxxxx110101xxxxxxxxxx
  21751. fsub. */
  21752. return 311;
  21753. }
  21754. else
  21755. {
  21756. /* 33222222222211111111110000000000
  21757. 10987654321098765432109876543210
  21758. xx1011101x1xxxxx110101xxxxxxxxxx
  21759. fabd. */
  21760. return 360;
  21761. }
  21762. }
  21763. }
  21764. }
  21765. else
  21766. {
  21767. if (((word >> 14) & 0x1) == 0)
  21768. {
  21769. if (((word >> 29) & 0x1) == 0)
  21770. {
  21771. /* 33222222222211111111110000000000
  21772. 10987654321098765432109876543210
  21773. xx001110xx1xxxxx101101xxxxxxxxxx
  21774. sqdmulh. */
  21775. return 289;
  21776. }
  21777. else
  21778. {
  21779. /* 33222222222211111111110000000000
  21780. 10987654321098765432109876543210
  21781. xx101110xx1xxxxx101101xxxxxxxxxx
  21782. sqrdmulh. */
  21783. return 341;
  21784. }
  21785. }
  21786. else
  21787. {
  21788. if (((word >> 23) & 0x1) == 0)
  21789. {
  21790. if (((word >> 29) & 0x1) == 0)
  21791. {
  21792. /* 33222222222211111111110000000000
  21793. 10987654321098765432109876543210
  21794. xx0011100x1xxxxx111101xxxxxxxxxx
  21795. fmax. */
  21796. return 301;
  21797. }
  21798. else
  21799. {
  21800. /* 33222222222211111111110000000000
  21801. 10987654321098765432109876543210
  21802. xx1011100x1xxxxx111101xxxxxxxxxx
  21803. fmaxp. */
  21804. return 352;
  21805. }
  21806. }
  21807. else
  21808. {
  21809. if (((word >> 29) & 0x1) == 0)
  21810. {
  21811. /* 33222222222211111111110000000000
  21812. 10987654321098765432109876543210
  21813. xx0011101x1xxxxx111101xxxxxxxxxx
  21814. fmin. */
  21815. return 313;
  21816. }
  21817. else
  21818. {
  21819. /* 33222222222211111111110000000000
  21820. 10987654321098765432109876543210
  21821. xx1011101x1xxxxx111101xxxxxxxxxx
  21822. fminp. */
  21823. return 366;
  21824. }
  21825. }
  21826. }
  21827. }
  21828. }
  21829. }
  21830. else
  21831. {
  21832. if (((word >> 12) & 0x1) == 0)
  21833. {
  21834. if (((word >> 13) & 0x1) == 0)
  21835. {
  21836. if (((word >> 14) & 0x1) == 0)
  21837. {
  21838. if (((word >> 29) & 0x1) == 0)
  21839. {
  21840. if (((word >> 31) & 0x1) == 0)
  21841. {
  21842. /* 33222222222211111111110000000000
  21843. 10987654321098765432109876543210
  21844. 0x001110xx1xxxxx100011xxxxxxxxxx
  21845. cmtst. */
  21846. return 284;
  21847. }
  21848. else
  21849. {
  21850. /* 33222222222211111111110000000000
  21851. 10987654321098765432109876543210
  21852. 1x001110xx1xxxxx100011xxxxxxxxxx
  21853. rax1. */
  21854. return 2423;
  21855. }
  21856. }
  21857. else
  21858. {
  21859. /* 33222222222211111111110000000000
  21860. 10987654321098765432109876543210
  21861. xx101110xx1xxxxx100011xxxxxxxxxx
  21862. cmeq. */
  21863. return 336;
  21864. }
  21865. }
  21866. else
  21867. {
  21868. if (((word >> 23) & 0x1) == 0)
  21869. {
  21870. if (((word >> 29) & 0x1) == 0)
  21871. {
  21872. /* 33222222222211111111110000000000
  21873. 10987654321098765432109876543210
  21874. xx0011100x1xxxxx110011xxxxxxxxxx
  21875. fmla. */
  21876. return 293;
  21877. }
  21878. else
  21879. {
  21880. if (((word >> 30) & 0x1) == 0)
  21881. {
  21882. /* 33222222222211111111110000000000
  21883. 10987654321098765432109876543210
  21884. x01011100x1xxxxx110011xxxxxxxxxx
  21885. fmlal2. */
  21886. return 2437;
  21887. }
  21888. else
  21889. {
  21890. /* 33222222222211111111110000000000
  21891. 10987654321098765432109876543210
  21892. x11011100x1xxxxx110011xxxxxxxxxx
  21893. fmlal2. */
  21894. return 2441;
  21895. }
  21896. }
  21897. }
  21898. else
  21899. {
  21900. if (((word >> 29) & 0x1) == 0)
  21901. {
  21902. /* 33222222222211111111110000000000
  21903. 10987654321098765432109876543210
  21904. xx0011101x1xxxxx110011xxxxxxxxxx
  21905. fmls. */
  21906. return 309;
  21907. }
  21908. else
  21909. {
  21910. if (((word >> 30) & 0x1) == 0)
  21911. {
  21912. /* 33222222222211111111110000000000
  21913. 10987654321098765432109876543210
  21914. x01011101x1xxxxx110011xxxxxxxxxx
  21915. fmlsl2. */
  21916. return 2438;
  21917. }
  21918. else
  21919. {
  21920. /* 33222222222211111111110000000000
  21921. 10987654321098765432109876543210
  21922. x11011101x1xxxxx110011xxxxxxxxxx
  21923. fmlsl2. */
  21924. return 2442;
  21925. }
  21926. }
  21927. }
  21928. }
  21929. }
  21930. else
  21931. {
  21932. if (((word >> 14) & 0x1) == 0)
  21933. {
  21934. if (((word >> 29) & 0x1) == 0)
  21935. {
  21936. /* 33222222222211111111110000000000
  21937. 10987654321098765432109876543210
  21938. xx001110xx1xxxxx101011xxxxxxxxxx
  21939. sminp. */
  21940. return 288;
  21941. }
  21942. else
  21943. {
  21944. /* 33222222222211111111110000000000
  21945. 10987654321098765432109876543210
  21946. xx101110xx1xxxxx101011xxxxxxxxxx
  21947. uminp. */
  21948. return 340;
  21949. }
  21950. }
  21951. else
  21952. {
  21953. if (((word >> 23) & 0x1) == 0)
  21954. {
  21955. if (((word >> 29) & 0x1) == 0)
  21956. {
  21957. if (((word >> 30) & 0x1) == 0)
  21958. {
  21959. /* 33222222222211111111110000000000
  21960. 10987654321098765432109876543210
  21961. x00011100x1xxxxx111011xxxxxxxxxx
  21962. fmlal. */
  21963. return 2435;
  21964. }
  21965. else
  21966. {
  21967. /* 33222222222211111111110000000000
  21968. 10987654321098765432109876543210
  21969. x10011100x1xxxxx111011xxxxxxxxxx
  21970. fmlal. */
  21971. return 2439;
  21972. }
  21973. }
  21974. else
  21975. {
  21976. /* 33222222222211111111110000000000
  21977. 10987654321098765432109876543210
  21978. xx1011100x1xxxxx111011xxxxxxxxxx
  21979. facge. */
  21980. return 350;
  21981. }
  21982. }
  21983. else
  21984. {
  21985. if (((word >> 29) & 0x1) == 0)
  21986. {
  21987. if (((word >> 30) & 0x1) == 0)
  21988. {
  21989. /* 33222222222211111111110000000000
  21990. 10987654321098765432109876543210
  21991. x00011101x1xxxxx111011xxxxxxxxxx
  21992. fmlsl. */
  21993. return 2436;
  21994. }
  21995. else
  21996. {
  21997. /* 33222222222211111111110000000000
  21998. 10987654321098765432109876543210
  21999. x10011101x1xxxxx111011xxxxxxxxxx
  22000. fmlsl. */
  22001. return 2440;
  22002. }
  22003. }
  22004. else
  22005. {
  22006. /* 33222222222211111111110000000000
  22007. 10987654321098765432109876543210
  22008. xx1011101x1xxxxx111011xxxxxxxxxx
  22009. facgt. */
  22010. return 364;
  22011. }
  22012. }
  22013. }
  22014. }
  22015. }
  22016. else
  22017. {
  22018. if (((word >> 13) & 0x1) == 0)
  22019. {
  22020. if (((word >> 14) & 0x1) == 0)
  22021. {
  22022. if (((word >> 29) & 0x1) == 0)
  22023. {
  22024. /* 33222222222211111111110000000000
  22025. 10987654321098765432109876543210
  22026. xx001110xx1xxxxx100111xxxxxxxxxx
  22027. mul. */
  22028. return 286;
  22029. }
  22030. else
  22031. {
  22032. /* 33222222222211111111110000000000
  22033. 10987654321098765432109876543210
  22034. xx101110xx1xxxxx100111xxxxxxxxxx
  22035. pmul. */
  22036. return 338;
  22037. }
  22038. }
  22039. else
  22040. {
  22041. if (((word >> 29) & 0x1) == 0)
  22042. {
  22043. /* 33222222222211111111110000000000
  22044. 10987654321098765432109876543210
  22045. xx001110xx1xxxxx110111xxxxxxxxxx
  22046. fmulx. */
  22047. return 297;
  22048. }
  22049. else
  22050. {
  22051. /* 33222222222211111111110000000000
  22052. 10987654321098765432109876543210
  22053. xx101110xx1xxxxx110111xxxxxxxxxx
  22054. fmul. */
  22055. return 346;
  22056. }
  22057. }
  22058. }
  22059. else
  22060. {
  22061. if (((word >> 14) & 0x1) == 0)
  22062. {
  22063. /* 33222222222211111111110000000000
  22064. 10987654321098765432109876543210
  22065. xxx01110xx1xxxxx101111xxxxxxxxxx
  22066. addp. */
  22067. return 290;
  22068. }
  22069. else
  22070. {
  22071. if (((word >> 23) & 0x1) == 0)
  22072. {
  22073. if (((word >> 29) & 0x1) == 0)
  22074. {
  22075. /* 33222222222211111111110000000000
  22076. 10987654321098765432109876543210
  22077. xx0011100x1xxxxx111111xxxxxxxxxx
  22078. frecps. */
  22079. return 303;
  22080. }
  22081. else
  22082. {
  22083. /* 33222222222211111111110000000000
  22084. 10987654321098765432109876543210
  22085. xx1011100x1xxxxx111111xxxxxxxxxx
  22086. fdiv. */
  22087. return 354;
  22088. }
  22089. }
  22090. else
  22091. {
  22092. /* 33222222222211111111110000000000
  22093. 10987654321098765432109876543210
  22094. xxx011101x1xxxxx111111xxxxxxxxxx
  22095. frsqrts. */
  22096. return 315;
  22097. }
  22098. }
  22099. }
  22100. }
  22101. }
  22102. }
  22103. }
  22104. }
  22105. else
  22106. {
  22107. if (((word >> 10) & 0x1) == 0)
  22108. {
  22109. if (((word >> 11) & 0x1) == 0)
  22110. {
  22111. if (((word >> 12) & 0x1) == 0)
  22112. {
  22113. if (((word >> 13) & 0x1) == 0)
  22114. {
  22115. if (((word >> 14) & 0x1) == 0)
  22116. {
  22117. if (((word >> 16) & 0x1) == 0)
  22118. {
  22119. if (((word >> 17) & 0x1) == 0)
  22120. {
  22121. if (((word >> 18) & 0x1) == 0)
  22122. {
  22123. if (((word >> 19) & 0x1) == 0)
  22124. {
  22125. if (((word >> 20) & 0x1) == 0)
  22126. {
  22127. /* 33222222222211111111110000000000
  22128. 10987654321098765432109876543210
  22129. xxx11110xx100000x00000xxxxxxxxxx
  22130. fcvtns. */
  22131. return 768;
  22132. }
  22133. else
  22134. {
  22135. /* 33222222222211111111110000000000
  22136. 10987654321098765432109876543210
  22137. xxx11110xx110000x00000xxxxxxxxxx
  22138. fcvtms. */
  22139. return 788;
  22140. }
  22141. }
  22142. else
  22143. {
  22144. if (((word >> 20) & 0x1) == 0)
  22145. {
  22146. /* 33222222222211111111110000000000
  22147. 10987654321098765432109876543210
  22148. xxx11110xx101000x00000xxxxxxxxxx
  22149. fcvtps. */
  22150. return 784;
  22151. }
  22152. else
  22153. {
  22154. /* 33222222222211111111110000000000
  22155. 10987654321098765432109876543210
  22156. xxx11110xx111000x00000xxxxxxxxxx
  22157. fcvtzs. */
  22158. return 792;
  22159. }
  22160. }
  22161. }
  22162. else
  22163. {
  22164. /* 33222222222211111111110000000000
  22165. 10987654321098765432109876543210
  22166. xxx11110xx1xx100x00000xxxxxxxxxx
  22167. fcvtas. */
  22168. return 776;
  22169. }
  22170. }
  22171. else
  22172. {
  22173. if (((word >> 18) & 0x1) == 0)
  22174. {
  22175. /* 33222222222211111111110000000000
  22176. 10987654321098765432109876543210
  22177. xxx11110xx1xx010x00000xxxxxxxxxx
  22178. scvtf. */
  22179. return 772;
  22180. }
  22181. else
  22182. {
  22183. if (((word >> 19) & 0x1) == 0)
  22184. {
  22185. /* 33222222222211111111110000000000
  22186. 10987654321098765432109876543210
  22187. xxx11110xx1x0110x00000xxxxxxxxxx
  22188. fmov. */
  22189. return 780;
  22190. }
  22191. else
  22192. {
  22193. if (((word >> 20) & 0x1) == 0)
  22194. {
  22195. /* 33222222222211111111110000000000
  22196. 10987654321098765432109876543210
  22197. xxx11110xx101110x00000xxxxxxxxxx
  22198. fmov. */
  22199. return 796;
  22200. }
  22201. else
  22202. {
  22203. /* 33222222222211111111110000000000
  22204. 10987654321098765432109876543210
  22205. xxx11110xx111110x00000xxxxxxxxxx
  22206. fjcvtzs. */
  22207. return 798;
  22208. }
  22209. }
  22210. }
  22211. }
  22212. }
  22213. else
  22214. {
  22215. if (((word >> 17) & 0x1) == 0)
  22216. {
  22217. if (((word >> 18) & 0x1) == 0)
  22218. {
  22219. if (((word >> 19) & 0x1) == 0)
  22220. {
  22221. if (((word >> 20) & 0x1) == 0)
  22222. {
  22223. /* 33222222222211111111110000000000
  22224. 10987654321098765432109876543210
  22225. xxx11110xx100001x00000xxxxxxxxxx
  22226. fcvtnu. */
  22227. return 770;
  22228. }
  22229. else
  22230. {
  22231. /* 33222222222211111111110000000000
  22232. 10987654321098765432109876543210
  22233. xxx11110xx110001x00000xxxxxxxxxx
  22234. fcvtmu. */
  22235. return 790;
  22236. }
  22237. }
  22238. else
  22239. {
  22240. if (((word >> 20) & 0x1) == 0)
  22241. {
  22242. /* 33222222222211111111110000000000
  22243. 10987654321098765432109876543210
  22244. xxx11110xx101001x00000xxxxxxxxxx
  22245. fcvtpu. */
  22246. return 786;
  22247. }
  22248. else
  22249. {
  22250. /* 33222222222211111111110000000000
  22251. 10987654321098765432109876543210
  22252. xxx11110xx111001x00000xxxxxxxxxx
  22253. fcvtzu. */
  22254. return 794;
  22255. }
  22256. }
  22257. }
  22258. else
  22259. {
  22260. /* 33222222222211111111110000000000
  22261. 10987654321098765432109876543210
  22262. xxx11110xx1xx101x00000xxxxxxxxxx
  22263. fcvtau. */
  22264. return 778;
  22265. }
  22266. }
  22267. else
  22268. {
  22269. if (((word >> 18) & 0x1) == 0)
  22270. {
  22271. /* 33222222222211111111110000000000
  22272. 10987654321098765432109876543210
  22273. xxx11110xx1xx011x00000xxxxxxxxxx
  22274. ucvtf. */
  22275. return 774;
  22276. }
  22277. else
  22278. {
  22279. if (((word >> 19) & 0x1) == 0)
  22280. {
  22281. /* 33222222222211111111110000000000
  22282. 10987654321098765432109876543210
  22283. xxx11110xx1x0111x00000xxxxxxxxxx
  22284. fmov. */
  22285. return 782;
  22286. }
  22287. else
  22288. {
  22289. /* 33222222222211111111110000000000
  22290. 10987654321098765432109876543210
  22291. xxx11110xx1x1111x00000xxxxxxxxxx
  22292. fmov. */
  22293. return 797;
  22294. }
  22295. }
  22296. }
  22297. }
  22298. }
  22299. else
  22300. {
  22301. if (((word >> 17) & 0x1) == 0)
  22302. {
  22303. if (((word >> 15) & 0x1) == 0)
  22304. {
  22305. if (((word >> 16) & 0x1) == 0)
  22306. {
  22307. if (((word >> 18) & 0x1) == 0)
  22308. {
  22309. if (((word >> 19) & 0x1) == 0)
  22310. {
  22311. /* 33222222222211111111110000000000
  22312. 10987654321098765432109876543210
  22313. xxx11110xx1x0000010000xxxxxxxxxx
  22314. fmov. */
  22315. return 817;
  22316. }
  22317. else
  22318. {
  22319. /* 33222222222211111111110000000000
  22320. 10987654321098765432109876543210
  22321. xxx11110xx1x1000010000xxxxxxxxxx
  22322. frint32z. */
  22323. return 813;
  22324. }
  22325. }
  22326. else
  22327. {
  22328. /* 33222222222211111111110000000000
  22329. 10987654321098765432109876543210
  22330. xxx11110xx1xx100010000xxxxxxxxxx
  22331. frintn. */
  22332. return 826;
  22333. }
  22334. }
  22335. else
  22336. {
  22337. if (((word >> 18) & 0x1) == 0)
  22338. {
  22339. if (((word >> 19) & 0x1) == 0)
  22340. {
  22341. /* 33222222222211111111110000000000
  22342. 10987654321098765432109876543210
  22343. xxx11110xx1x0001010000xxxxxxxxxx
  22344. fneg. */
  22345. return 821;
  22346. }
  22347. else
  22348. {
  22349. /* 33222222222211111111110000000000
  22350. 10987654321098765432109876543210
  22351. xxx11110xx1x1001010000xxxxxxxxxx
  22352. frint64z. */
  22353. return 815;
  22354. }
  22355. }
  22356. else
  22357. {
  22358. /* 33222222222211111111110000000000
  22359. 10987654321098765432109876543210
  22360. xxx11110xx1xx101010000xxxxxxxxxx
  22361. frintm. */
  22362. return 830;
  22363. }
  22364. }
  22365. }
  22366. else
  22367. {
  22368. if (((word >> 16) & 0x1) == 0)
  22369. {
  22370. if (((word >> 18) & 0x1) == 0)
  22371. {
  22372. if (((word >> 19) & 0x1) == 0)
  22373. {
  22374. /* 33222222222211111111110000000000
  22375. 10987654321098765432109876543210
  22376. xxx11110xx1x0000110000xxxxxxxxxx
  22377. fabs. */
  22378. return 819;
  22379. }
  22380. else
  22381. {
  22382. /* 33222222222211111111110000000000
  22383. 10987654321098765432109876543210
  22384. xxx11110xx1x1000110000xxxxxxxxxx
  22385. frint32x. */
  22386. return 814;
  22387. }
  22388. }
  22389. else
  22390. {
  22391. /* 33222222222211111111110000000000
  22392. 10987654321098765432109876543210
  22393. xxx11110xx1xx100110000xxxxxxxxxx
  22394. frintp. */
  22395. return 828;
  22396. }
  22397. }
  22398. else
  22399. {
  22400. if (((word >> 18) & 0x1) == 0)
  22401. {
  22402. if (((word >> 19) & 0x1) == 0)
  22403. {
  22404. /* 33222222222211111111110000000000
  22405. 10987654321098765432109876543210
  22406. xxx11110xx1x0001110000xxxxxxxxxx
  22407. fsqrt. */
  22408. return 823;
  22409. }
  22410. else
  22411. {
  22412. /* 33222222222211111111110000000000
  22413. 10987654321098765432109876543210
  22414. xxx11110xx1x1001110000xxxxxxxxxx
  22415. frint64x. */
  22416. return 816;
  22417. }
  22418. }
  22419. else
  22420. {
  22421. /* 33222222222211111111110000000000
  22422. 10987654321098765432109876543210
  22423. xxx11110xx1xx101110000xxxxxxxxxx
  22424. frintz. */
  22425. return 832;
  22426. }
  22427. }
  22428. }
  22429. }
  22430. else
  22431. {
  22432. if (((word >> 18) & 0x1) == 0)
  22433. {
  22434. /* 33222222222211111111110000000000
  22435. 10987654321098765432109876543210
  22436. xxx11110xx1xx01xx10000xxxxxxxxxx
  22437. fcvt. */
  22438. return 825;
  22439. }
  22440. else
  22441. {
  22442. if (((word >> 15) & 0x1) == 0)
  22443. {
  22444. if (((word >> 16) & 0x1) == 0)
  22445. {
  22446. /* 33222222222211111111110000000000
  22447. 10987654321098765432109876543210
  22448. xxx11110xx1xx110010000xxxxxxxxxx
  22449. frinta. */
  22450. return 834;
  22451. }
  22452. else
  22453. {
  22454. /* 33222222222211111111110000000000
  22455. 10987654321098765432109876543210
  22456. xxx11110xx1xx111010000xxxxxxxxxx
  22457. frintx. */
  22458. return 836;
  22459. }
  22460. }
  22461. else
  22462. {
  22463. /* 33222222222211111111110000000000
  22464. 10987654321098765432109876543210
  22465. xxx11110xx1xx11x110000xxxxxxxxxx
  22466. frinti. */
  22467. return 838;
  22468. }
  22469. }
  22470. }
  22471. }
  22472. }
  22473. else
  22474. {
  22475. if (((word >> 3) & 0x1) == 0)
  22476. {
  22477. if (((word >> 4) & 0x1) == 0)
  22478. {
  22479. /* 33222222222211111111110000000000
  22480. 10987654321098765432109876543210
  22481. xxx11110xx1xxxxxxx1000xxxxx00xxx
  22482. fcmp. */
  22483. return 803;
  22484. }
  22485. else
  22486. {
  22487. /* 33222222222211111111110000000000
  22488. 10987654321098765432109876543210
  22489. xxx11110xx1xxxxxxx1000xxxxx10xxx
  22490. fcmpe. */
  22491. return 805;
  22492. }
  22493. }
  22494. else
  22495. {
  22496. if (((word >> 4) & 0x1) == 0)
  22497. {
  22498. /* 33222222222211111111110000000000
  22499. 10987654321098765432109876543210
  22500. xxx11110xx1xxxxxxx1000xxxxx01xxx
  22501. fcmp. */
  22502. return 807;
  22503. }
  22504. else
  22505. {
  22506. /* 33222222222211111111110000000000
  22507. 10987654321098765432109876543210
  22508. xxx11110xx1xxxxxxx1000xxxxx11xxx
  22509. fcmpe. */
  22510. return 809;
  22511. }
  22512. }
  22513. }
  22514. }
  22515. else
  22516. {
  22517. if (((word >> 30) & 0x1) == 0)
  22518. {
  22519. /* 33222222222211111111110000000000
  22520. 10987654321098765432109876543210
  22521. x0x11110xx1xxxxxxxx100xxxxxxxxxx
  22522. fmov. */
  22523. return 866;
  22524. }
  22525. else
  22526. {
  22527. if (((word >> 13) & 0x1) == 0)
  22528. {
  22529. if (((word >> 14) & 0x1) == 0)
  22530. {
  22531. /* 33222222222211111111110000000000
  22532. 10987654321098765432109876543210
  22533. x1x11110xx1xxxxxx00100xxxxxxxxxx
  22534. sqdmlal. */
  22535. return 422;
  22536. }
  22537. else
  22538. {
  22539. /* 33222222222211111111110000000000
  22540. 10987654321098765432109876543210
  22541. x1x11110xx1xxxxxx10100xxxxxxxxxx
  22542. sqdmull. */
  22543. return 424;
  22544. }
  22545. }
  22546. else
  22547. {
  22548. /* 33222222222211111111110000000000
  22549. 10987654321098765432109876543210
  22550. x1x11110xx1xxxxxxx1100xxxxxxxxxx
  22551. sqdmlsl. */
  22552. return 423;
  22553. }
  22554. }
  22555. }
  22556. }
  22557. else
  22558. {
  22559. if (((word >> 12) & 0x1) == 0)
  22560. {
  22561. if (((word >> 13) & 0x1) == 0)
  22562. {
  22563. if (((word >> 14) & 0x1) == 0)
  22564. {
  22565. if (((word >> 15) & 0x1) == 0)
  22566. {
  22567. if (((word >> 30) & 0x1) == 0)
  22568. {
  22569. /* 33222222222211111111110000000000
  22570. 10987654321098765432109876543210
  22571. x0x11110xx1xxxxx000010xxxxxxxxxx
  22572. fmul. */
  22573. return 840;
  22574. }
  22575. else
  22576. {
  22577. /* 33222222222211111111110000000000
  22578. 10987654321098765432109876543210
  22579. x1x11110xx1xxxxx000010xxxxxxxxxx
  22580. sha1h. */
  22581. return 675;
  22582. }
  22583. }
  22584. else
  22585. {
  22586. if (((word >> 29) & 0x1) == 0)
  22587. {
  22588. if (((word >> 30) & 0x1) == 0)
  22589. {
  22590. /* 33222222222211111111110000000000
  22591. 10987654321098765432109876543210
  22592. x0011110xx1xxxxx100010xxxxxxxxxx
  22593. fnmul. */
  22594. return 856;
  22595. }
  22596. else
  22597. {
  22598. /* 33222222222211111111110000000000
  22599. 10987654321098765432109876543210
  22600. x1011110xx1xxxxx100010xxxxxxxxxx
  22601. cmgt. */
  22602. return 482;
  22603. }
  22604. }
  22605. else
  22606. {
  22607. /* 33222222222211111111110000000000
  22608. 10987654321098765432109876543210
  22609. xx111110xx1xxxxx100010xxxxxxxxxx
  22610. cmge. */
  22611. return 511;
  22612. }
  22613. }
  22614. }
  22615. else
  22616. {
  22617. if (((word >> 15) & 0x1) == 0)
  22618. {
  22619. if (((word >> 29) & 0x1) == 0)
  22620. {
  22621. if (((word >> 30) & 0x1) == 0)
  22622. {
  22623. /* 33222222222211111111110000000000
  22624. 10987654321098765432109876543210
  22625. x0011110xx1xxxxx010010xxxxxxxxxx
  22626. fmax. */
  22627. return 848;
  22628. }
  22629. else
  22630. {
  22631. /* 33222222222211111111110000000000
  22632. 10987654321098765432109876543210
  22633. x1011110xx1xxxxx010010xxxxxxxxxx
  22634. sqxtn. */
  22635. return 486;
  22636. }
  22637. }
  22638. else
  22639. {
  22640. /* 33222222222211111111110000000000
  22641. 10987654321098765432109876543210
  22642. xx111110xx1xxxxx010010xxxxxxxxxx
  22643. uqxtn. */
  22644. return 515;
  22645. }
  22646. }
  22647. else
  22648. {
  22649. if (((word >> 16) & 0x1) == 0)
  22650. {
  22651. if (((word >> 19) & 0x1) == 0)
  22652. {
  22653. if (((word >> 20) & 0x1) == 0)
  22654. {
  22655. if (((word >> 29) & 0x1) == 0)
  22656. {
  22657. /* 33222222222211111111110000000000
  22658. 10987654321098765432109876543210
  22659. xx011110xx100xx0110010xxxxxxxxxx
  22660. fcmgt. */
  22661. return 495;
  22662. }
  22663. else
  22664. {
  22665. /* 33222222222211111111110000000000
  22666. 10987654321098765432109876543210
  22667. xx111110xx100xx0110010xxxxxxxxxx
  22668. fcmge. */
  22669. return 525;
  22670. }
  22671. }
  22672. else
  22673. {
  22674. if (((word >> 23) & 0x1) == 0)
  22675. {
  22676. if (((word >> 29) & 0x1) == 0)
  22677. {
  22678. /* 33222222222211111111110000000000
  22679. 10987654321098765432109876543210
  22680. xx0111100x110xx0110010xxxxxxxxxx
  22681. fmaxnmp. */
  22682. return 539;
  22683. }
  22684. else
  22685. {
  22686. /* 33222222222211111111110000000000
  22687. 10987654321098765432109876543210
  22688. xx1111100x110xx0110010xxxxxxxxxx
  22689. fmaxnmp. */
  22690. return 538;
  22691. }
  22692. }
  22693. else
  22694. {
  22695. if (((word >> 29) & 0x1) == 0)
  22696. {
  22697. /* 33222222222211111111110000000000
  22698. 10987654321098765432109876543210
  22699. xx0111101x110xx0110010xxxxxxxxxx
  22700. fminnmp. */
  22701. return 545;
  22702. }
  22703. else
  22704. {
  22705. /* 33222222222211111111110000000000
  22706. 10987654321098765432109876543210
  22707. xx1111101x110xx0110010xxxxxxxxxx
  22708. fminnmp. */
  22709. return 544;
  22710. }
  22711. }
  22712. }
  22713. }
  22714. else
  22715. {
  22716. if (((word >> 29) & 0x1) == 0)
  22717. {
  22718. /* 33222222222211111111110000000000
  22719. 10987654321098765432109876543210
  22720. xx011110xx1x1xx0110010xxxxxxxxxx
  22721. fcmgt. */
  22722. return 496;
  22723. }
  22724. else
  22725. {
  22726. /* 33222222222211111111110000000000
  22727. 10987654321098765432109876543210
  22728. xx111110xx1x1xx0110010xxxxxxxxxx
  22729. fcmge. */
  22730. return 526;
  22731. }
  22732. }
  22733. }
  22734. else
  22735. {
  22736. if (((word >> 19) & 0x1) == 0)
  22737. {
  22738. if (((word >> 29) & 0x1) == 0)
  22739. {
  22740. /* 33222222222211111111110000000000
  22741. 10987654321098765432109876543210
  22742. xx011110xx1x0xx1110010xxxxxxxxxx
  22743. fcvtas. */
  22744. return 491;
  22745. }
  22746. else
  22747. {
  22748. /* 33222222222211111111110000000000
  22749. 10987654321098765432109876543210
  22750. xx111110xx1x0xx1110010xxxxxxxxxx
  22751. fcvtau. */
  22752. return 521;
  22753. }
  22754. }
  22755. else
  22756. {
  22757. if (((word >> 29) & 0x1) == 0)
  22758. {
  22759. /* 33222222222211111111110000000000
  22760. 10987654321098765432109876543210
  22761. xx011110xx1x1xx1110010xxxxxxxxxx
  22762. fcvtas. */
  22763. return 492;
  22764. }
  22765. else
  22766. {
  22767. /* 33222222222211111111110000000000
  22768. 10987654321098765432109876543210
  22769. xx111110xx1x1xx1110010xxxxxxxxxx
  22770. fcvtau. */
  22771. return 522;
  22772. }
  22773. }
  22774. }
  22775. }
  22776. }
  22777. }
  22778. else
  22779. {
  22780. if (((word >> 14) & 0x1) == 0)
  22781. {
  22782. if (((word >> 15) & 0x1) == 0)
  22783. {
  22784. if (((word >> 29) & 0x1) == 0)
  22785. {
  22786. if (((word >> 30) & 0x1) == 0)
  22787. {
  22788. /* 33222222222211111111110000000000
  22789. 10987654321098765432109876543210
  22790. x0011110xx1xxxxx001010xxxxxxxxxx
  22791. fadd. */
  22792. return 844;
  22793. }
  22794. else
  22795. {
  22796. /* 33222222222211111111110000000000
  22797. 10987654321098765432109876543210
  22798. x1011110xx1xxxxx001010xxxxxxxxxx
  22799. sha256su0. */
  22800. return 677;
  22801. }
  22802. }
  22803. else
  22804. {
  22805. /* 33222222222211111111110000000000
  22806. 10987654321098765432109876543210
  22807. xx111110xx1xxxxx001010xxxxxxxxxx
  22808. sqxtun. */
  22809. return 514;
  22810. }
  22811. }
  22812. else
  22813. {
  22814. if (((word >> 16) & 0x1) == 0)
  22815. {
  22816. /* 33222222222211111111110000000000
  22817. 10987654321098765432109876543210
  22818. xxx11110xx1xxxx0101010xxxxxxxxxx
  22819. cmlt. */
  22820. return 484;
  22821. }
  22822. else
  22823. {
  22824. if (((word >> 19) & 0x1) == 0)
  22825. {
  22826. if (((word >> 23) & 0x1) == 0)
  22827. {
  22828. if (((word >> 29) & 0x1) == 0)
  22829. {
  22830. /* 33222222222211111111110000000000
  22831. 10987654321098765432109876543210
  22832. xx0111100x1x0xx1101010xxxxxxxxxx
  22833. fcvtns. */
  22834. return 487;
  22835. }
  22836. else
  22837. {
  22838. /* 33222222222211111111110000000000
  22839. 10987654321098765432109876543210
  22840. xx1111100x1x0xx1101010xxxxxxxxxx
  22841. fcvtnu. */
  22842. return 517;
  22843. }
  22844. }
  22845. else
  22846. {
  22847. if (((word >> 29) & 0x1) == 0)
  22848. {
  22849. /* 33222222222211111111110000000000
  22850. 10987654321098765432109876543210
  22851. xx0111101x1x0xx1101010xxxxxxxxxx
  22852. fcvtps. */
  22853. return 501;
  22854. }
  22855. else
  22856. {
  22857. /* 33222222222211111111110000000000
  22858. 10987654321098765432109876543210
  22859. xx1111101x1x0xx1101010xxxxxxxxxx
  22860. fcvtpu. */
  22861. return 529;
  22862. }
  22863. }
  22864. }
  22865. else
  22866. {
  22867. if (((word >> 23) & 0x1) == 0)
  22868. {
  22869. if (((word >> 29) & 0x1) == 0)
  22870. {
  22871. /* 33222222222211111111110000000000
  22872. 10987654321098765432109876543210
  22873. xx0111100x1x1xx1101010xxxxxxxxxx
  22874. fcvtns. */
  22875. return 488;
  22876. }
  22877. else
  22878. {
  22879. /* 33222222222211111111110000000000
  22880. 10987654321098765432109876543210
  22881. xx1111100x1x1xx1101010xxxxxxxxxx
  22882. fcvtnu. */
  22883. return 518;
  22884. }
  22885. }
  22886. else
  22887. {
  22888. if (((word >> 29) & 0x1) == 0)
  22889. {
  22890. /* 33222222222211111111110000000000
  22891. 10987654321098765432109876543210
  22892. xx0111101x1x1xx1101010xxxxxxxxxx
  22893. fcvtps. */
  22894. return 502;
  22895. }
  22896. else
  22897. {
  22898. /* 33222222222211111111110000000000
  22899. 10987654321098765432109876543210
  22900. xx1111101x1x1xx1101010xxxxxxxxxx
  22901. fcvtpu. */
  22902. return 530;
  22903. }
  22904. }
  22905. }
  22906. }
  22907. }
  22908. }
  22909. else
  22910. {
  22911. if (((word >> 15) & 0x1) == 0)
  22912. {
  22913. if (((word >> 29) & 0x1) == 0)
  22914. {
  22915. /* 33222222222211111111110000000000
  22916. 10987654321098765432109876543210
  22917. xx011110xx1xxxxx011010xxxxxxxxxx
  22918. fmaxnm. */
  22919. return 852;
  22920. }
  22921. else
  22922. {
  22923. /* 33222222222211111111110000000000
  22924. 10987654321098765432109876543210
  22925. xx111110xx1xxxxx011010xxxxxxxxxx
  22926. fcvtxn. */
  22927. return 516;
  22928. }
  22929. }
  22930. else
  22931. {
  22932. if (((word >> 19) & 0x1) == 0)
  22933. {
  22934. /* 33222222222211111111110000000000
  22935. 10987654321098765432109876543210
  22936. xxx11110xx1x0xxx111010xxxxxxxxxx
  22937. fcmlt. */
  22938. return 499;
  22939. }
  22940. else
  22941. {
  22942. /* 33222222222211111111110000000000
  22943. 10987654321098765432109876543210
  22944. xxx11110xx1x1xxx111010xxxxxxxxxx
  22945. fcmlt. */
  22946. return 500;
  22947. }
  22948. }
  22949. }
  22950. }
  22951. }
  22952. else
  22953. {
  22954. if (((word >> 13) & 0x1) == 0)
  22955. {
  22956. if (((word >> 14) & 0x1) == 0)
  22957. {
  22958. if (((word >> 15) & 0x1) == 0)
  22959. {
  22960. if (((word >> 30) & 0x1) == 0)
  22961. {
  22962. /* 33222222222211111111110000000000
  22963. 10987654321098765432109876543210
  22964. x0x11110xx1xxxxx000110xxxxxxxxxx
  22965. fdiv. */
  22966. return 842;
  22967. }
  22968. else
  22969. {
  22970. /* 33222222222211111111110000000000
  22971. 10987654321098765432109876543210
  22972. x1x11110xx1xxxxx000110xxxxxxxxxx
  22973. sha1su1. */
  22974. return 676;
  22975. }
  22976. }
  22977. else
  22978. {
  22979. if (((word >> 29) & 0x1) == 0)
  22980. {
  22981. /* 33222222222211111111110000000000
  22982. 10987654321098765432109876543210
  22983. xx011110xx1xxxxx100110xxxxxxxxxx
  22984. cmeq. */
  22985. return 483;
  22986. }
  22987. else
  22988. {
  22989. /* 33222222222211111111110000000000
  22990. 10987654321098765432109876543210
  22991. xx111110xx1xxxxx100110xxxxxxxxxx
  22992. cmle. */
  22993. return 512;
  22994. }
  22995. }
  22996. }
  22997. else
  22998. {
  22999. if (((word >> 15) & 0x1) == 0)
  23000. {
  23001. /* 33222222222211111111110000000000
  23002. 10987654321098765432109876543210
  23003. xxx11110xx1xxxxx010110xxxxxxxxxx
  23004. fmin. */
  23005. return 850;
  23006. }
  23007. else
  23008. {
  23009. if (((word >> 16) & 0x1) == 0)
  23010. {
  23011. if (((word >> 19) & 0x1) == 0)
  23012. {
  23013. if (((word >> 20) & 0x1) == 0)
  23014. {
  23015. if (((word >> 29) & 0x1) == 0)
  23016. {
  23017. /* 33222222222211111111110000000000
  23018. 10987654321098765432109876543210
  23019. xx011110xx100xx0110110xxxxxxxxxx
  23020. fcmeq. */
  23021. return 497;
  23022. }
  23023. else
  23024. {
  23025. /* 33222222222211111111110000000000
  23026. 10987654321098765432109876543210
  23027. xx111110xx100xx0110110xxxxxxxxxx
  23028. fcmle. */
  23029. return 527;
  23030. }
  23031. }
  23032. else
  23033. {
  23034. if (((word >> 29) & 0x1) == 0)
  23035. {
  23036. /* 33222222222211111111110000000000
  23037. 10987654321098765432109876543210
  23038. xx011110xx110xx0110110xxxxxxxxxx
  23039. faddp. */
  23040. return 541;
  23041. }
  23042. else
  23043. {
  23044. /* 33222222222211111111110000000000
  23045. 10987654321098765432109876543210
  23046. xx111110xx110xx0110110xxxxxxxxxx
  23047. faddp. */
  23048. return 540;
  23049. }
  23050. }
  23051. }
  23052. else
  23053. {
  23054. if (((word >> 29) & 0x1) == 0)
  23055. {
  23056. /* 33222222222211111111110000000000
  23057. 10987654321098765432109876543210
  23058. xx011110xx1x1xx0110110xxxxxxxxxx
  23059. fcmeq. */
  23060. return 498;
  23061. }
  23062. else
  23063. {
  23064. /* 33222222222211111111110000000000
  23065. 10987654321098765432109876543210
  23066. xx111110xx1x1xx0110110xxxxxxxxxx
  23067. fcmle. */
  23068. return 528;
  23069. }
  23070. }
  23071. }
  23072. else
  23073. {
  23074. if (((word >> 19) & 0x1) == 0)
  23075. {
  23076. if (((word >> 23) & 0x1) == 0)
  23077. {
  23078. if (((word >> 29) & 0x1) == 0)
  23079. {
  23080. /* 33222222222211111111110000000000
  23081. 10987654321098765432109876543210
  23082. xx0111100x1x0xx1110110xxxxxxxxxx
  23083. scvtf. */
  23084. return 493;
  23085. }
  23086. else
  23087. {
  23088. /* 33222222222211111111110000000000
  23089. 10987654321098765432109876543210
  23090. xx1111100x1x0xx1110110xxxxxxxxxx
  23091. ucvtf. */
  23092. return 523;
  23093. }
  23094. }
  23095. else
  23096. {
  23097. if (((word >> 29) & 0x1) == 0)
  23098. {
  23099. /* 33222222222211111111110000000000
  23100. 10987654321098765432109876543210
  23101. xx0111101x1x0xx1110110xxxxxxxxxx
  23102. frecpe. */
  23103. return 505;
  23104. }
  23105. else
  23106. {
  23107. /* 33222222222211111111110000000000
  23108. 10987654321098765432109876543210
  23109. xx1111101x1x0xx1110110xxxxxxxxxx
  23110. frsqrte. */
  23111. return 533;
  23112. }
  23113. }
  23114. }
  23115. else
  23116. {
  23117. if (((word >> 23) & 0x1) == 0)
  23118. {
  23119. if (((word >> 29) & 0x1) == 0)
  23120. {
  23121. /* 33222222222211111111110000000000
  23122. 10987654321098765432109876543210
  23123. xx0111100x1x1xx1110110xxxxxxxxxx
  23124. scvtf. */
  23125. return 494;
  23126. }
  23127. else
  23128. {
  23129. /* 33222222222211111111110000000000
  23130. 10987654321098765432109876543210
  23131. xx1111100x1x1xx1110110xxxxxxxxxx
  23132. ucvtf. */
  23133. return 524;
  23134. }
  23135. }
  23136. else
  23137. {
  23138. if (((word >> 29) & 0x1) == 0)
  23139. {
  23140. /* 33222222222211111111110000000000
  23141. 10987654321098765432109876543210
  23142. xx0111101x1x1xx1110110xxxxxxxxxx
  23143. frecpe. */
  23144. return 506;
  23145. }
  23146. else
  23147. {
  23148. /* 33222222222211111111110000000000
  23149. 10987654321098765432109876543210
  23150. xx1111101x1x1xx1110110xxxxxxxxxx
  23151. frsqrte. */
  23152. return 534;
  23153. }
  23154. }
  23155. }
  23156. }
  23157. }
  23158. }
  23159. }
  23160. else
  23161. {
  23162. if (((word >> 14) & 0x1) == 0)
  23163. {
  23164. if (((word >> 15) & 0x1) == 0)
  23165. {
  23166. if (((word >> 29) & 0x1) == 0)
  23167. {
  23168. if (((word >> 30) & 0x1) == 0)
  23169. {
  23170. /* 33222222222211111111110000000000
  23171. 10987654321098765432109876543210
  23172. x0011110xx1xxxxx001110xxxxxxxxxx
  23173. fsub. */
  23174. return 846;
  23175. }
  23176. else
  23177. {
  23178. /* 33222222222211111111110000000000
  23179. 10987654321098765432109876543210
  23180. x1011110xx1xxxxx001110xxxxxxxxxx
  23181. suqadd. */
  23182. return 480;
  23183. }
  23184. }
  23185. else
  23186. {
  23187. /* 33222222222211111111110000000000
  23188. 10987654321098765432109876543210
  23189. xx111110xx1xxxxx001110xxxxxxxxxx
  23190. usqadd. */
  23191. return 509;
  23192. }
  23193. }
  23194. else
  23195. {
  23196. if (((word >> 16) & 0x1) == 0)
  23197. {
  23198. if (((word >> 29) & 0x1) == 0)
  23199. {
  23200. /* 33222222222211111111110000000000
  23201. 10987654321098765432109876543210
  23202. xx011110xx1xxxx0101110xxxxxxxxxx
  23203. abs. */
  23204. return 485;
  23205. }
  23206. else
  23207. {
  23208. /* 33222222222211111111110000000000
  23209. 10987654321098765432109876543210
  23210. xx111110xx1xxxx0101110xxxxxxxxxx
  23211. neg. */
  23212. return 513;
  23213. }
  23214. }
  23215. else
  23216. {
  23217. if (((word >> 19) & 0x1) == 0)
  23218. {
  23219. if (((word >> 20) & 0x1) == 0)
  23220. {
  23221. if (((word >> 23) & 0x1) == 0)
  23222. {
  23223. if (((word >> 29) & 0x1) == 0)
  23224. {
  23225. /* 33222222222211111111110000000000
  23226. 10987654321098765432109876543210
  23227. xx0111100x100xx1101110xxxxxxxxxx
  23228. fcvtms. */
  23229. return 489;
  23230. }
  23231. else
  23232. {
  23233. /* 33222222222211111111110000000000
  23234. 10987654321098765432109876543210
  23235. xx1111100x100xx1101110xxxxxxxxxx
  23236. fcvtmu. */
  23237. return 519;
  23238. }
  23239. }
  23240. else
  23241. {
  23242. if (((word >> 29) & 0x1) == 0)
  23243. {
  23244. /* 33222222222211111111110000000000
  23245. 10987654321098765432109876543210
  23246. xx0111101x100xx1101110xxxxxxxxxx
  23247. fcvtzs. */
  23248. return 503;
  23249. }
  23250. else
  23251. {
  23252. /* 33222222222211111111110000000000
  23253. 10987654321098765432109876543210
  23254. xx1111101x100xx1101110xxxxxxxxxx
  23255. fcvtzu. */
  23256. return 531;
  23257. }
  23258. }
  23259. }
  23260. else
  23261. {
  23262. /* 33222222222211111111110000000000
  23263. 10987654321098765432109876543210
  23264. xxx11110xx110xx1101110xxxxxxxxxx
  23265. addp. */
  23266. return 537;
  23267. }
  23268. }
  23269. else
  23270. {
  23271. if (((word >> 23) & 0x1) == 0)
  23272. {
  23273. if (((word >> 29) & 0x1) == 0)
  23274. {
  23275. /* 33222222222211111111110000000000
  23276. 10987654321098765432109876543210
  23277. xx0111100x1x1xx1101110xxxxxxxxxx
  23278. fcvtms. */
  23279. return 490;
  23280. }
  23281. else
  23282. {
  23283. /* 33222222222211111111110000000000
  23284. 10987654321098765432109876543210
  23285. xx1111100x1x1xx1101110xxxxxxxxxx
  23286. fcvtmu. */
  23287. return 520;
  23288. }
  23289. }
  23290. else
  23291. {
  23292. if (((word >> 29) & 0x1) == 0)
  23293. {
  23294. /* 33222222222211111111110000000000
  23295. 10987654321098765432109876543210
  23296. xx0111101x1x1xx1101110xxxxxxxxxx
  23297. fcvtzs. */
  23298. return 504;
  23299. }
  23300. else
  23301. {
  23302. /* 33222222222211111111110000000000
  23303. 10987654321098765432109876543210
  23304. xx1111101x1x1xx1101110xxxxxxxxxx
  23305. fcvtzu. */
  23306. return 532;
  23307. }
  23308. }
  23309. }
  23310. }
  23311. }
  23312. }
  23313. else
  23314. {
  23315. if (((word >> 15) & 0x1) == 0)
  23316. {
  23317. if (((word >> 29) & 0x1) == 0)
  23318. {
  23319. if (((word >> 30) & 0x1) == 0)
  23320. {
  23321. /* 33222222222211111111110000000000
  23322. 10987654321098765432109876543210
  23323. x0011110xx1xxxxx011110xxxxxxxxxx
  23324. fminnm. */
  23325. return 854;
  23326. }
  23327. else
  23328. {
  23329. /* 33222222222211111111110000000000
  23330. 10987654321098765432109876543210
  23331. x1011110xx1xxxxx011110xxxxxxxxxx
  23332. sqabs. */
  23333. return 481;
  23334. }
  23335. }
  23336. else
  23337. {
  23338. /* 33222222222211111111110000000000
  23339. 10987654321098765432109876543210
  23340. xx111110xx1xxxxx011110xxxxxxxxxx
  23341. sqneg. */
  23342. return 510;
  23343. }
  23344. }
  23345. else
  23346. {
  23347. if (((word >> 16) & 0x1) == 0)
  23348. {
  23349. if (((word >> 23) & 0x1) == 0)
  23350. {
  23351. if (((word >> 29) & 0x1) == 0)
  23352. {
  23353. /* 33222222222211111111110000000000
  23354. 10987654321098765432109876543210
  23355. xx0111100x1xxxx0111110xxxxxxxxxx
  23356. fmaxp. */
  23357. return 543;
  23358. }
  23359. else
  23360. {
  23361. /* 33222222222211111111110000000000
  23362. 10987654321098765432109876543210
  23363. xx1111100x1xxxx0111110xxxxxxxxxx
  23364. fmaxp. */
  23365. return 542;
  23366. }
  23367. }
  23368. else
  23369. {
  23370. if (((word >> 29) & 0x1) == 0)
  23371. {
  23372. /* 33222222222211111111110000000000
  23373. 10987654321098765432109876543210
  23374. xx0111101x1xxxx0111110xxxxxxxxxx
  23375. fminp. */
  23376. return 547;
  23377. }
  23378. else
  23379. {
  23380. /* 33222222222211111111110000000000
  23381. 10987654321098765432109876543210
  23382. xx1111101x1xxxx0111110xxxxxxxxxx
  23383. fminp. */
  23384. return 546;
  23385. }
  23386. }
  23387. }
  23388. else
  23389. {
  23390. if (((word >> 19) & 0x1) == 0)
  23391. {
  23392. /* 33222222222211111111110000000000
  23393. 10987654321098765432109876543210
  23394. xxx11110xx1x0xx1111110xxxxxxxxxx
  23395. frecpx. */
  23396. return 507;
  23397. }
  23398. else
  23399. {
  23400. /* 33222222222211111111110000000000
  23401. 10987654321098765432109876543210
  23402. xxx11110xx1x1xx1111110xxxxxxxxxx
  23403. frecpx. */
  23404. return 508;
  23405. }
  23406. }
  23407. }
  23408. }
  23409. }
  23410. }
  23411. }
  23412. }
  23413. else
  23414. {
  23415. if (((word >> 11) & 0x1) == 0)
  23416. {
  23417. if (((word >> 29) & 0x1) == 0)
  23418. {
  23419. if (((word >> 30) & 0x1) == 0)
  23420. {
  23421. if (((word >> 4) & 0x1) == 0)
  23422. {
  23423. /* 33222222222211111111110000000000
  23424. 10987654321098765432109876543210
  23425. x0011110xx1xxxxxxxxx01xxxxx0xxxx
  23426. fccmp. */
  23427. return 799;
  23428. }
  23429. else
  23430. {
  23431. /* 33222222222211111111110000000000
  23432. 10987654321098765432109876543210
  23433. x0011110xx1xxxxxxxxx01xxxxx1xxxx
  23434. fccmpe. */
  23435. return 801;
  23436. }
  23437. }
  23438. else
  23439. {
  23440. if (((word >> 12) & 0x1) == 0)
  23441. {
  23442. if (((word >> 13) & 0x1) == 0)
  23443. {
  23444. if (((word >> 14) & 0x1) == 0)
  23445. {
  23446. /* 33222222222211111111110000000000
  23447. 10987654321098765432109876543210
  23448. x1011110xx1xxxxxx00001xxxxxxxxxx
  23449. add. */
  23450. return 565;
  23451. }
  23452. else
  23453. {
  23454. /* 33222222222211111111110000000000
  23455. 10987654321098765432109876543210
  23456. x1011110xx1xxxxxx10001xxxxxxxxxx
  23457. sshl. */
  23458. return 563;
  23459. }
  23460. }
  23461. else
  23462. {
  23463. /* 33222222222211111111110000000000
  23464. 10987654321098765432109876543210
  23465. x1011110xx1xxxxxxx1001xxxxxxxxxx
  23466. fcmeq. */
  23467. return 555;
  23468. }
  23469. }
  23470. else
  23471. {
  23472. if (((word >> 13) & 0x1) == 0)
  23473. {
  23474. /* 33222222222211111111110000000000
  23475. 10987654321098765432109876543210
  23476. x1011110xx1xxxxxxx0101xxxxxxxxxx
  23477. srshl. */
  23478. return 564;
  23479. }
  23480. else
  23481. {
  23482. if (((word >> 15) & 0x1) == 0)
  23483. {
  23484. /* 33222222222211111111110000000000
  23485. 10987654321098765432109876543210
  23486. x1011110xx1xxxxx0x1101xxxxxxxxxx
  23487. cmgt. */
  23488. return 561;
  23489. }
  23490. else
  23491. {
  23492. /* 33222222222211111111110000000000
  23493. 10987654321098765432109876543210
  23494. x1011110xx1xxxxx1x1101xxxxxxxxxx
  23495. sqdmulh. */
  23496. return 552;
  23497. }
  23498. }
  23499. }
  23500. }
  23501. }
  23502. else
  23503. {
  23504. if (((word >> 12) & 0x1) == 0)
  23505. {
  23506. if (((word >> 13) & 0x1) == 0)
  23507. {
  23508. if (((word >> 14) & 0x1) == 0)
  23509. {
  23510. /* 33222222222211111111110000000000
  23511. 10987654321098765432109876543210
  23512. xx111110xx1xxxxxx00001xxxxxxxxxx
  23513. sub. */
  23514. return 586;
  23515. }
  23516. else
  23517. {
  23518. /* 33222222222211111111110000000000
  23519. 10987654321098765432109876543210
  23520. xx111110xx1xxxxxx10001xxxxxxxxxx
  23521. ushl. */
  23522. return 584;
  23523. }
  23524. }
  23525. else
  23526. {
  23527. if (((word >> 23) & 0x1) == 0)
  23528. {
  23529. /* 33222222222211111111110000000000
  23530. 10987654321098765432109876543210
  23531. xx1111100x1xxxxxxx1001xxxxxxxxxx
  23532. fcmge. */
  23533. return 572;
  23534. }
  23535. else
  23536. {
  23537. /* 33222222222211111111110000000000
  23538. 10987654321098765432109876543210
  23539. xx1111101x1xxxxxxx1001xxxxxxxxxx
  23540. fcmgt. */
  23541. return 578;
  23542. }
  23543. }
  23544. }
  23545. else
  23546. {
  23547. if (((word >> 13) & 0x1) == 0)
  23548. {
  23549. if (((word >> 15) & 0x1) == 0)
  23550. {
  23551. /* 33222222222211111111110000000000
  23552. 10987654321098765432109876543210
  23553. xx111110xx1xxxxx0x0101xxxxxxxxxx
  23554. urshl. */
  23555. return 585;
  23556. }
  23557. else
  23558. {
  23559. /* 33222222222211111111110000000000
  23560. 10987654321098765432109876543210
  23561. xx111110xx1xxxxx1x0101xxxxxxxxxx
  23562. fabd. */
  23563. return 576;
  23564. }
  23565. }
  23566. else
  23567. {
  23568. if (((word >> 15) & 0x1) == 0)
  23569. {
  23570. /* 33222222222211111111110000000000
  23571. 10987654321098765432109876543210
  23572. xx111110xx1xxxxx0x1101xxxxxxxxxx
  23573. cmhi. */
  23574. return 582;
  23575. }
  23576. else
  23577. {
  23578. /* 33222222222211111111110000000000
  23579. 10987654321098765432109876543210
  23580. xx111110xx1xxxxx1x1101xxxxxxxxxx
  23581. sqrdmulh. */
  23582. return 571;
  23583. }
  23584. }
  23585. }
  23586. }
  23587. }
  23588. else
  23589. {
  23590. if (((word >> 29) & 0x1) == 0)
  23591. {
  23592. if (((word >> 30) & 0x1) == 0)
  23593. {
  23594. /* 33222222222211111111110000000000
  23595. 10987654321098765432109876543210
  23596. x0011110xx1xxxxxxxxx11xxxxxxxxxx
  23597. fcsel. */
  23598. return 868;
  23599. }
  23600. else
  23601. {
  23602. if (((word >> 12) & 0x1) == 0)
  23603. {
  23604. if (((word >> 13) & 0x1) == 0)
  23605. {
  23606. if (((word >> 14) & 0x1) == 0)
  23607. {
  23608. if (((word >> 15) & 0x1) == 0)
  23609. {
  23610. /* 33222222222211111111110000000000
  23611. 10987654321098765432109876543210
  23612. x1011110xx1xxxxx000011xxxxxxxxxx
  23613. sqadd. */
  23614. return 548;
  23615. }
  23616. else
  23617. {
  23618. /* 33222222222211111111110000000000
  23619. 10987654321098765432109876543210
  23620. x1011110xx1xxxxx100011xxxxxxxxxx
  23621. cmtst. */
  23622. return 566;
  23623. }
  23624. }
  23625. else
  23626. {
  23627. /* 33222222222211111111110000000000
  23628. 10987654321098765432109876543210
  23629. x1011110xx1xxxxxx10011xxxxxxxxxx
  23630. sqshl. */
  23631. return 550;
  23632. }
  23633. }
  23634. else
  23635. {
  23636. /* 33222222222211111111110000000000
  23637. 10987654321098765432109876543210
  23638. x1011110xx1xxxxxxx1011xxxxxxxxxx
  23639. sqsub. */
  23640. return 549;
  23641. }
  23642. }
  23643. else
  23644. {
  23645. if (((word >> 13) & 0x1) == 0)
  23646. {
  23647. if (((word >> 15) & 0x1) == 0)
  23648. {
  23649. /* 33222222222211111111110000000000
  23650. 10987654321098765432109876543210
  23651. x1011110xx1xxxxx0x0111xxxxxxxxxx
  23652. sqrshl. */
  23653. return 551;
  23654. }
  23655. else
  23656. {
  23657. /* 33222222222211111111110000000000
  23658. 10987654321098765432109876543210
  23659. x1011110xx1xxxxx1x0111xxxxxxxxxx
  23660. fmulx. */
  23661. return 553;
  23662. }
  23663. }
  23664. else
  23665. {
  23666. if (((word >> 14) & 0x1) == 0)
  23667. {
  23668. /* 33222222222211111111110000000000
  23669. 10987654321098765432109876543210
  23670. x1011110xx1xxxxxx01111xxxxxxxxxx
  23671. cmge. */
  23672. return 562;
  23673. }
  23674. else
  23675. {
  23676. if (((word >> 23) & 0x1) == 0)
  23677. {
  23678. /* 33222222222211111111110000000000
  23679. 10987654321098765432109876543210
  23680. x10111100x1xxxxxx11111xxxxxxxxxx
  23681. frecps. */
  23682. return 557;
  23683. }
  23684. else
  23685. {
  23686. /* 33222222222211111111110000000000
  23687. 10987654321098765432109876543210
  23688. x10111101x1xxxxxx11111xxxxxxxxxx
  23689. frsqrts. */
  23690. return 559;
  23691. }
  23692. }
  23693. }
  23694. }
  23695. }
  23696. }
  23697. else
  23698. {
  23699. if (((word >> 12) & 0x1) == 0)
  23700. {
  23701. if (((word >> 13) & 0x1) == 0)
  23702. {
  23703. if (((word >> 14) & 0x1) == 0)
  23704. {
  23705. if (((word >> 15) & 0x1) == 0)
  23706. {
  23707. /* 33222222222211111111110000000000
  23708. 10987654321098765432109876543210
  23709. xx111110xx1xxxxx000011xxxxxxxxxx
  23710. uqadd. */
  23711. return 567;
  23712. }
  23713. else
  23714. {
  23715. /* 33222222222211111111110000000000
  23716. 10987654321098765432109876543210
  23717. xx111110xx1xxxxx100011xxxxxxxxxx
  23718. cmeq. */
  23719. return 587;
  23720. }
  23721. }
  23722. else
  23723. {
  23724. /* 33222222222211111111110000000000
  23725. 10987654321098765432109876543210
  23726. xx111110xx1xxxxxx10011xxxxxxxxxx
  23727. uqshl. */
  23728. return 569;
  23729. }
  23730. }
  23731. else
  23732. {
  23733. if (((word >> 14) & 0x1) == 0)
  23734. {
  23735. /* 33222222222211111111110000000000
  23736. 10987654321098765432109876543210
  23737. xx111110xx1xxxxxx01011xxxxxxxxxx
  23738. uqsub. */
  23739. return 568;
  23740. }
  23741. else
  23742. {
  23743. if (((word >> 23) & 0x1) == 0)
  23744. {
  23745. /* 33222222222211111111110000000000
  23746. 10987654321098765432109876543210
  23747. xx1111100x1xxxxxx11011xxxxxxxxxx
  23748. facge. */
  23749. return 574;
  23750. }
  23751. else
  23752. {
  23753. /* 33222222222211111111110000000000
  23754. 10987654321098765432109876543210
  23755. xx1111101x1xxxxxx11011xxxxxxxxxx
  23756. facgt. */
  23757. return 580;
  23758. }
  23759. }
  23760. }
  23761. }
  23762. else
  23763. {
  23764. if (((word >> 13) & 0x1) == 0)
  23765. {
  23766. /* 33222222222211111111110000000000
  23767. 10987654321098765432109876543210
  23768. xx111110xx1xxxxxxx0111xxxxxxxxxx
  23769. uqrshl. */
  23770. return 570;
  23771. }
  23772. else
  23773. {
  23774. /* 33222222222211111111110000000000
  23775. 10987654321098765432109876543210
  23776. xx111110xx1xxxxxxx1111xxxxxxxxxx
  23777. cmhs. */
  23778. return 583;
  23779. }
  23780. }
  23781. }
  23782. }
  23783. }
  23784. }
  23785. }
  23786. }
  23787. else
  23788. {
  23789. if (((word >> 15) & 0x1) == 0)
  23790. {
  23791. if (((word >> 28) & 0x1) == 0)
  23792. {
  23793. if (((word >> 10) & 0x1) == 0)
  23794. {
  23795. if (((word >> 12) & 0x1) == 0)
  23796. {
  23797. if (((word >> 13) & 0x1) == 0)
  23798. {
  23799. if (((word >> 14) & 0x1) == 0)
  23800. {
  23801. if (((word >> 29) & 0x1) == 0)
  23802. {
  23803. if (((word >> 30) & 0x1) == 0)
  23804. {
  23805. /* 33222222222211111111110000000000
  23806. 10987654321098765432109876543210
  23807. x0001111xxxxxxxx0000x0xxxxxxxxxx
  23808. fmlal. */
  23809. return 2443;
  23810. }
  23811. else
  23812. {
  23813. /* 33222222222211111111110000000000
  23814. 10987654321098765432109876543210
  23815. x1001111xxxxxxxx0000x0xxxxxxxxxx
  23816. fmlal. */
  23817. return 2447;
  23818. }
  23819. }
  23820. else
  23821. {
  23822. /* 33222222222211111111110000000000
  23823. 10987654321098765432109876543210
  23824. xx101111xxxxxxxx0000x0xxxxxxxxxx
  23825. mla. */
  23826. return 119;
  23827. }
  23828. }
  23829. else
  23830. {
  23831. if (((word >> 29) & 0x1) == 0)
  23832. {
  23833. if (((word >> 30) & 0x1) == 0)
  23834. {
  23835. /* 33222222222211111111110000000000
  23836. 10987654321098765432109876543210
  23837. x0001111xxxxxxxx0100x0xxxxxxxxxx
  23838. fmlsl. */
  23839. return 2444;
  23840. }
  23841. else
  23842. {
  23843. /* 33222222222211111111110000000000
  23844. 10987654321098765432109876543210
  23845. x1001111xxxxxxxx0100x0xxxxxxxxxx
  23846. fmlsl. */
  23847. return 2448;
  23848. }
  23849. }
  23850. else
  23851. {
  23852. /* 33222222222211111111110000000000
  23853. 10987654321098765432109876543210
  23854. xx101111xxxxxxxx0100x0xxxxxxxxxx
  23855. mls. */
  23856. return 122;
  23857. }
  23858. }
  23859. }
  23860. else
  23861. {
  23862. if (((word >> 14) & 0x1) == 0)
  23863. {
  23864. if (((word >> 29) & 0x1) == 0)
  23865. {
  23866. if (((word >> 30) & 0x1) == 0)
  23867. {
  23868. /* 33222222222211111111110000000000
  23869. 10987654321098765432109876543210
  23870. x0001111xxxxxxxx0010x0xxxxxxxxxx
  23871. smlal. */
  23872. return 98;
  23873. }
  23874. else
  23875. {
  23876. /* 33222222222211111111110000000000
  23877. 10987654321098765432109876543210
  23878. x1001111xxxxxxxx0010x0xxxxxxxxxx
  23879. smlal2. */
  23880. return 99;
  23881. }
  23882. }
  23883. else
  23884. {
  23885. if (((word >> 30) & 0x1) == 0)
  23886. {
  23887. /* 33222222222211111111110000000000
  23888. 10987654321098765432109876543210
  23889. x0101111xxxxxxxx0010x0xxxxxxxxxx
  23890. umlal. */
  23891. return 120;
  23892. }
  23893. else
  23894. {
  23895. /* 33222222222211111111110000000000
  23896. 10987654321098765432109876543210
  23897. x1101111xxxxxxxx0010x0xxxxxxxxxx
  23898. umlal2. */
  23899. return 121;
  23900. }
  23901. }
  23902. }
  23903. else
  23904. {
  23905. if (((word >> 29) & 0x1) == 0)
  23906. {
  23907. if (((word >> 30) & 0x1) == 0)
  23908. {
  23909. /* 33222222222211111111110000000000
  23910. 10987654321098765432109876543210
  23911. x0001111xxxxxxxx0110x0xxxxxxxxxx
  23912. smlsl. */
  23913. return 102;
  23914. }
  23915. else
  23916. {
  23917. /* 33222222222211111111110000000000
  23918. 10987654321098765432109876543210
  23919. x1001111xxxxxxxx0110x0xxxxxxxxxx
  23920. smlsl2. */
  23921. return 103;
  23922. }
  23923. }
  23924. else
  23925. {
  23926. if (((word >> 30) & 0x1) == 0)
  23927. {
  23928. /* 33222222222211111111110000000000
  23929. 10987654321098765432109876543210
  23930. x0101111xxxxxxxx0110x0xxxxxxxxxx
  23931. umlsl. */
  23932. return 123;
  23933. }
  23934. else
  23935. {
  23936. /* 33222222222211111111110000000000
  23937. 10987654321098765432109876543210
  23938. x1101111xxxxxxxx0110x0xxxxxxxxxx
  23939. umlsl2. */
  23940. return 124;
  23941. }
  23942. }
  23943. }
  23944. }
  23945. }
  23946. else
  23947. {
  23948. if (((word >> 29) & 0x1) == 0)
  23949. {
  23950. if (((word >> 13) & 0x1) == 0)
  23951. {
  23952. if (((word >> 14) & 0x1) == 0)
  23953. {
  23954. if (((word >> 23) & 0x1) == 0)
  23955. {
  23956. /* 33222222222211111111110000000000
  23957. 10987654321098765432109876543210
  23958. xx0011110xxxxxxx0001x0xxxxxxxxxx
  23959. fmla. */
  23960. return 114;
  23961. }
  23962. else
  23963. {
  23964. /* 33222222222211111111110000000000
  23965. 10987654321098765432109876543210
  23966. xx0011111xxxxxxx0001x0xxxxxxxxxx
  23967. fmla. */
  23968. return 113;
  23969. }
  23970. }
  23971. else
  23972. {
  23973. if (((word >> 23) & 0x1) == 0)
  23974. {
  23975. /* 33222222222211111111110000000000
  23976. 10987654321098765432109876543210
  23977. xx0011110xxxxxxx0101x0xxxxxxxxxx
  23978. fmls. */
  23979. return 116;
  23980. }
  23981. else
  23982. {
  23983. /* 33222222222211111111110000000000
  23984. 10987654321098765432109876543210
  23985. xx0011111xxxxxxx0101x0xxxxxxxxxx
  23986. fmls. */
  23987. return 115;
  23988. }
  23989. }
  23990. }
  23991. else
  23992. {
  23993. if (((word >> 14) & 0x1) == 0)
  23994. {
  23995. if (((word >> 30) & 0x1) == 0)
  23996. {
  23997. /* 33222222222211111111110000000000
  23998. 10987654321098765432109876543210
  23999. x0001111xxxxxxxx0011x0xxxxxxxxxx
  24000. sqdmlal. */
  24001. return 100;
  24002. }
  24003. else
  24004. {
  24005. /* 33222222222211111111110000000000
  24006. 10987654321098765432109876543210
  24007. x1001111xxxxxxxx0011x0xxxxxxxxxx
  24008. sqdmlal2. */
  24009. return 101;
  24010. }
  24011. }
  24012. else
  24013. {
  24014. if (((word >> 30) & 0x1) == 0)
  24015. {
  24016. /* 33222222222211111111110000000000
  24017. 10987654321098765432109876543210
  24018. x0001111xxxxxxxx0111x0xxxxxxxxxx
  24019. sqdmlsl. */
  24020. return 104;
  24021. }
  24022. else
  24023. {
  24024. /* 33222222222211111111110000000000
  24025. 10987654321098765432109876543210
  24026. x1001111xxxxxxxx0111x0xxxxxxxxxx
  24027. sqdmlsl2. */
  24028. return 105;
  24029. }
  24030. }
  24031. }
  24032. }
  24033. else
  24034. {
  24035. /* 33222222222211111111110000000000
  24036. 10987654321098765432109876543210
  24037. xx101111xxxxxxxx0xx1x0xxxxxxxxxx
  24038. fcmla. */
  24039. return 131;
  24040. }
  24041. }
  24042. }
  24043. else
  24044. {
  24045. if (((word >> 12) & 0x1) == 0)
  24046. {
  24047. if (((word >> 29) & 0x1) == 0)
  24048. {
  24049. /* 33222222222211111111110000000000
  24050. 10987654321098765432109876543210
  24051. xx001111xxxxxxxx0xx0x1xxxxxxxxxx
  24052. movi. */
  24053. return 133;
  24054. }
  24055. else
  24056. {
  24057. /* 33222222222211111111110000000000
  24058. 10987654321098765432109876543210
  24059. xx101111xxxxxxxx0xx0x1xxxxxxxxxx
  24060. mvni. */
  24061. return 141;
  24062. }
  24063. }
  24064. else
  24065. {
  24066. if (((word >> 29) & 0x1) == 0)
  24067. {
  24068. /* 33222222222211111111110000000000
  24069. 10987654321098765432109876543210
  24070. xx001111xxxxxxxx0xx1x1xxxxxxxxxx
  24071. orr. */
  24072. return 134;
  24073. }
  24074. else
  24075. {
  24076. /* 33222222222211111111110000000000
  24077. 10987654321098765432109876543210
  24078. xx101111xxxxxxxx0xx1x1xxxxxxxxxx
  24079. bic. */
  24080. return 142;
  24081. }
  24082. }
  24083. }
  24084. }
  24085. else
  24086. {
  24087. if (((word >> 29) & 0x1) == 0)
  24088. {
  24089. if (((word >> 30) & 0x1) == 0)
  24090. {
  24091. if (((word >> 21) & 0x1) == 0)
  24092. {
  24093. /* 33222222222211111111110000000000
  24094. 10987654321098765432109876543210
  24095. x0011111xx0xxxxx0xxxxxxxxxxxxxxx
  24096. fmadd. */
  24097. return 858;
  24098. }
  24099. else
  24100. {
  24101. /* 33222222222211111111110000000000
  24102. 10987654321098765432109876543210
  24103. x0011111xx1xxxxx0xxxxxxxxxxxxxxx
  24104. fnmadd. */
  24105. return 862;
  24106. }
  24107. }
  24108. else
  24109. {
  24110. if (((word >> 10) & 0x1) == 0)
  24111. {
  24112. if (((word >> 13) & 0x1) == 0)
  24113. {
  24114. if (((word >> 14) & 0x1) == 0)
  24115. {
  24116. if (((word >> 23) & 0x1) == 0)
  24117. {
  24118. /* 33222222222211111111110000000000
  24119. 10987654321098765432109876543210
  24120. x10111110xxxxxxx000xx0xxxxxxxxxx
  24121. fmla. */
  24122. return 431;
  24123. }
  24124. else
  24125. {
  24126. /* 33222222222211111111110000000000
  24127. 10987654321098765432109876543210
  24128. x10111111xxxxxxx000xx0xxxxxxxxxx
  24129. fmla. */
  24130. return 430;
  24131. }
  24132. }
  24133. else
  24134. {
  24135. if (((word >> 23) & 0x1) == 0)
  24136. {
  24137. /* 33222222222211111111110000000000
  24138. 10987654321098765432109876543210
  24139. x10111110xxxxxxx010xx0xxxxxxxxxx
  24140. fmls. */
  24141. return 433;
  24142. }
  24143. else
  24144. {
  24145. /* 33222222222211111111110000000000
  24146. 10987654321098765432109876543210
  24147. x10111111xxxxxxx010xx0xxxxxxxxxx
  24148. fmls. */
  24149. return 432;
  24150. }
  24151. }
  24152. }
  24153. else
  24154. {
  24155. if (((word >> 14) & 0x1) == 0)
  24156. {
  24157. /* 33222222222211111111110000000000
  24158. 10987654321098765432109876543210
  24159. x1011111xxxxxxxx001xx0xxxxxxxxxx
  24160. sqdmlal. */
  24161. return 425;
  24162. }
  24163. else
  24164. {
  24165. /* 33222222222211111111110000000000
  24166. 10987654321098765432109876543210
  24167. x1011111xxxxxxxx011xx0xxxxxxxxxx
  24168. sqdmlsl. */
  24169. return 426;
  24170. }
  24171. }
  24172. }
  24173. else
  24174. {
  24175. if (((word >> 12) & 0x1) == 0)
  24176. {
  24177. if (((word >> 13) & 0x1) == 0)
  24178. {
  24179. /* 33222222222211111111110000000000
  24180. 10987654321098765432109876543210
  24181. x1011111xxxxxxxx0x00x1xxxxxxxxxx
  24182. sshr. */
  24183. return 590;
  24184. }
  24185. else
  24186. {
  24187. /* 33222222222211111111110000000000
  24188. 10987654321098765432109876543210
  24189. x1011111xxxxxxxx0x10x1xxxxxxxxxx
  24190. srshr. */
  24191. return 592;
  24192. }
  24193. }
  24194. else
  24195. {
  24196. if (((word >> 13) & 0x1) == 0)
  24197. {
  24198. if (((word >> 14) & 0x1) == 0)
  24199. {
  24200. /* 33222222222211111111110000000000
  24201. 10987654321098765432109876543210
  24202. x1011111xxxxxxxx0001x1xxxxxxxxxx
  24203. ssra. */
  24204. return 591;
  24205. }
  24206. else
  24207. {
  24208. /* 33222222222211111111110000000000
  24209. 10987654321098765432109876543210
  24210. x1011111xxxxxxxx0101x1xxxxxxxxxx
  24211. shl. */
  24212. return 594;
  24213. }
  24214. }
  24215. else
  24216. {
  24217. if (((word >> 14) & 0x1) == 0)
  24218. {
  24219. /* 33222222222211111111110000000000
  24220. 10987654321098765432109876543210
  24221. x1011111xxxxxxxx0011x1xxxxxxxxxx
  24222. srsra. */
  24223. return 593;
  24224. }
  24225. else
  24226. {
  24227. /* 33222222222211111111110000000000
  24228. 10987654321098765432109876543210
  24229. x1011111xxxxxxxx0111x1xxxxxxxxxx
  24230. sqshl. */
  24231. return 595;
  24232. }
  24233. }
  24234. }
  24235. }
  24236. }
  24237. }
  24238. else
  24239. {
  24240. if (((word >> 12) & 0x1) == 0)
  24241. {
  24242. if (((word >> 13) & 0x1) == 0)
  24243. {
  24244. if (((word >> 14) & 0x1) == 0)
  24245. {
  24246. /* 33222222222211111111110000000000
  24247. 10987654321098765432109876543210
  24248. xx111111xxxxxxxx0000xxxxxxxxxxxx
  24249. ushr. */
  24250. return 602;
  24251. }
  24252. else
  24253. {
  24254. /* 33222222222211111111110000000000
  24255. 10987654321098765432109876543210
  24256. xx111111xxxxxxxx0100xxxxxxxxxxxx
  24257. sri. */
  24258. return 606;
  24259. }
  24260. }
  24261. else
  24262. {
  24263. if (((word >> 14) & 0x1) == 0)
  24264. {
  24265. /* 33222222222211111111110000000000
  24266. 10987654321098765432109876543210
  24267. xx111111xxxxxxxx0010xxxxxxxxxxxx
  24268. urshr. */
  24269. return 604;
  24270. }
  24271. else
  24272. {
  24273. /* 33222222222211111111110000000000
  24274. 10987654321098765432109876543210
  24275. xx111111xxxxxxxx0110xxxxxxxxxxxx
  24276. sqshlu. */
  24277. return 608;
  24278. }
  24279. }
  24280. }
  24281. else
  24282. {
  24283. if (((word >> 13) & 0x1) == 0)
  24284. {
  24285. if (((word >> 14) & 0x1) == 0)
  24286. {
  24287. /* 33222222222211111111110000000000
  24288. 10987654321098765432109876543210
  24289. xx111111xxxxxxxx0001xxxxxxxxxxxx
  24290. usra. */
  24291. return 603;
  24292. }
  24293. else
  24294. {
  24295. /* 33222222222211111111110000000000
  24296. 10987654321098765432109876543210
  24297. xx111111xxxxxxxx0101xxxxxxxxxxxx
  24298. sli. */
  24299. return 607;
  24300. }
  24301. }
  24302. else
  24303. {
  24304. if (((word >> 14) & 0x1) == 0)
  24305. {
  24306. /* 33222222222211111111110000000000
  24307. 10987654321098765432109876543210
  24308. xx111111xxxxxxxx0011xxxxxxxxxxxx
  24309. ursra. */
  24310. return 605;
  24311. }
  24312. else
  24313. {
  24314. /* 33222222222211111111110000000000
  24315. 10987654321098765432109876543210
  24316. xx111111xxxxxxxx0111xxxxxxxxxxxx
  24317. uqshl. */
  24318. return 609;
  24319. }
  24320. }
  24321. }
  24322. }
  24323. }
  24324. }
  24325. else
  24326. {
  24327. if (((word >> 28) & 0x1) == 0)
  24328. {
  24329. if (((word >> 10) & 0x1) == 0)
  24330. {
  24331. if (((word >> 12) & 0x1) == 0)
  24332. {
  24333. if (((word >> 13) & 0x1) == 0)
  24334. {
  24335. if (((word >> 14) & 0x1) == 0)
  24336. {
  24337. if (((word >> 29) & 0x1) == 0)
  24338. {
  24339. /* 33222222222211111111110000000000
  24340. 10987654321098765432109876543210
  24341. xx001111xxxxxxxx1000x0xxxxxxxxxx
  24342. mul. */
  24343. return 106;
  24344. }
  24345. else
  24346. {
  24347. if (((word >> 30) & 0x1) == 0)
  24348. {
  24349. /* 33222222222211111111110000000000
  24350. 10987654321098765432109876543210
  24351. x0101111xxxxxxxx1000x0xxxxxxxxxx
  24352. fmlal2. */
  24353. return 2445;
  24354. }
  24355. else
  24356. {
  24357. /* 33222222222211111111110000000000
  24358. 10987654321098765432109876543210
  24359. x1101111xxxxxxxx1000x0xxxxxxxxxx
  24360. fmlal2. */
  24361. return 2449;
  24362. }
  24363. }
  24364. }
  24365. else
  24366. {
  24367. if (((word >> 29) & 0x1) == 0)
  24368. {
  24369. /* 33222222222211111111110000000000
  24370. 10987654321098765432109876543210
  24371. xx001111xxxxxxxx1100x0xxxxxxxxxx
  24372. sqdmulh. */
  24373. return 111;
  24374. }
  24375. else
  24376. {
  24377. if (((word >> 30) & 0x1) == 0)
  24378. {
  24379. /* 33222222222211111111110000000000
  24380. 10987654321098765432109876543210
  24381. x0101111xxxxxxxx1100x0xxxxxxxxxx
  24382. fmlsl2. */
  24383. return 2446;
  24384. }
  24385. else
  24386. {
  24387. /* 33222222222211111111110000000000
  24388. 10987654321098765432109876543210
  24389. x1101111xxxxxxxx1100x0xxxxxxxxxx
  24390. fmlsl2. */
  24391. return 2450;
  24392. }
  24393. }
  24394. }
  24395. }
  24396. else
  24397. {
  24398. if (((word >> 14) & 0x1) == 0)
  24399. {
  24400. if (((word >> 29) & 0x1) == 0)
  24401. {
  24402. if (((word >> 30) & 0x1) == 0)
  24403. {
  24404. /* 33222222222211111111110000000000
  24405. 10987654321098765432109876543210
  24406. x0001111xxxxxxxx1010x0xxxxxxxxxx
  24407. smull. */
  24408. return 107;
  24409. }
  24410. else
  24411. {
  24412. /* 33222222222211111111110000000000
  24413. 10987654321098765432109876543210
  24414. x1001111xxxxxxxx1010x0xxxxxxxxxx
  24415. smull2. */
  24416. return 108;
  24417. }
  24418. }
  24419. else
  24420. {
  24421. if (((word >> 30) & 0x1) == 0)
  24422. {
  24423. /* 33222222222211111111110000000000
  24424. 10987654321098765432109876543210
  24425. x0101111xxxxxxxx1010x0xxxxxxxxxx
  24426. umull. */
  24427. return 125;
  24428. }
  24429. else
  24430. {
  24431. /* 33222222222211111111110000000000
  24432. 10987654321098765432109876543210
  24433. x1101111xxxxxxxx1010x0xxxxxxxxxx
  24434. umull2. */
  24435. return 126;
  24436. }
  24437. }
  24438. }
  24439. else
  24440. {
  24441. if (((word >> 29) & 0x1) == 0)
  24442. {
  24443. /* 33222222222211111111110000000000
  24444. 10987654321098765432109876543210
  24445. xx001111xxxxxxxx1110x0xxxxxxxxxx
  24446. sdot. */
  24447. return 2417;
  24448. }
  24449. else
  24450. {
  24451. /* 33222222222211111111110000000000
  24452. 10987654321098765432109876543210
  24453. xx101111xxxxxxxx1110x0xxxxxxxxxx
  24454. udot. */
  24455. return 2416;
  24456. }
  24457. }
  24458. }
  24459. }
  24460. else
  24461. {
  24462. if (((word >> 13) & 0x1) == 0)
  24463. {
  24464. if (((word >> 14) & 0x1) == 0)
  24465. {
  24466. if (((word >> 23) & 0x1) == 0)
  24467. {
  24468. if (((word >> 29) & 0x1) == 0)
  24469. {
  24470. /* 33222222222211111111110000000000
  24471. 10987654321098765432109876543210
  24472. xx0011110xxxxxxx1001x0xxxxxxxxxx
  24473. fmul. */
  24474. return 118;
  24475. }
  24476. else
  24477. {
  24478. /* 33222222222211111111110000000000
  24479. 10987654321098765432109876543210
  24480. xx1011110xxxxxxx1001x0xxxxxxxxxx
  24481. fmulx. */
  24482. return 128;
  24483. }
  24484. }
  24485. else
  24486. {
  24487. if (((word >> 29) & 0x1) == 0)
  24488. {
  24489. /* 33222222222211111111110000000000
  24490. 10987654321098765432109876543210
  24491. xx0011111xxxxxxx1001x0xxxxxxxxxx
  24492. fmul. */
  24493. return 117;
  24494. }
  24495. else
  24496. {
  24497. /* 33222222222211111111110000000000
  24498. 10987654321098765432109876543210
  24499. xx1011111xxxxxxx1001x0xxxxxxxxxx
  24500. fmulx. */
  24501. return 127;
  24502. }
  24503. }
  24504. }
  24505. else
  24506. {
  24507. if (((word >> 29) & 0x1) == 0)
  24508. {
  24509. /* 33222222222211111111110000000000
  24510. 10987654321098765432109876543210
  24511. xx001111xxxxxxxx1101x0xxxxxxxxxx
  24512. sqrdmulh. */
  24513. return 112;
  24514. }
  24515. else
  24516. {
  24517. /* 33222222222211111111110000000000
  24518. 10987654321098765432109876543210
  24519. xx101111xxxxxxxx1101x0xxxxxxxxxx
  24520. sqrdmlah. */
  24521. return 129;
  24522. }
  24523. }
  24524. }
  24525. else
  24526. {
  24527. if (((word >> 14) & 0x1) == 0)
  24528. {
  24529. if (((word >> 30) & 0x1) == 0)
  24530. {
  24531. /* 33222222222211111111110000000000
  24532. 10987654321098765432109876543210
  24533. x0x01111xxxxxxxx1011x0xxxxxxxxxx
  24534. sqdmull. */
  24535. return 109;
  24536. }
  24537. else
  24538. {
  24539. /* 33222222222211111111110000000000
  24540. 10987654321098765432109876543210
  24541. x1x01111xxxxxxxx1011x0xxxxxxxxxx
  24542. sqdmull2. */
  24543. return 110;
  24544. }
  24545. }
  24546. else
  24547. {
  24548. if (((word >> 29) & 0x1) == 0)
  24549. {
  24550. if (((word >> 22) & 0x1) == 0)
  24551. {
  24552. if (((word >> 23) & 0x1) == 0)
  24553. {
  24554. /* 33222222222211111111110000000000
  24555. 10987654321098765432109876543210
  24556. xx00111100xxxxxx1111x0xxxxxxxxxx
  24557. sudot. */
  24558. return 2494;
  24559. }
  24560. else
  24561. {
  24562. /* 33222222222211111111110000000000
  24563. 10987654321098765432109876543210
  24564. xx00111110xxxxxx1111x0xxxxxxxxxx
  24565. usdot. */
  24566. return 2493;
  24567. }
  24568. }
  24569. else
  24570. {
  24571. if (((word >> 23) & 0x1) == 0)
  24572. {
  24573. /* 33222222222211111111110000000000
  24574. 10987654321098765432109876543210
  24575. xx00111101xxxxxx1111x0xxxxxxxxxx
  24576. bfdot. */
  24577. return 2505;
  24578. }
  24579. else
  24580. {
  24581. if (((word >> 30) & 0x1) == 0)
  24582. {
  24583. /* 33222222222211111111110000000000
  24584. 10987654321098765432109876543210
  24585. x000111111xxxxxx1111x0xxxxxxxxxx
  24586. bfmlalb. */
  24587. return 2513;
  24588. }
  24589. else
  24590. {
  24591. /* 33222222222211111111110000000000
  24592. 10987654321098765432109876543210
  24593. x100111111xxxxxx1111x0xxxxxxxxxx
  24594. bfmlalt. */
  24595. return 2512;
  24596. }
  24597. }
  24598. }
  24599. }
  24600. else
  24601. {
  24602. /* 33222222222211111111110000000000
  24603. 10987654321098765432109876543210
  24604. xx101111xxxxxxxx1111x0xxxxxxxxxx
  24605. sqrdmlsh. */
  24606. return 130;
  24607. }
  24608. }
  24609. }
  24610. }
  24611. }
  24612. else
  24613. {
  24614. if (((word >> 11) & 0x1) == 0)
  24615. {
  24616. if (((word >> 14) & 0x1) == 0)
  24617. {
  24618. if (((word >> 12) & 0x1) == 0)
  24619. {
  24620. if (((word >> 29) & 0x1) == 0)
  24621. {
  24622. /* 33222222222211111111110000000000
  24623. 10987654321098765432109876543210
  24624. xx001111xxxxxxxx10x001xxxxxxxxxx
  24625. movi. */
  24626. return 135;
  24627. }
  24628. else
  24629. {
  24630. /* 33222222222211111111110000000000
  24631. 10987654321098765432109876543210
  24632. xx101111xxxxxxxx10x001xxxxxxxxxx
  24633. mvni. */
  24634. return 143;
  24635. }
  24636. }
  24637. else
  24638. {
  24639. if (((word >> 29) & 0x1) == 0)
  24640. {
  24641. /* 33222222222211111111110000000000
  24642. 10987654321098765432109876543210
  24643. xx001111xxxxxxxx10x101xxxxxxxxxx
  24644. orr. */
  24645. return 136;
  24646. }
  24647. else
  24648. {
  24649. /* 33222222222211111111110000000000
  24650. 10987654321098765432109876543210
  24651. xx101111xxxxxxxx10x101xxxxxxxxxx
  24652. bic. */
  24653. return 144;
  24654. }
  24655. }
  24656. }
  24657. else
  24658. {
  24659. if (((word >> 13) & 0x1) == 0)
  24660. {
  24661. if (((word >> 29) & 0x1) == 0)
  24662. {
  24663. /* 33222222222211111111110000000000
  24664. 10987654321098765432109876543210
  24665. xx001111xxxxxxxx110x01xxxxxxxxxx
  24666. movi. */
  24667. return 137;
  24668. }
  24669. else
  24670. {
  24671. /* 33222222222211111111110000000000
  24672. 10987654321098765432109876543210
  24673. xx101111xxxxxxxx110x01xxxxxxxxxx
  24674. mvni. */
  24675. return 145;
  24676. }
  24677. }
  24678. else
  24679. {
  24680. if (((word >> 12) & 0x1) == 0)
  24681. {
  24682. if (((word >> 29) & 0x1) == 0)
  24683. {
  24684. /* 33222222222211111111110000000000
  24685. 10987654321098765432109876543210
  24686. xx001111xxxxxxxx111001xxxxxxxxxx
  24687. movi. */
  24688. return 138;
  24689. }
  24690. else
  24691. {
  24692. /* 33222222222211111111110000000000
  24693. 10987654321098765432109876543210
  24694. xx101111xxxxxxxx111001xxxxxxxxxx
  24695. movi. */
  24696. return 146;
  24697. }
  24698. }
  24699. else
  24700. {
  24701. if (((word >> 29) & 0x1) == 0)
  24702. {
  24703. /* 33222222222211111111110000000000
  24704. 10987654321098765432109876543210
  24705. xx001111xxxxxxxx111101xxxxxxxxxx
  24706. fmov. */
  24707. return 139;
  24708. }
  24709. else
  24710. {
  24711. /* 33222222222211111111110000000000
  24712. 10987654321098765432109876543210
  24713. xx101111xxxxxxxx111101xxxxxxxxxx
  24714. fmov. */
  24715. return 148;
  24716. }
  24717. }
  24718. }
  24719. }
  24720. }
  24721. else
  24722. {
  24723. if (((word >> 12) & 0x1) == 0)
  24724. {
  24725. if (((word >> 29) & 0x1) == 0)
  24726. {
  24727. if (((word >> 30) & 0x1) == 0)
  24728. {
  24729. /* 33222222222211111111110000000000
  24730. 10987654321098765432109876543210
  24731. x0001111xxxxxxxx1xx011xxxxxxxxxx
  24732. rshrn. */
  24733. return 382;
  24734. }
  24735. else
  24736. {
  24737. /* 33222222222211111111110000000000
  24738. 10987654321098765432109876543210
  24739. x1001111xxxxxxxx1xx011xxxxxxxxxx
  24740. rshrn2. */
  24741. return 383;
  24742. }
  24743. }
  24744. else
  24745. {
  24746. if (((word >> 30) & 0x1) == 0)
  24747. {
  24748. /* 33222222222211111111110000000000
  24749. 10987654321098765432109876543210
  24750. x0101111xxxxxxxx1xx011xxxxxxxxxx
  24751. sqrshrun. */
  24752. return 406;
  24753. }
  24754. else
  24755. {
  24756. /* 33222222222211111111110000000000
  24757. 10987654321098765432109876543210
  24758. x1101111xxxxxxxx1xx011xxxxxxxxxx
  24759. sqrshrun2. */
  24760. return 407;
  24761. }
  24762. }
  24763. }
  24764. else
  24765. {
  24766. if (((word >> 13) & 0x1) == 0)
  24767. {
  24768. if (((word >> 29) & 0x1) == 0)
  24769. {
  24770. if (((word >> 30) & 0x1) == 0)
  24771. {
  24772. /* 33222222222211111111110000000000
  24773. 10987654321098765432109876543210
  24774. x0001111xxxxxxxx1x0111xxxxxxxxxx
  24775. sqrshrn. */
  24776. return 386;
  24777. }
  24778. else
  24779. {
  24780. /* 33222222222211111111110000000000
  24781. 10987654321098765432109876543210
  24782. x1001111xxxxxxxx1x0111xxxxxxxxxx
  24783. sqrshrn2. */
  24784. return 387;
  24785. }
  24786. }
  24787. else
  24788. {
  24789. if (((word >> 30) & 0x1) == 0)
  24790. {
  24791. /* 33222222222211111111110000000000
  24792. 10987654321098765432109876543210
  24793. x0101111xxxxxxxx1x0111xxxxxxxxxx
  24794. uqrshrn. */
  24795. return 410;
  24796. }
  24797. else
  24798. {
  24799. /* 33222222222211111111110000000000
  24800. 10987654321098765432109876543210
  24801. x1101111xxxxxxxx1x0111xxxxxxxxxx
  24802. uqrshrn2. */
  24803. return 411;
  24804. }
  24805. }
  24806. }
  24807. else
  24808. {
  24809. if (((word >> 29) & 0x1) == 0)
  24810. {
  24811. /* 33222222222211111111110000000000
  24812. 10987654321098765432109876543210
  24813. xx001111xxxxxxxx1x1111xxxxxxxxxx
  24814. fmov. */
  24815. return 140;
  24816. }
  24817. else
  24818. {
  24819. /* 33222222222211111111110000000000
  24820. 10987654321098765432109876543210
  24821. xx101111xxxxxxxx1x1111xxxxxxxxxx
  24822. fcvtzu. */
  24823. return 418;
  24824. }
  24825. }
  24826. }
  24827. }
  24828. }
  24829. }
  24830. else
  24831. {
  24832. if (((word >> 29) & 0x1) == 0)
  24833. {
  24834. if (((word >> 30) & 0x1) == 0)
  24835. {
  24836. if (((word >> 21) & 0x1) == 0)
  24837. {
  24838. /* 33222222222211111111110000000000
  24839. 10987654321098765432109876543210
  24840. x0011111xx0xxxxx1xxxxxxxxxxxxxxx
  24841. fmsub. */
  24842. return 860;
  24843. }
  24844. else
  24845. {
  24846. /* 33222222222211111111110000000000
  24847. 10987654321098765432109876543210
  24848. x0011111xx1xxxxx1xxxxxxxxxxxxxxx
  24849. fnmsub. */
  24850. return 864;
  24851. }
  24852. }
  24853. else
  24854. {
  24855. if (((word >> 10) & 0x1) == 0)
  24856. {
  24857. if (((word >> 12) & 0x1) == 0)
  24858. {
  24859. /* 33222222222211111111110000000000
  24860. 10987654321098765432109876543210
  24861. x1011111xxxxxxxx1xx0x0xxxxxxxxxx
  24862. sqdmulh. */
  24863. return 428;
  24864. }
  24865. else
  24866. {
  24867. if (((word >> 13) & 0x1) == 0)
  24868. {
  24869. if (((word >> 14) & 0x1) == 0)
  24870. {
  24871. if (((word >> 23) & 0x1) == 0)
  24872. {
  24873. /* 33222222222211111111110000000000
  24874. 10987654321098765432109876543210
  24875. x10111110xxxxxxx1001x0xxxxxxxxxx
  24876. fmul. */
  24877. return 435;
  24878. }
  24879. else
  24880. {
  24881. /* 33222222222211111111110000000000
  24882. 10987654321098765432109876543210
  24883. x10111111xxxxxxx1001x0xxxxxxxxxx
  24884. fmul. */
  24885. return 434;
  24886. }
  24887. }
  24888. else
  24889. {
  24890. /* 33222222222211111111110000000000
  24891. 10987654321098765432109876543210
  24892. x1011111xxxxxxxx1101x0xxxxxxxxxx
  24893. sqrdmulh. */
  24894. return 429;
  24895. }
  24896. }
  24897. else
  24898. {
  24899. /* 33222222222211111111110000000000
  24900. 10987654321098765432109876543210
  24901. x1011111xxxxxxxx1x11x0xxxxxxxxxx
  24902. sqdmull. */
  24903. return 427;
  24904. }
  24905. }
  24906. }
  24907. else
  24908. {
  24909. if (((word >> 11) & 0x1) == 0)
  24910. {
  24911. if (((word >> 12) & 0x1) == 0)
  24912. {
  24913. /* 33222222222211111111110000000000
  24914. 10987654321098765432109876543210
  24915. x1011111xxxxxxxx1xx001xxxxxxxxxx
  24916. scvtf. */
  24917. return 598;
  24918. }
  24919. else
  24920. {
  24921. /* 33222222222211111111110000000000
  24922. 10987654321098765432109876543210
  24923. x1011111xxxxxxxx1xx101xxxxxxxxxx
  24924. sqshrn. */
  24925. return 596;
  24926. }
  24927. }
  24928. else
  24929. {
  24930. if (((word >> 13) & 0x1) == 0)
  24931. {
  24932. /* 33222222222211111111110000000000
  24933. 10987654321098765432109876543210
  24934. x1011111xxxxxxxx1x0x11xxxxxxxxxx
  24935. sqrshrn. */
  24936. return 597;
  24937. }
  24938. else
  24939. {
  24940. /* 33222222222211111111110000000000
  24941. 10987654321098765432109876543210
  24942. x1011111xxxxxxxx1x1x11xxxxxxxxxx
  24943. fcvtzs. */
  24944. return 600;
  24945. }
  24946. }
  24947. }
  24948. }
  24949. }
  24950. else
  24951. {
  24952. if (((word >> 10) & 0x1) == 0)
  24953. {
  24954. if (((word >> 13) & 0x1) == 0)
  24955. {
  24956. if (((word >> 14) & 0x1) == 0)
  24957. {
  24958. if (((word >> 23) & 0x1) == 0)
  24959. {
  24960. /* 33222222222211111111110000000000
  24961. 10987654321098765432109876543210
  24962. xx1111110xxxxxxx100xx0xxxxxxxxxx
  24963. fmulx. */
  24964. return 437;
  24965. }
  24966. else
  24967. {
  24968. /* 33222222222211111111110000000000
  24969. 10987654321098765432109876543210
  24970. xx1111111xxxxxxx100xx0xxxxxxxxxx
  24971. fmulx. */
  24972. return 436;
  24973. }
  24974. }
  24975. else
  24976. {
  24977. /* 33222222222211111111110000000000
  24978. 10987654321098765432109876543210
  24979. xx111111xxxxxxxx110xx0xxxxxxxxxx
  24980. sqrdmlah. */
  24981. return 438;
  24982. }
  24983. }
  24984. else
  24985. {
  24986. /* 33222222222211111111110000000000
  24987. 10987654321098765432109876543210
  24988. xx111111xxxxxxxx1x1xx0xxxxxxxxxx
  24989. sqrdmlsh. */
  24990. return 439;
  24991. }
  24992. }
  24993. else
  24994. {
  24995. if (((word >> 11) & 0x1) == 0)
  24996. {
  24997. if (((word >> 12) & 0x1) == 0)
  24998. {
  24999. if (((word >> 13) & 0x1) == 0)
  25000. {
  25001. /* 33222222222211111111110000000000
  25002. 10987654321098765432109876543210
  25003. xx111111xxxxxxxx1x0001xxxxxxxxxx
  25004. sqshrun. */
  25005. return 610;
  25006. }
  25007. else
  25008. {
  25009. /* 33222222222211111111110000000000
  25010. 10987654321098765432109876543210
  25011. xx111111xxxxxxxx1x1001xxxxxxxxxx
  25012. ucvtf. */
  25013. return 614;
  25014. }
  25015. }
  25016. else
  25017. {
  25018. /* 33222222222211111111110000000000
  25019. 10987654321098765432109876543210
  25020. xx111111xxxxxxxx1xx101xxxxxxxxxx
  25021. uqshrn. */
  25022. return 612;
  25023. }
  25024. }
  25025. else
  25026. {
  25027. if (((word >> 12) & 0x1) == 0)
  25028. {
  25029. /* 33222222222211111111110000000000
  25030. 10987654321098765432109876543210
  25031. xx111111xxxxxxxx1xx011xxxxxxxxxx
  25032. sqrshrun. */
  25033. return 611;
  25034. }
  25035. else
  25036. {
  25037. if (((word >> 13) & 0x1) == 0)
  25038. {
  25039. /* 33222222222211111111110000000000
  25040. 10987654321098765432109876543210
  25041. xx111111xxxxxxxx1x0111xxxxxxxxxx
  25042. uqrshrn. */
  25043. return 613;
  25044. }
  25045. else
  25046. {
  25047. /* 33222222222211111111110000000000
  25048. 10987654321098765432109876543210
  25049. xx111111xxxxxxxx1x1111xxxxxxxxxx
  25050. fcvtzu. */
  25051. return 616;
  25052. }
  25053. }
  25054. }
  25055. }
  25056. }
  25057. }
  25058. }
  25059. }
  25060. }
  25061. }
  25062. }
  25063. }
  25064. /* Lookup opcode WORD in the opcode table. N.B. all alias
  25065. opcodes are ignored here. */
  25066. const aarch64_opcode *
  25067. aarch64_opcode_lookup (uint32_t word)
  25068. {
  25069. return aarch64_opcode_table + aarch64_opcode_lookup_1 (word);
  25070. }
  25071. const aarch64_opcode *
  25072. aarch64_find_next_opcode (const aarch64_opcode *opcode)
  25073. {
  25074. /* Use the index as the key to locate the next opcode. */
  25075. int key = opcode - aarch64_opcode_table;
  25076. int value;
  25077. switch (key)
  25078. {
  25079. case 2384: value = 2386; break; /* mov --> mova. */
  25080. case 2386: return NULL; /* mova --> NULL. */
  25081. case 2383: value = 2385; break; /* mov --> mova. */
  25082. case 2385: return NULL; /* mova --> NULL. */
  25083. case 2388: value = 2393; break; /* ld1b --> ld1b. */
  25084. case 2393: return NULL; /* ld1b --> NULL. */
  25085. case 2390: value = 2395; break; /* ld1w --> ld1w. */
  25086. case 2395: return NULL; /* ld1w --> NULL. */
  25087. case 2389: value = 2394; break; /* ld1h --> ld1h. */
  25088. case 2394: return NULL; /* ld1h --> NULL. */
  25089. case 2391: value = 2396; break; /* ld1d --> ld1d. */
  25090. case 2396: return NULL; /* ld1d --> NULL. */
  25091. case 2398: value = 2403; break; /* st1b --> st1b. */
  25092. case 2403: return NULL; /* st1b --> NULL. */
  25093. case 2400: value = 2405; break; /* st1w --> st1w. */
  25094. case 2405: return NULL; /* st1w --> NULL. */
  25095. case 2399: value = 2404; break; /* st1h --> st1h. */
  25096. case 2404: return NULL; /* st1h --> NULL. */
  25097. case 2401: value = 2406; break; /* st1d --> st1d. */
  25098. case 2406: return NULL; /* st1d --> NULL. */
  25099. case 2392: value = 2397; break; /* ld1q --> ld1q. */
  25100. case 2397: return NULL; /* ld1q --> NULL. */
  25101. case 2402: value = 2407; break; /* st1q --> st1q. */
  25102. case 2407: return NULL; /* st1q --> NULL. */
  25103. case 12: value = 19; break; /* add --> addg. */
  25104. case 19: return NULL; /* addg --> NULL. */
  25105. case 16: value = 20; break; /* sub --> subg. */
  25106. case 20: return NULL; /* subg --> NULL. */
  25107. case 971: value = 975; break; /* stnp --> stp. */
  25108. case 975: return NULL; /* stp --> NULL. */
  25109. case 969: value = 970; break; /* stllrb --> stllrh. */
  25110. case 970: return NULL; /* stllrh --> NULL. */
  25111. case 972: value = 976; break; /* ldnp --> ldp. */
  25112. case 976: return NULL; /* ldp --> NULL. */
  25113. case 1640: value = 1641; break; /* ldff1b --> ldff1b. */
  25114. case 1641: return NULL; /* ldff1b --> NULL. */
  25115. case 1696: value = 1697; break; /* ldff1sw --> ldff1sw. */
  25116. case 1697: return NULL; /* ldff1sw --> NULL. */
  25117. case 1644: value = 1645; break; /* ldff1b --> ldff1b. */
  25118. case 1645: return NULL; /* ldff1b --> NULL. */
  25119. case 1663: value = 1664; break; /* ldff1h --> ldff1h. */
  25120. case 1664: return NULL; /* ldff1h --> NULL. */
  25121. case 1642: value = 1643; break; /* ldff1b --> ldff1b. */
  25122. case 1643: return NULL; /* ldff1b --> NULL. */
  25123. case 1661: value = 1662; break; /* ldff1h --> ldff1h. */
  25124. case 1662: return NULL; /* ldff1h --> NULL. */
  25125. case 1646: value = 1647; break; /* ldff1b --> ldff1b. */
  25126. case 1647: return NULL; /* ldff1b --> NULL. */
  25127. case 1665: value = 1666; break; /* ldff1h --> ldff1h. */
  25128. case 1666: return NULL; /* ldff1h --> NULL. */
  25129. case 1686: value = 1687; break; /* ldff1sh --> ldff1sh. */
  25130. case 1687: return NULL; /* ldff1sh --> NULL. */
  25131. case 1674: value = 1675; break; /* ldff1sb --> ldff1sb. */
  25132. case 1675: return NULL; /* ldff1sb --> NULL. */
  25133. case 1705: value = 1706; break; /* ldff1w --> ldff1w. */
  25134. case 1706: return NULL; /* ldff1w --> NULL. */
  25135. case 1678: value = 1679; break; /* ldff1sb --> ldff1sb. */
  25136. case 1679: return NULL; /* ldff1sb --> NULL. */
  25137. case 1688: value = 1689; break; /* ldff1sh --> ldff1sh. */
  25138. case 1689: return NULL; /* ldff1sh --> NULL. */
  25139. case 1676: value = 1677; break; /* ldff1sb --> ldff1sb. */
  25140. case 1677: return NULL; /* ldff1sb --> NULL. */
  25141. case 1707: value = 1708; break; /* ldff1w --> ldff1w. */
  25142. case 1708: return NULL; /* ldff1w --> NULL. */
  25143. case 1652: value = 1653; break; /* ldff1d --> ldff1d. */
  25144. case 1653: return NULL; /* ldff1d --> NULL. */
  25145. case 811: value = 812; break; /* xaflag --> axflag. */
  25146. case 812: value = 1194; break; /* axflag --> tcommit. */
  25147. case 1194: value = 1197; break; /* tcommit --> smstart. */
  25148. case 1197: value = 1198; break; /* smstart --> smstop. */
  25149. case 1198: value = 1199; break; /* smstop --> smstart. */
  25150. case 1199: value = 1200; break; /* smstart --> smstop. */
  25151. case 1200: value = 1201; break; /* smstop --> msr. */
  25152. case 1201: value = 1202; break; /* msr --> hint. */
  25153. case 1202: value = 1211; break; /* hint --> dgh. */
  25154. case 1211: value = 1220; break; /* dgh --> clrex. */
  25155. case 1220: value = 1221; break; /* clrex --> dsb. */
  25156. case 1221: value = 1222; break; /* dsb --> dsb. */
  25157. case 1222: value = 1226; break; /* dsb --> dmb. */
  25158. case 1226: value = 1227; break; /* dmb --> isb. */
  25159. case 1227: value = 1228; break; /* isb --> sb. */
  25160. case 1228: value = 1229; break; /* sb --> sys. */
  25161. case 1229: value = 1234; break; /* sys --> wfet. */
  25162. case 1234: value = 1235; break; /* wfet --> wfit. */
  25163. case 1235: value = 1239; break; /* wfit --> cfinv. */
  25164. case 1239: value = 1240; break; /* cfinv --> msr. */
  25165. case 1240: return NULL; /* msr --> NULL. */
  25166. case 1193: value = 1195; break; /* tstart --> ttest. */
  25167. case 1195: value = 1241; break; /* ttest --> sysl. */
  25168. case 1241: value = 1242; break; /* sysl --> mrs. */
  25169. case 1242: return NULL; /* mrs --> NULL. */
  25170. case 440: value = 441; break; /* st4 --> st1. */
  25171. case 441: value = 442; break; /* st1 --> st2. */
  25172. case 442: value = 443; break; /* st2 --> st3. */
  25173. case 443: return NULL; /* st3 --> NULL. */
  25174. case 448: value = 449; break; /* st4 --> st1. */
  25175. case 449: value = 450; break; /* st1 --> st2. */
  25176. case 450: value = 451; break; /* st2 --> st3. */
  25177. case 451: return NULL; /* st3 --> NULL. */
  25178. case 444: value = 445; break; /* ld4 --> ld1. */
  25179. case 445: value = 446; break; /* ld1 --> ld2. */
  25180. case 446: value = 447; break; /* ld2 --> ld3. */
  25181. case 447: return NULL; /* ld3 --> NULL. */
  25182. case 460: value = 462; break; /* ld1 --> ld1r. */
  25183. case 462: return NULL; /* ld1r --> NULL. */
  25184. case 464: value = 466; break; /* ld2 --> ld2r. */
  25185. case 466: return NULL; /* ld2r --> NULL. */
  25186. case 461: value = 463; break; /* ld3 --> ld3r. */
  25187. case 463: return NULL; /* ld3r --> NULL. */
  25188. case 465: value = 467; break; /* ld4 --> ld4r. */
  25189. case 467: return NULL; /* ld4r --> NULL. */
  25190. case 452: value = 453; break; /* ld4 --> ld1. */
  25191. case 453: value = 454; break; /* ld1 --> ld2. */
  25192. case 454: value = 455; break; /* ld2 --> ld3. */
  25193. case 455: return NULL; /* ld3 --> NULL. */
  25194. case 472: value = 474; break; /* ld1 --> ld1r. */
  25195. case 474: return NULL; /* ld1r --> NULL. */
  25196. case 473: value = 475; break; /* ld3 --> ld3r. */
  25197. case 475: return NULL; /* ld3r --> NULL. */
  25198. case 476: value = 478; break; /* ld2 --> ld2r. */
  25199. case 478: return NULL; /* ld2r --> NULL. */
  25200. case 477: value = 479; break; /* ld4 --> ld4r. */
  25201. case 479: return NULL; /* ld4r --> NULL. */
  25202. case 764: value = 765; break; /* fcvtzs --> fcvtzs. */
  25203. case 765: return NULL; /* fcvtzs --> NULL. */
  25204. case 760: value = 761; break; /* scvtf --> scvtf. */
  25205. case 761: return NULL; /* scvtf --> NULL. */
  25206. case 766: value = 767; break; /* fcvtzu --> fcvtzu. */
  25207. case 767: return NULL; /* fcvtzu --> NULL. */
  25208. case 762: value = 763; break; /* ucvtf --> ucvtf. */
  25209. case 763: return NULL; /* ucvtf --> NULL. */
  25210. case 768: value = 769; break; /* fcvtns --> fcvtns. */
  25211. case 769: return NULL; /* fcvtns --> NULL. */
  25212. case 788: value = 789; break; /* fcvtms --> fcvtms. */
  25213. case 789: return NULL; /* fcvtms --> NULL. */
  25214. case 784: value = 785; break; /* fcvtps --> fcvtps. */
  25215. case 785: return NULL; /* fcvtps --> NULL. */
  25216. case 792: value = 793; break; /* fcvtzs --> fcvtzs. */
  25217. case 793: return NULL; /* fcvtzs --> NULL. */
  25218. case 776: value = 777; break; /* fcvtas --> fcvtas. */
  25219. case 777: return NULL; /* fcvtas --> NULL. */
  25220. case 772: value = 773; break; /* scvtf --> scvtf. */
  25221. case 773: return NULL; /* scvtf --> NULL. */
  25222. case 780: value = 781; break; /* fmov --> fmov. */
  25223. case 781: return NULL; /* fmov --> NULL. */
  25224. case 770: value = 771; break; /* fcvtnu --> fcvtnu. */
  25225. case 771: return NULL; /* fcvtnu --> NULL. */
  25226. case 790: value = 791; break; /* fcvtmu --> fcvtmu. */
  25227. case 791: return NULL; /* fcvtmu --> NULL. */
  25228. case 786: value = 787; break; /* fcvtpu --> fcvtpu. */
  25229. case 787: return NULL; /* fcvtpu --> NULL. */
  25230. case 794: value = 795; break; /* fcvtzu --> fcvtzu. */
  25231. case 795: return NULL; /* fcvtzu --> NULL. */
  25232. case 778: value = 779; break; /* fcvtau --> fcvtau. */
  25233. case 779: return NULL; /* fcvtau --> NULL. */
  25234. case 774: value = 775; break; /* ucvtf --> ucvtf. */
  25235. case 775: return NULL; /* ucvtf --> NULL. */
  25236. case 782: value = 783; break; /* fmov --> fmov. */
  25237. case 783: return NULL; /* fmov --> NULL. */
  25238. case 817: value = 818; break; /* fmov --> fmov. */
  25239. case 818: return NULL; /* fmov --> NULL. */
  25240. case 826: value = 827; break; /* frintn --> frintn. */
  25241. case 827: return NULL; /* frintn --> NULL. */
  25242. case 821: value = 822; break; /* fneg --> fneg. */
  25243. case 822: return NULL; /* fneg --> NULL. */
  25244. case 830: value = 831; break; /* frintm --> frintm. */
  25245. case 831: return NULL; /* frintm --> NULL. */
  25246. case 819: value = 820; break; /* fabs --> fabs. */
  25247. case 820: return NULL; /* fabs --> NULL. */
  25248. case 828: value = 829; break; /* frintp --> frintp. */
  25249. case 829: return NULL; /* frintp --> NULL. */
  25250. case 823: value = 824; break; /* fsqrt --> fsqrt. */
  25251. case 824: return NULL; /* fsqrt --> NULL. */
  25252. case 832: value = 833; break; /* frintz --> frintz. */
  25253. case 833: return NULL; /* frintz --> NULL. */
  25254. case 825: value = 2509; break; /* fcvt --> bfcvt. */
  25255. case 2509: return NULL; /* bfcvt --> NULL. */
  25256. case 834: value = 835; break; /* frinta --> frinta. */
  25257. case 835: return NULL; /* frinta --> NULL. */
  25258. case 836: value = 837; break; /* frintx --> frintx. */
  25259. case 837: return NULL; /* frintx --> NULL. */
  25260. case 838: value = 839; break; /* frinti --> frinti. */
  25261. case 839: return NULL; /* frinti --> NULL. */
  25262. case 803: value = 804; break; /* fcmp --> fcmp. */
  25263. case 804: return NULL; /* fcmp --> NULL. */
  25264. case 805: value = 806; break; /* fcmpe --> fcmpe. */
  25265. case 806: return NULL; /* fcmpe --> NULL. */
  25266. case 807: value = 808; break; /* fcmp --> fcmp. */
  25267. case 808: return NULL; /* fcmp --> NULL. */
  25268. case 809: value = 810; break; /* fcmpe --> fcmpe. */
  25269. case 810: return NULL; /* fcmpe --> NULL. */
  25270. case 866: value = 867; break; /* fmov --> fmov. */
  25271. case 867: return NULL; /* fmov --> NULL. */
  25272. case 840: value = 841; break; /* fmul --> fmul. */
  25273. case 841: return NULL; /* fmul --> NULL. */
  25274. case 856: value = 857; break; /* fnmul --> fnmul. */
  25275. case 857: return NULL; /* fnmul --> NULL. */
  25276. case 848: value = 849; break; /* fmax --> fmax. */
  25277. case 849: return NULL; /* fmax --> NULL. */
  25278. case 844: value = 845; break; /* fadd --> fadd. */
  25279. case 845: return NULL; /* fadd --> NULL. */
  25280. case 852: value = 853; break; /* fmaxnm --> fmaxnm. */
  25281. case 853: return NULL; /* fmaxnm --> NULL. */
  25282. case 842: value = 843; break; /* fdiv --> fdiv. */
  25283. case 843: return NULL; /* fdiv --> NULL. */
  25284. case 850: value = 851; break; /* fmin --> fmin. */
  25285. case 851: return NULL; /* fmin --> NULL. */
  25286. case 846: value = 847; break; /* fsub --> fsub. */
  25287. case 847: return NULL; /* fsub --> NULL. */
  25288. case 854: value = 855; break; /* fminnm --> fminnm. */
  25289. case 855: return NULL; /* fminnm --> NULL. */
  25290. case 799: value = 800; break; /* fccmp --> fccmp. */
  25291. case 800: return NULL; /* fccmp --> NULL. */
  25292. case 801: value = 802; break; /* fccmpe --> fccmpe. */
  25293. case 802: return NULL; /* fccmpe --> NULL. */
  25294. case 868: value = 869; break; /* fcsel --> fcsel. */
  25295. case 869: return NULL; /* fcsel --> NULL. */
  25296. case 133: value = 374; break; /* movi --> sshr. */
  25297. case 374: value = 376; break; /* sshr --> srshr. */
  25298. case 376: return NULL; /* srshr --> NULL. */
  25299. case 141: value = 396; break; /* mvni --> ushr. */
  25300. case 396: value = 398; break; /* ushr --> urshr. */
  25301. case 398: value = 400; break; /* urshr --> sri. */
  25302. case 400: value = 402; break; /* sri --> sqshlu. */
  25303. case 402: return NULL; /* sqshlu --> NULL. */
  25304. case 134: value = 375; break; /* orr --> ssra. */
  25305. case 375: value = 377; break; /* ssra --> srsra. */
  25306. case 377: value = 378; break; /* srsra --> shl. */
  25307. case 378: value = 379; break; /* shl --> sqshl. */
  25308. case 379: return NULL; /* sqshl --> NULL. */
  25309. case 142: value = 397; break; /* bic --> usra. */
  25310. case 397: value = 399; break; /* usra --> ursra. */
  25311. case 399: value = 401; break; /* ursra --> sli. */
  25312. case 401: value = 403; break; /* sli --> uqshl. */
  25313. case 403: return NULL; /* uqshl --> NULL. */
  25314. case 858: value = 859; break; /* fmadd --> fmadd. */
  25315. case 859: return NULL; /* fmadd --> NULL. */
  25316. case 862: value = 863; break; /* fnmadd --> fnmadd. */
  25317. case 863: return NULL; /* fnmadd --> NULL. */
  25318. case 135: value = 380; break; /* movi --> shrn. */
  25319. case 380: value = 381; break; /* shrn --> shrn2. */
  25320. case 381: value = 388; break; /* shrn2 --> sshll. */
  25321. case 388: value = 390; break; /* sshll --> sshll2. */
  25322. case 390: return NULL; /* sshll2 --> NULL. */
  25323. case 143: value = 404; break; /* mvni --> sqshrun. */
  25324. case 404: value = 405; break; /* sqshrun --> sqshrun2. */
  25325. case 405: value = 412; break; /* sqshrun2 --> ushll. */
  25326. case 412: value = 414; break; /* ushll --> ushll2. */
  25327. case 414: return NULL; /* ushll2 --> NULL. */
  25328. case 136: value = 384; break; /* orr --> sqshrn. */
  25329. case 384: value = 385; break; /* sqshrn --> sqshrn2. */
  25330. case 385: return NULL; /* sqshrn2 --> NULL. */
  25331. case 144: value = 408; break; /* bic --> uqshrn. */
  25332. case 408: value = 409; break; /* uqshrn --> uqshrn2. */
  25333. case 409: return NULL; /* uqshrn2 --> NULL. */
  25334. case 138: value = 392; break; /* movi --> scvtf. */
  25335. case 392: value = 393; break; /* scvtf --> scvtf. */
  25336. case 393: return NULL; /* scvtf --> NULL. */
  25337. case 146: value = 147; break; /* movi --> movi. */
  25338. case 147: value = 416; break; /* movi --> ucvtf. */
  25339. case 416: value = 417; break; /* ucvtf --> ucvtf. */
  25340. case 417: return NULL; /* ucvtf --> NULL. */
  25341. case 140: value = 394; break; /* fmov --> fcvtzs. */
  25342. case 394: value = 395; break; /* fcvtzs --> fcvtzs. */
  25343. case 395: return NULL; /* fcvtzs --> NULL. */
  25344. case 418: value = 419; break; /* fcvtzu --> fcvtzu. */
  25345. case 419: return NULL; /* fcvtzu --> NULL. */
  25346. case 860: value = 861; break; /* fmsub --> fmsub. */
  25347. case 861: return NULL; /* fmsub --> NULL. */
  25348. case 864: value = 865; break; /* fnmsub --> fnmsub. */
  25349. case 865: return NULL; /* fnmsub --> NULL. */
  25350. case 598: value = 599; break; /* scvtf --> scvtf. */
  25351. case 599: return NULL; /* scvtf --> NULL. */
  25352. case 600: value = 601; break; /* fcvtzs --> fcvtzs. */
  25353. case 601: return NULL; /* fcvtzs --> NULL. */
  25354. case 614: value = 615; break; /* ucvtf --> ucvtf. */
  25355. case 615: return NULL; /* ucvtf --> NULL. */
  25356. case 616: value = 617; break; /* fcvtzu --> fcvtzu. */
  25357. case 617: return NULL; /* fcvtzu --> NULL. */
  25358. default: return NULL;
  25359. }
  25360. return aarch64_opcode_table + value;
  25361. }
  25362. const aarch64_opcode *
  25363. aarch64_find_alias_opcode (const aarch64_opcode *opcode)
  25364. {
  25365. /* Use the index as the key to locate the alias opcode. */
  25366. int key = opcode - aarch64_opcode_table;
  25367. int value;
  25368. switch (key)
  25369. {
  25370. case 2: value = 3; break; /* sbc --> ngc. */
  25371. case 4: value = 5; break; /* sbcs --> ngcs. */
  25372. case 7: value = 8; break; /* adds --> cmn. */
  25373. case 10: value = 11; break; /* subs --> cmp. */
  25374. case 12: value = 13; break; /* add --> mov. */
  25375. case 14: value = 15; break; /* adds --> cmn. */
  25376. case 17: value = 18; break; /* subs --> cmp. */
  25377. case 22: value = 23; break; /* adds --> cmn. */
  25378. case 24: value = 25; break; /* sub --> neg. */
  25379. case 26: value = 27; break; /* subs --> cmp. */
  25380. case 152: value = 153; break; /* umov --> mov. */
  25381. case 154: value = 155; break; /* ins --> mov. */
  25382. case 156: value = 157; break; /* ins --> mov. */
  25383. case 242: value = 243; break; /* not --> mvn. */
  25384. case 317: value = 318; break; /* orr --> mov. */
  25385. case 388: value = 389; break; /* sshll --> sxtl. */
  25386. case 390: value = 391; break; /* sshll2 --> sxtl2. */
  25387. case 412: value = 413; break; /* ushll --> uxtl. */
  25388. case 414: value = 415; break; /* ushll2 --> uxtl2. */
  25389. case 535: value = 536; break; /* dup --> mov. */
  25390. case 618: value = 623; break; /* sbfm --> sxtw. */
  25391. case 625: value = 627; break; /* bfm --> bfc. */
  25392. case 629: value = 633; break; /* ubfm --> uxth. */
  25393. case 663: value = 665; break; /* csinc --> cset. */
  25394. case 666: value = 668; break; /* csinv --> csetm. */
  25395. case 669: value = 670; break; /* csneg --> cneg. */
  25396. case 688: value = 688; break; /* rev --> rev. */
  25397. case 713: value = 714; break; /* lslv --> lsl. */
  25398. case 715: value = 716; break; /* lsrv --> lsr. */
  25399. case 717: value = 718; break; /* asrv --> asr. */
  25400. case 719: value = 720; break; /* rorv --> ror. */
  25401. case 722: value = 723; break; /* subps --> cmpp. */
  25402. case 735: value = 736; break; /* madd --> mul. */
  25403. case 737: value = 738; break; /* msub --> mneg. */
  25404. case 739: value = 740; break; /* smaddl --> smull. */
  25405. case 741: value = 742; break; /* smsubl --> smnegl. */
  25406. case 744: value = 745; break; /* umaddl --> umull. */
  25407. case 746: value = 747; break; /* umsubl --> umnegl. */
  25408. case 758: value = 759; break; /* extr --> ror. */
  25409. case 995: value = 996; break; /* and --> bic. */
  25410. case 997: value = 998; break; /* orr --> mov. */
  25411. case 1000: value = 1001; break; /* ands --> tst. */
  25412. case 1004: value = 1006; break; /* orr --> uxtw. */
  25413. case 1007: value = 1008; break; /* orn --> mvn. */
  25414. case 1011: value = 1012; break; /* ands --> tst. */
  25415. case 1042: value = 1138; break; /* ldaddb --> staddb. */
  25416. case 1043: value = 1139; break; /* ldaddh --> staddh. */
  25417. case 1044: value = 1140; break; /* ldadd --> stadd. */
  25418. case 1046: value = 1141; break; /* ldaddlb --> staddlb. */
  25419. case 1049: value = 1142; break; /* ldaddlh --> staddlh. */
  25420. case 1052: value = 1143; break; /* ldaddl --> staddl. */
  25421. case 1054: value = 1144; break; /* ldclrb --> stclrb. */
  25422. case 1055: value = 1145; break; /* ldclrh --> stclrh. */
  25423. case 1056: value = 1146; break; /* ldclr --> stclr. */
  25424. case 1058: value = 1147; break; /* ldclrlb --> stclrlb. */
  25425. case 1061: value = 1148; break; /* ldclrlh --> stclrlh. */
  25426. case 1064: value = 1149; break; /* ldclrl --> stclrl. */
  25427. case 1066: value = 1150; break; /* ldeorb --> steorb. */
  25428. case 1067: value = 1151; break; /* ldeorh --> steorh. */
  25429. case 1068: value = 1152; break; /* ldeor --> steor. */
  25430. case 1070: value = 1153; break; /* ldeorlb --> steorlb. */
  25431. case 1073: value = 1154; break; /* ldeorlh --> steorlh. */
  25432. case 1076: value = 1155; break; /* ldeorl --> steorl. */
  25433. case 1078: value = 1156; break; /* ldsetb --> stsetb. */
  25434. case 1079: value = 1157; break; /* ldseth --> stseth. */
  25435. case 1080: value = 1158; break; /* ldset --> stset. */
  25436. case 1082: value = 1159; break; /* ldsetlb --> stsetlb. */
  25437. case 1085: value = 1160; break; /* ldsetlh --> stsetlh. */
  25438. case 1088: value = 1161; break; /* ldsetl --> stsetl. */
  25439. case 1090: value = 1162; break; /* ldsmaxb --> stsmaxb. */
  25440. case 1091: value = 1163; break; /* ldsmaxh --> stsmaxh. */
  25441. case 1092: value = 1164; break; /* ldsmax --> stsmax. */
  25442. case 1094: value = 1165; break; /* ldsmaxlb --> stsmaxlb. */
  25443. case 1097: value = 1166; break; /* ldsmaxlh --> stsmaxlh. */
  25444. case 1100: value = 1167; break; /* ldsmaxl --> stsmaxl. */
  25445. case 1102: value = 1168; break; /* ldsminb --> stsminb. */
  25446. case 1103: value = 1169; break; /* ldsminh --> stsminh. */
  25447. case 1104: value = 1170; break; /* ldsmin --> stsmin. */
  25448. case 1106: value = 1171; break; /* ldsminlb --> stsminlb. */
  25449. case 1109: value = 1172; break; /* ldsminlh --> stsminlh. */
  25450. case 1112: value = 1173; break; /* ldsminl --> stsminl. */
  25451. case 1114: value = 1174; break; /* ldumaxb --> stumaxb. */
  25452. case 1115: value = 1175; break; /* ldumaxh --> stumaxh. */
  25453. case 1116: value = 1176; break; /* ldumax --> stumax. */
  25454. case 1118: value = 1177; break; /* ldumaxlb --> stumaxlb. */
  25455. case 1121: value = 1178; break; /* ldumaxlh --> stumaxlh. */
  25456. case 1124: value = 1179; break; /* ldumaxl --> stumaxl. */
  25457. case 1126: value = 1180; break; /* lduminb --> stuminb. */
  25458. case 1127: value = 1181; break; /* lduminh --> stuminh. */
  25459. case 1128: value = 1182; break; /* ldumin --> stumin. */
  25460. case 1130: value = 1183; break; /* lduminlb --> stuminlb. */
  25461. case 1133: value = 1184; break; /* lduminlh --> stuminlh. */
  25462. case 1136: value = 1185; break; /* lduminl --> stuminl. */
  25463. case 1186: value = 1187; break; /* movn --> mov. */
  25464. case 1188: value = 1189; break; /* movz --> mov. */
  25465. case 1202: value = 1250; break; /* hint --> autibsp. */
  25466. case 1221: value = 1225; break; /* dsb --> pssbb. */
  25467. case 1222: value = 1222; break; /* dsb --> dsb. */
  25468. case 1229: value = 1238; break; /* sys --> cpp. */
  25469. case 1234: value = 1234; break; /* wfet --> wfet. */
  25470. case 1235: value = 1235; break; /* wfit --> wfit. */
  25471. case 1298: value = 2048; break; /* and --> bic. */
  25472. case 1300: value = 1281; break; /* and --> mov. */
  25473. case 1301: value = 1285; break; /* ands --> movs. */
  25474. case 1336: value = 2049; break; /* cmpge --> cmple. */
  25475. case 1339: value = 2052; break; /* cmpgt --> cmplt. */
  25476. case 1341: value = 2050; break; /* cmphi --> cmplo. */
  25477. case 1344: value = 2051; break; /* cmphs --> cmpls. */
  25478. case 1366: value = 1278; break; /* cpy --> mov. */
  25479. case 1367: value = 1280; break; /* cpy --> mov. */
  25480. case 1368: value = 2059; break; /* cpy --> fmov. */
  25481. case 1380: value = 1273; break; /* dup --> mov. */
  25482. case 1381: value = 1275; break; /* dup --> mov. */
  25483. case 1382: value = 2058; break; /* dup --> fmov. */
  25484. case 1383: value = 1276; break; /* dupm --> mov. */
  25485. case 1385: value = 2053; break; /* eor --> eon. */
  25486. case 1387: value = 1286; break; /* eor --> not. */
  25487. case 1388: value = 1287; break; /* eors --> nots. */
  25488. case 1393: value = 2054; break; /* facge --> facle. */
  25489. case 1394: value = 2055; break; /* facgt --> faclt. */
  25490. case 1407: value = 2056; break; /* fcmge --> fcmle. */
  25491. case 1409: value = 2057; break; /* fcmgt --> fcmlt. */
  25492. case 1415: value = 1270; break; /* fcpy --> fmov. */
  25493. case 1438: value = 1269; break; /* fdup --> fmov. */
  25494. case 1769: value = 1271; break; /* orr --> mov. */
  25495. case 1770: value = 2060; break; /* orr --> orn. */
  25496. case 1772: value = 1274; break; /* orr --> mov. */
  25497. case 1773: value = 1284; break; /* orrs --> movs. */
  25498. case 1835: value = 1279; break; /* sel --> mov. */
  25499. case 1836: value = 1282; break; /* sel --> mov. */
  25500. default: return NULL;
  25501. }
  25502. return aarch64_opcode_table + value;
  25503. }
  25504. const aarch64_opcode *
  25505. aarch64_find_next_alias_opcode (const aarch64_opcode *opcode)
  25506. {
  25507. /* Use the index as the key to locate the next opcode. */
  25508. int key = opcode - aarch64_opcode_table;
  25509. int value;
  25510. switch (key)
  25511. {
  25512. case 3: value = 2; break; /* ngc --> sbc. */
  25513. case 5: value = 4; break; /* ngcs --> sbcs. */
  25514. case 8: value = 7; break; /* cmn --> adds. */
  25515. case 11: value = 10; break; /* cmp --> subs. */
  25516. case 13: value = 12; break; /* mov --> add. */
  25517. case 15: value = 14; break; /* cmn --> adds. */
  25518. case 18: value = 17; break; /* cmp --> subs. */
  25519. case 23: value = 22; break; /* cmn --> adds. */
  25520. case 25: value = 24; break; /* neg --> sub. */
  25521. case 27: value = 28; break; /* cmp --> negs. */
  25522. case 28: value = 26; break; /* negs --> subs. */
  25523. case 153: value = 152; break; /* mov --> umov. */
  25524. case 155: value = 154; break; /* mov --> ins. */
  25525. case 157: value = 156; break; /* mov --> ins. */
  25526. case 243: value = 242; break; /* mvn --> not. */
  25527. case 318: value = 317; break; /* mov --> orr. */
  25528. case 389: value = 388; break; /* sxtl --> sshll. */
  25529. case 391: value = 390; break; /* sxtl2 --> sshll2. */
  25530. case 413: value = 412; break; /* uxtl --> ushll. */
  25531. case 415: value = 414; break; /* uxtl2 --> ushll2. */
  25532. case 536: value = 535; break; /* mov --> dup. */
  25533. case 623: value = 622; break; /* sxtw --> sxth. */
  25534. case 622: value = 621; break; /* sxth --> sxtb. */
  25535. case 621: value = 624; break; /* sxtb --> asr. */
  25536. case 624: value = 620; break; /* asr --> sbfx. */
  25537. case 620: value = 619; break; /* sbfx --> sbfiz. */
  25538. case 619: value = 618; break; /* sbfiz --> sbfm. */
  25539. case 627: value = 628; break; /* bfc --> bfxil. */
  25540. case 628: value = 626; break; /* bfxil --> bfi. */
  25541. case 626: value = 625; break; /* bfi --> bfm. */
  25542. case 633: value = 632; break; /* uxth --> uxtb. */
  25543. case 632: value = 635; break; /* uxtb --> lsr. */
  25544. case 635: value = 634; break; /* lsr --> lsl. */
  25545. case 634: value = 631; break; /* lsl --> ubfx. */
  25546. case 631: value = 630; break; /* ubfx --> ubfiz. */
  25547. case 630: value = 629; break; /* ubfiz --> ubfm. */
  25548. case 665: value = 664; break; /* cset --> cinc. */
  25549. case 664: value = 663; break; /* cinc --> csinc. */
  25550. case 668: value = 667; break; /* csetm --> cinv. */
  25551. case 667: value = 666; break; /* cinv --> csinv. */
  25552. case 670: value = 669; break; /* cneg --> csneg. */
  25553. case 688: value = 689; break; /* rev --> rev64. */
  25554. case 714: value = 713; break; /* lsl --> lslv. */
  25555. case 716: value = 715; break; /* lsr --> lsrv. */
  25556. case 718: value = 717; break; /* asr --> asrv. */
  25557. case 720: value = 719; break; /* ror --> rorv. */
  25558. case 723: value = 722; break; /* cmpp --> subps. */
  25559. case 736: value = 735; break; /* mul --> madd. */
  25560. case 738: value = 737; break; /* mneg --> msub. */
  25561. case 740: value = 739; break; /* smull --> smaddl. */
  25562. case 742: value = 741; break; /* smnegl --> smsubl. */
  25563. case 745: value = 744; break; /* umull --> umaddl. */
  25564. case 747: value = 746; break; /* umnegl --> umsubl. */
  25565. case 759: value = 758; break; /* ror --> extr. */
  25566. case 996: value = 995; break; /* bic --> and. */
  25567. case 998: value = 997; break; /* mov --> orr. */
  25568. case 1001: value = 1000; break; /* tst --> ands. */
  25569. case 1006: value = 1005; break; /* uxtw --> mov. */
  25570. case 1005: value = 1004; break; /* mov --> orr. */
  25571. case 1008: value = 1007; break; /* mvn --> orn. */
  25572. case 1012: value = 1011; break; /* tst --> ands. */
  25573. case 1138: value = 1042; break; /* staddb --> ldaddb. */
  25574. case 1139: value = 1043; break; /* staddh --> ldaddh. */
  25575. case 1140: value = 1044; break; /* stadd --> ldadd. */
  25576. case 1141: value = 1046; break; /* staddlb --> ldaddlb. */
  25577. case 1142: value = 1049; break; /* staddlh --> ldaddlh. */
  25578. case 1143: value = 1052; break; /* staddl --> ldaddl. */
  25579. case 1144: value = 1054; break; /* stclrb --> ldclrb. */
  25580. case 1145: value = 1055; break; /* stclrh --> ldclrh. */
  25581. case 1146: value = 1056; break; /* stclr --> ldclr. */
  25582. case 1147: value = 1058; break; /* stclrlb --> ldclrlb. */
  25583. case 1148: value = 1061; break; /* stclrlh --> ldclrlh. */
  25584. case 1149: value = 1064; break; /* stclrl --> ldclrl. */
  25585. case 1150: value = 1066; break; /* steorb --> ldeorb. */
  25586. case 1151: value = 1067; break; /* steorh --> ldeorh. */
  25587. case 1152: value = 1068; break; /* steor --> ldeor. */
  25588. case 1153: value = 1070; break; /* steorlb --> ldeorlb. */
  25589. case 1154: value = 1073; break; /* steorlh --> ldeorlh. */
  25590. case 1155: value = 1076; break; /* steorl --> ldeorl. */
  25591. case 1156: value = 1078; break; /* stsetb --> ldsetb. */
  25592. case 1157: value = 1079; break; /* stseth --> ldseth. */
  25593. case 1158: value = 1080; break; /* stset --> ldset. */
  25594. case 1159: value = 1082; break; /* stsetlb --> ldsetlb. */
  25595. case 1160: value = 1085; break; /* stsetlh --> ldsetlh. */
  25596. case 1161: value = 1088; break; /* stsetl --> ldsetl. */
  25597. case 1162: value = 1090; break; /* stsmaxb --> ldsmaxb. */
  25598. case 1163: value = 1091; break; /* stsmaxh --> ldsmaxh. */
  25599. case 1164: value = 1092; break; /* stsmax --> ldsmax. */
  25600. case 1165: value = 1094; break; /* stsmaxlb --> ldsmaxlb. */
  25601. case 1166: value = 1097; break; /* stsmaxlh --> ldsmaxlh. */
  25602. case 1167: value = 1100; break; /* stsmaxl --> ldsmaxl. */
  25603. case 1168: value = 1102; break; /* stsminb --> ldsminb. */
  25604. case 1169: value = 1103; break; /* stsminh --> ldsminh. */
  25605. case 1170: value = 1104; break; /* stsmin --> ldsmin. */
  25606. case 1171: value = 1106; break; /* stsminlb --> ldsminlb. */
  25607. case 1172: value = 1109; break; /* stsminlh --> ldsminlh. */
  25608. case 1173: value = 1112; break; /* stsminl --> ldsminl. */
  25609. case 1174: value = 1114; break; /* stumaxb --> ldumaxb. */
  25610. case 1175: value = 1115; break; /* stumaxh --> ldumaxh. */
  25611. case 1176: value = 1116; break; /* stumax --> ldumax. */
  25612. case 1177: value = 1118; break; /* stumaxlb --> ldumaxlb. */
  25613. case 1178: value = 1121; break; /* stumaxlh --> ldumaxlh. */
  25614. case 1179: value = 1124; break; /* stumaxl --> ldumaxl. */
  25615. case 1180: value = 1126; break; /* stuminb --> lduminb. */
  25616. case 1181: value = 1127; break; /* stuminh --> lduminh. */
  25617. case 1182: value = 1128; break; /* stumin --> ldumin. */
  25618. case 1183: value = 1130; break; /* stuminlb --> lduminlb. */
  25619. case 1184: value = 1133; break; /* stuminlh --> lduminlh. */
  25620. case 1185: value = 1136; break; /* stuminl --> lduminl. */
  25621. case 1187: value = 1186; break; /* mov --> movn. */
  25622. case 1189: value = 1188; break; /* mov --> movz. */
  25623. case 1250: value = 1249; break; /* autibsp --> autibz. */
  25624. case 1249: value = 1248; break; /* autibz --> autiasp. */
  25625. case 1248: value = 1247; break; /* autiasp --> autiaz. */
  25626. case 1247: value = 1246; break; /* autiaz --> pacibsp. */
  25627. case 1246: value = 1245; break; /* pacibsp --> pacibz. */
  25628. case 1245: value = 1244; break; /* pacibz --> paciasp. */
  25629. case 1244: value = 1243; break; /* paciasp --> paciaz. */
  25630. case 1243: value = 1219; break; /* paciaz --> tsb. */
  25631. case 1219: value = 1218; break; /* tsb --> psb. */
  25632. case 1218: value = 1217; break; /* psb --> esb. */
  25633. case 1217: value = 1216; break; /* esb --> autib1716. */
  25634. case 1216: value = 1215; break; /* autib1716 --> autia1716. */
  25635. case 1215: value = 1214; break; /* autia1716 --> pacib1716. */
  25636. case 1214: value = 1213; break; /* pacib1716 --> pacia1716. */
  25637. case 1213: value = 1212; break; /* pacia1716 --> xpaclri. */
  25638. case 1212: value = 1210; break; /* xpaclri --> sevl. */
  25639. case 1210: value = 1209; break; /* sevl --> sev. */
  25640. case 1209: value = 1208; break; /* sev --> wfi. */
  25641. case 1208: value = 1207; break; /* wfi --> wfe. */
  25642. case 1207: value = 1206; break; /* wfe --> yield. */
  25643. case 1206: value = 1205; break; /* yield --> bti. */
  25644. case 1205: value = 1204; break; /* bti --> csdb. */
  25645. case 1204: value = 1203; break; /* csdb --> nop. */
  25646. case 1203: value = 1202; break; /* nop --> hint. */
  25647. case 1225: value = 1224; break; /* pssbb --> ssbb. */
  25648. case 1224: value = 1223; break; /* ssbb --> dfb. */
  25649. case 1223: value = 1221; break; /* dfb --> dsb. */
  25650. case 1238: value = 1237; break; /* cpp --> dvp. */
  25651. case 1237: value = 1236; break; /* dvp --> cfp. */
  25652. case 1236: value = 1233; break; /* cfp --> tlbi. */
  25653. case 1233: value = 1232; break; /* tlbi --> ic. */
  25654. case 1232: value = 1231; break; /* ic --> dc. */
  25655. case 1231: value = 1230; break; /* dc --> at. */
  25656. case 1230: value = 1229; break; /* at --> sys. */
  25657. case 2048: value = 1298; break; /* bic --> and. */
  25658. case 1281: value = 1300; break; /* mov --> and. */
  25659. case 1285: value = 1301; break; /* movs --> ands. */
  25660. case 2049: value = 1336; break; /* cmple --> cmpge. */
  25661. case 2052: value = 1339; break; /* cmplt --> cmpgt. */
  25662. case 2050: value = 1341; break; /* cmplo --> cmphi. */
  25663. case 2051: value = 1344; break; /* cmpls --> cmphs. */
  25664. case 1278: value = 1366; break; /* mov --> cpy. */
  25665. case 1280: value = 1367; break; /* mov --> cpy. */
  25666. case 2059: value = 1283; break; /* fmov --> mov. */
  25667. case 1283: value = 1368; break; /* mov --> cpy. */
  25668. case 1273: value = 1380; break; /* mov --> dup. */
  25669. case 1275: value = 1272; break; /* mov --> mov. */
  25670. case 1272: value = 1381; break; /* mov --> dup. */
  25671. case 2058: value = 1277; break; /* fmov --> mov. */
  25672. case 1277: value = 1382; break; /* mov --> dup. */
  25673. case 1276: value = 1383; break; /* mov --> dupm. */
  25674. case 2053: value = 1385; break; /* eon --> eor. */
  25675. case 1286: value = 1387; break; /* not --> eor. */
  25676. case 1287: value = 1388; break; /* nots --> eors. */
  25677. case 2054: value = 1393; break; /* facle --> facge. */
  25678. case 2055: value = 1394; break; /* faclt --> facgt. */
  25679. case 2056: value = 1407; break; /* fcmle --> fcmge. */
  25680. case 2057: value = 1409; break; /* fcmlt --> fcmgt. */
  25681. case 1270: value = 1415; break; /* fmov --> fcpy. */
  25682. case 1269: value = 1438; break; /* fmov --> fdup. */
  25683. case 1271: value = 1769; break; /* mov --> orr. */
  25684. case 2060: value = 1770; break; /* orn --> orr. */
  25685. case 1274: value = 1772; break; /* mov --> orr. */
  25686. case 1284: value = 1773; break; /* movs --> orrs. */
  25687. case 1279: value = 1835; break; /* mov --> sel. */
  25688. case 1282: value = 1836; break; /* mov --> sel. */
  25689. default: return NULL;
  25690. }
  25691. return aarch64_opcode_table + value;
  25692. }
  25693. bool
  25694. aarch64_extract_operand (const aarch64_operand *self,
  25695. aarch64_opnd_info *info,
  25696. aarch64_insn code, const aarch64_inst *inst,
  25697. aarch64_operand_error *errors)
  25698. {
  25699. /* Use the index as the key. */
  25700. int key = self - aarch64_operands;
  25701. switch (key)
  25702. {
  25703. case 1:
  25704. case 2:
  25705. case 3:
  25706. case 4:
  25707. case 5:
  25708. case 6:
  25709. case 7:
  25710. case 8:
  25711. case 9:
  25712. case 11:
  25713. case 12:
  25714. case 13:
  25715. case 17:
  25716. case 18:
  25717. case 19:
  25718. case 20:
  25719. case 22:
  25720. case 23:
  25721. case 24:
  25722. case 25:
  25723. case 26:
  25724. case 27:
  25725. case 28:
  25726. case 29:
  25727. case 30:
  25728. case 31:
  25729. case 167:
  25730. case 168:
  25731. case 169:
  25732. case 170:
  25733. case 171:
  25734. case 172:
  25735. case 173:
  25736. case 174:
  25737. case 175:
  25738. case 176:
  25739. case 191:
  25740. case 192:
  25741. case 193:
  25742. case 194:
  25743. case 195:
  25744. case 196:
  25745. case 197:
  25746. case 198:
  25747. case 199:
  25748. case 205:
  25749. case 208:
  25750. case 210:
  25751. case 211:
  25752. case 214:
  25753. return aarch64_ext_regno (self, info, code, inst, errors);
  25754. case 10:
  25755. return aarch64_ext_regrt_sysins (self, info, code, inst, errors);
  25756. case 14:
  25757. return aarch64_ext_regno_pair (self, info, code, inst, errors);
  25758. case 15:
  25759. return aarch64_ext_reg_extended (self, info, code, inst, errors);
  25760. case 16:
  25761. return aarch64_ext_reg_shifted (self, info, code, inst, errors);
  25762. case 21:
  25763. return aarch64_ext_ft (self, info, code, inst, errors);
  25764. case 32:
  25765. case 33:
  25766. case 34:
  25767. case 35:
  25768. case 222:
  25769. return aarch64_ext_reglane (self, info, code, inst, errors);
  25770. case 36:
  25771. return aarch64_ext_reglist (self, info, code, inst, errors);
  25772. case 37:
  25773. return aarch64_ext_ldst_reglist (self, info, code, inst, errors);
  25774. case 38:
  25775. return aarch64_ext_ldst_reglist_r (self, info, code, inst, errors);
  25776. case 39:
  25777. return aarch64_ext_ldst_elemlist (self, info, code, inst, errors);
  25778. case 40:
  25779. case 41:
  25780. case 42:
  25781. case 43:
  25782. case 53:
  25783. case 54:
  25784. case 55:
  25785. case 56:
  25786. case 57:
  25787. case 58:
  25788. case 59:
  25789. case 60:
  25790. case 61:
  25791. case 62:
  25792. case 63:
  25793. case 64:
  25794. case 65:
  25795. case 66:
  25796. case 67:
  25797. case 68:
  25798. case 69:
  25799. case 80:
  25800. case 81:
  25801. case 82:
  25802. case 83:
  25803. case 84:
  25804. case 164:
  25805. case 166:
  25806. case 183:
  25807. case 184:
  25808. case 185:
  25809. case 186:
  25810. case 187:
  25811. case 188:
  25812. case 189:
  25813. case 190:
  25814. case 215:
  25815. case 221:
  25816. return aarch64_ext_imm (self, info, code, inst, errors);
  25817. case 44:
  25818. case 45:
  25819. return aarch64_ext_advsimd_imm_shift (self, info, code, inst, errors);
  25820. case 46:
  25821. case 47:
  25822. case 48:
  25823. return aarch64_ext_advsimd_imm_modified (self, info, code, inst, errors);
  25824. case 49:
  25825. return aarch64_ext_shll_imm (self, info, code, inst, errors);
  25826. case 52:
  25827. case 154:
  25828. return aarch64_ext_fpimm (self, info, code, inst, errors);
  25829. case 70:
  25830. case 162:
  25831. return aarch64_ext_limm (self, info, code, inst, errors);
  25832. case 71:
  25833. return aarch64_ext_aimm (self, info, code, inst, errors);
  25834. case 72:
  25835. return aarch64_ext_imm_half (self, info, code, inst, errors);
  25836. case 73:
  25837. return aarch64_ext_fbits (self, info, code, inst, errors);
  25838. case 75:
  25839. case 76:
  25840. case 159:
  25841. return aarch64_ext_imm_rotate2 (self, info, code, inst, errors);
  25842. case 77:
  25843. case 158:
  25844. case 160:
  25845. return aarch64_ext_imm_rotate1 (self, info, code, inst, errors);
  25846. case 78:
  25847. case 79:
  25848. return aarch64_ext_cond (self, info, code, inst, errors);
  25849. case 85:
  25850. case 94:
  25851. return aarch64_ext_addr_simple (self, info, code, inst, errors);
  25852. case 86:
  25853. return aarch64_ext_addr_regoff (self, info, code, inst, errors);
  25854. case 87:
  25855. case 88:
  25856. case 89:
  25857. case 91:
  25858. case 93:
  25859. return aarch64_ext_addr_simm (self, info, code, inst, errors);
  25860. case 90:
  25861. return aarch64_ext_addr_simm10 (self, info, code, inst, errors);
  25862. case 92:
  25863. return aarch64_ext_addr_uimm12 (self, info, code, inst, errors);
  25864. case 95:
  25865. return aarch64_ext_addr_offset (self, info, code, inst, errors);
  25866. case 96:
  25867. return aarch64_ext_simd_addr_post (self, info, code, inst, errors);
  25868. case 97:
  25869. return aarch64_ext_sysreg (self, info, code, inst, errors);
  25870. case 98:
  25871. return aarch64_ext_pstatefield (self, info, code, inst, errors);
  25872. case 99:
  25873. case 100:
  25874. case 101:
  25875. case 102:
  25876. case 103:
  25877. return aarch64_ext_sysins_op (self, info, code, inst, errors);
  25878. case 104:
  25879. case 106:
  25880. return aarch64_ext_barrier (self, info, code, inst, errors);
  25881. case 105:
  25882. return aarch64_ext_barrier_dsb_nxs (self, info, code, inst, errors);
  25883. case 107:
  25884. return aarch64_ext_prfop (self, info, code, inst, errors);
  25885. case 108:
  25886. return aarch64_ext_none (self, info, code, inst, errors);
  25887. case 109:
  25888. return aarch64_ext_hint (self, info, code, inst, errors);
  25889. case 110:
  25890. case 111:
  25891. return aarch64_ext_sve_addr_ri_s4 (self, info, code, inst, errors);
  25892. case 112:
  25893. case 113:
  25894. case 114:
  25895. case 115:
  25896. return aarch64_ext_sve_addr_ri_s4xvl (self, info, code, inst, errors);
  25897. case 116:
  25898. return aarch64_ext_sve_addr_ri_s6xvl (self, info, code, inst, errors);
  25899. case 117:
  25900. return aarch64_ext_sve_addr_ri_s9xvl (self, info, code, inst, errors);
  25901. case 118:
  25902. case 119:
  25903. case 120:
  25904. case 121:
  25905. return aarch64_ext_sve_addr_ri_u6 (self, info, code, inst, errors);
  25906. case 122:
  25907. case 123:
  25908. case 124:
  25909. case 125:
  25910. case 126:
  25911. case 127:
  25912. case 128:
  25913. case 129:
  25914. case 130:
  25915. case 131:
  25916. case 132:
  25917. case 133:
  25918. case 134:
  25919. case 135:
  25920. case 136:
  25921. return aarch64_ext_sve_addr_rr_lsl (self, info, code, inst, errors);
  25922. case 137:
  25923. case 138:
  25924. case 139:
  25925. case 140:
  25926. case 141:
  25927. case 142:
  25928. case 143:
  25929. case 144:
  25930. return aarch64_ext_sve_addr_rz_xtw (self, info, code, inst, errors);
  25931. case 145:
  25932. case 146:
  25933. case 147:
  25934. case 148:
  25935. return aarch64_ext_sve_addr_zi_u5 (self, info, code, inst, errors);
  25936. case 149:
  25937. return aarch64_ext_sve_addr_zz_lsl (self, info, code, inst, errors);
  25938. case 150:
  25939. return aarch64_ext_sve_addr_zz_sxtw (self, info, code, inst, errors);
  25940. case 151:
  25941. return aarch64_ext_sve_addr_zz_uxtw (self, info, code, inst, errors);
  25942. case 152:
  25943. return aarch64_ext_sve_aimm (self, info, code, inst, errors);
  25944. case 153:
  25945. return aarch64_ext_sve_asimm (self, info, code, inst, errors);
  25946. case 155:
  25947. return aarch64_ext_sve_float_half_one (self, info, code, inst, errors);
  25948. case 156:
  25949. return aarch64_ext_sve_float_half_two (self, info, code, inst, errors);
  25950. case 157:
  25951. return aarch64_ext_sve_float_zero_one (self, info, code, inst, errors);
  25952. case 161:
  25953. return aarch64_ext_inv_limm (self, info, code, inst, errors);
  25954. case 163:
  25955. return aarch64_ext_sve_limm_mov (self, info, code, inst, errors);
  25956. case 165:
  25957. return aarch64_ext_sve_scale (self, info, code, inst, errors);
  25958. case 177:
  25959. case 178:
  25960. case 179:
  25961. return aarch64_ext_sve_shlimm (self, info, code, inst, errors);
  25962. case 180:
  25963. case 181:
  25964. case 182:
  25965. return aarch64_ext_sve_shrimm (self, info, code, inst, errors);
  25966. case 200:
  25967. case 201:
  25968. case 202:
  25969. case 203:
  25970. case 204:
  25971. return aarch64_ext_sve_quad_index (self, info, code, inst, errors);
  25972. case 206:
  25973. return aarch64_ext_sve_index (self, info, code, inst, errors);
  25974. case 207:
  25975. case 209:
  25976. return aarch64_ext_sve_reglist (self, info, code, inst, errors);
  25977. case 212:
  25978. case 213:
  25979. case 216:
  25980. return aarch64_ext_sme_za_hv_tiles (self, info, code, inst, errors);
  25981. case 217:
  25982. return aarch64_ext_sme_za_array (self, info, code, inst, errors);
  25983. case 218:
  25984. return aarch64_ext_sme_addr_ri_u4xvl (self, info, code, inst, errors);
  25985. case 219:
  25986. return aarch64_ext_sme_sm_za (self, info, code, inst, errors);
  25987. case 220:
  25988. return aarch64_ext_sme_pred_reg_with_index (self, info, code, inst, errors);
  25989. case 223:
  25990. case 224:
  25991. case 225:
  25992. return aarch64_ext_x0_to_x30 (self, info, code, inst, errors);
  25993. default: assert (0); abort ();
  25994. }
  25995. }