X86InstrInfo.h 195 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850
  1. namespace llvm {}
  2. using namespace llvm;
  3. struct X86StringToOpcodeEntry
  4. {
  5. const char* Name;
  6. unsigned short Opcode;
  7. };
  8. static const X86StringToOpcodeEntry gX86StringToOpcodeTable[] = {
  9. /*{ "aaa", X86::AAA },
  10. { "aad", X86::AAD8i8 },
  11. { "aad", X86::AAD8i8 },
  12. { "aam", X86::AAM8i8 },
  13. { "aam", X86::AAM8i8 },
  14. { "aas", X86::AAS },
  15. { "adc", X86::ADC8i8 },
  16. { "adc", X86::ADC8rr },
  17. { "adc", X86::ADC8ri },
  18. { "adc", X86::ADC8rm },
  19. { "adc", X86::ADC16i16 },
  20. { "adc", X86::ADC16rr },
  21. { "adc", X86::ADC16ri8 },
  22. { "adc", X86::ADC16ri },
  23. { "adc", X86::ADC16rm },
  24. { "adc", X86::ADC32i32 },
  25. { "adc", X86::ADC32rr },
  26. { "adc", X86::ADC32ri8 },
  27. { "adc", X86::ADC32ri },
  28. { "adc", X86::ADC32rm },
  29. { "adc", X86::ADC64i32 },
  30. { "adc", X86::ADC64rr },
  31. { "adc", X86::ADC64ri8 },
  32. { "adc", X86::ADC64ri32 },
  33. { "adc", X86::ADC64rm },
  34. { "adc", X86::ADC16mr },
  35. { "adc", X86::ADC16mi8 },
  36. { "adc", X86::ADC16mi },
  37. { "adc", X86::ADC32mr },
  38. { "adc", X86::ADC32mi8 },
  39. { "adc", X86::ADC32mi },
  40. { "adc", X86::ADC64mr },
  41. { "adc", X86::ADC64mi8 },
  42. { "adc", X86::ADC64mi32 },
  43. { "adc", X86::ADC8mr },
  44. { "adc", X86::ADC8mi },
  45. { "adcx", X86::ADCX32rr },
  46. { "adcx", X86::ADCX32rm },
  47. { "adcx", X86::ADCX64rr },
  48. { "adcx", X86::ADCX64rm },
  49. { "add", X86::ADD8i8 },
  50. { "add", X86::ADD8rr },
  51. { "add", X86::ADD8ri },
  52. { "add", X86::ADD8rm },
  53. { "add", X86::ADD16i16 },
  54. { "add", X86::ADD16rr },
  55. { "add", X86::ADD16ri8 },
  56. { "add", X86::ADD16ri },
  57. { "add", X86::ADD16rm },
  58. { "add", X86::ADD32i32 },
  59. { "add", X86::ADD32rr },
  60. { "add", X86::ADD32ri8 },
  61. { "add", X86::ADD32ri },
  62. { "add", X86::ADD32rm },
  63. { "add", X86::ADD64i32 },
  64. { "add", X86::ADD64rr },
  65. { "add", X86::ADD64ri8 },
  66. { "add", X86::ADD64ri32 },
  67. { "add", X86::ADD64rm },
  68. { "add", X86::ADD16mr },
  69. { "add", X86::ADD16mi8 },
  70. { "add", X86::ADD16mi },
  71. { "add", X86::ADD32mr },
  72. { "add", X86::ADD32mi8 },
  73. { "add", X86::ADD32mi },
  74. { "add", X86::ADD64mr },
  75. { "add", X86::ADD64mi8 },
  76. { "add", X86::ADD64mi32 },
  77. { "add", X86::ADD8mr },
  78. { "add", X86::ADD8mi },
  79. { "addpd", X86::ADDPDrr },
  80. { "addpd", X86::ADDPDrm },
  81. { "addps", X86::ADDPSrr },
  82. { "addps", X86::ADDPSrm },
  83. { "addsd", X86::ADDSDrr },
  84. { "addsd", X86::ADDSDrm },
  85. { "addss", X86::ADDSSrr },
  86. { "addss", X86::ADDSSrm },
  87. { "addsubpd", X86::ADDSUBPDrr },
  88. { "addsubpd", X86::ADDSUBPDrm },
  89. { "addsubps", X86::ADDSUBPSrr },
  90. { "addsubps", X86::ADDSUBPSrm },
  91. { "adox", X86::ADOX32rr },
  92. { "adox", X86::ADOX32rm },
  93. { "adox", X86::ADOX64rr },
  94. { "adox", X86::ADOX64rm },
  95. { "aesdec", X86::AESDECrr },
  96. { "aesdec", X86::AESDECrm },
  97. { "aesdeclast", X86::AESDECLASTrr },
  98. { "aesdeclast", X86::AESDECLASTrm },
  99. { "aesenc", X86::AESENCrr },
  100. { "aesenc", X86::AESENCrm },
  101. { "aesenclast", X86::AESENCLASTrr },
  102. { "aesenclast", X86::AESENCLASTrm },
  103. { "aesimc", X86::AESIMCrr },
  104. { "aesimc", X86::AESIMCrm },
  105. { "aeskeygenassist", X86::AESKEYGENASSIST128rr },
  106. { "aeskeygenassist", X86::AESKEYGENASSIST128rm },
  107. { "and", X86::AND8i8 },
  108. { "and", X86::AND8rr },
  109. { "and", X86::AND8ri },
  110. { "and", X86::AND8rm },
  111. { "and", X86::AND16i16 },
  112. { "and", X86::AND16rr },
  113. { "and", X86::AND16ri8 },
  114. { "and", X86::AND16ri },
  115. { "and", X86::AND16rm },
  116. { "and", X86::AND32i32 },
  117. { "and", X86::AND32rr },
  118. { "and", X86::AND32ri8 },
  119. { "and", X86::AND32ri },
  120. { "and", X86::AND32rm },
  121. { "and", X86::AND64i32 },
  122. { "and", X86::AND64rr },
  123. { "and", X86::AND64ri8 },
  124. { "and", X86::AND64ri32 },
  125. { "and", X86::AND64rm },
  126. { "and", X86::AND16mr },
  127. { "and", X86::AND16mi8 },
  128. { "and", X86::AND16mi },
  129. { "and", X86::AND32mr },
  130. { "and", X86::AND32mi8 },
  131. { "and", X86::AND32mi },
  132. { "and", X86::AND64mr },
  133. { "and", X86::AND64mi8 },
  134. { "and", X86::AND64mi32 },
  135. { "and", X86::AND8mr },
  136. { "and", X86::AND8mi },
  137. { "andn", X86::ANDN32rr },
  138. { "andn", X86::ANDN32rm },
  139. { "andn", X86::ANDN64rr },
  140. { "andn", X86::ANDN64rm },
  141. { "andnpd", X86::ANDNPDrr },
  142. { "andnpd", X86::ANDNPDrm },
  143. { "andnps", X86::ANDNPSrr },
  144. { "andnps", X86::ANDNPSrm },
  145. { "andpd", X86::ANDPDrr },
  146. { "andpd", X86::ANDPDrm },
  147. { "andps", X86::ANDPSrr },
  148. { "andps", X86::ANDPSrm },
  149. { "arpl", X86::ARPL16rr },
  150. { "arpl", X86::ARPL16mr },
  151. { "bextr", X86::BEXTR32rr },
  152. { "bextr", X86::BEXTRI32ri },
  153. { "bextr", X86::BEXTR32rm },
  154. { "bextr", X86::BEXTRI32mi },
  155. { "bextr", X86::BEXTR64rr },
  156. { "bextr", X86::BEXTRI64ri },
  157. { "bextr", X86::BEXTR64rm },
  158. { "bextr", X86::BEXTRI64mi },
  159. { "blcfill", X86::BLCFILL32rr },
  160. { "blcfill", X86::BLCFILL32rm },
  161. { "blcfill", X86::BLCFILL64rr },
  162. { "blcfill", X86::BLCFILL64rm },
  163. { "blci", X86::BLCI32rr },
  164. { "blci", X86::BLCI32rm },
  165. { "blci", X86::BLCI64rr },
  166. { "blci", X86::BLCI64rm },
  167. { "blcic", X86::BLCIC32rr },
  168. { "blcic", X86::BLCIC32rm },
  169. { "blcic", X86::BLCIC64rr },
  170. { "blcic", X86::BLCIC64rm },
  171. { "blcmsk", X86::BLCMSK32rr },
  172. { "blcmsk", X86::BLCMSK32rm },
  173. { "blcmsk", X86::BLCMSK64rr },
  174. { "blcmsk", X86::BLCMSK64rm },
  175. { "blcs", X86::BLCS32rr },
  176. { "blcs", X86::BLCS32rm },
  177. { "blcs", X86::BLCS64rr },
  178. { "blcs", X86::BLCS64rm },
  179. { "blendpd", X86::BLENDPDrri },
  180. { "blendpd", X86::BLENDPDrmi },
  181. { "blendps", X86::BLENDPSrri },
  182. { "blendps", X86::BLENDPSrmi },
  183. { "blendvpd", X86::BLENDVPDrr0 },
  184. { "blendvpd", X86::BLENDVPDrm0 },
  185. { "blendvpd", X86::BLENDVPDrr0 },
  186. { "blendvpd", X86::BLENDVPDrm0 },
  187. { "blendvps", X86::BLENDVPSrr0 },
  188. { "blendvps", X86::BLENDVPSrm0 },
  189. { "blendvps", X86::BLENDVPSrr0 },
  190. { "blendvps", X86::BLENDVPSrm0 },
  191. { "blsfill", X86::BLSFILL32rr },
  192. { "blsfill", X86::BLSFILL32rm },
  193. { "blsfill", X86::BLSFILL64rr },
  194. { "blsfill", X86::BLSFILL64rm },
  195. { "blsi", X86::BLSI32rr },
  196. { "blsi", X86::BLSI32rm },
  197. { "blsi", X86::BLSI64rr },
  198. { "blsi", X86::BLSI64rm },
  199. { "blsic", X86::BLSIC32rr },
  200. { "blsic", X86::BLSIC32rm },
  201. { "blsic", X86::BLSIC64rr },
  202. { "blsic", X86::BLSIC64rm },
  203. { "blsmsk", X86::BLSMSK32rr },
  204. { "blsmsk", X86::BLSMSK32rm },
  205. { "blsmsk", X86::BLSMSK64rr },
  206. { "blsmsk", X86::BLSMSK64rm },
  207. { "blsr", X86::BLSR32rr },
  208. { "blsr", X86::BLSR32rm },
  209. { "blsr", X86::BLSR64rr },
  210. { "blsr", X86::BLSR64rm },
  211. { "bound", X86::BOUNDS16rm },
  212. { "bound", X86::BOUNDS32rm },
  213. { "bsf", X86::BSF16rr },
  214. { "bsf", X86::BSF16rm },
  215. { "bsf", X86::BSF32rr },
  216. { "bsf", X86::BSF32rm },
  217. { "bsf", X86::BSF64rr },
  218. { "bsf", X86::BSF64rm },
  219. { "bsr", X86::BSR16rr },
  220. { "bsr", X86::BSR16rm },
  221. { "bsr", X86::BSR32rr },
  222. { "bsr", X86::BSR32rm },
  223. { "bsr", X86::BSR64rr },
  224. { "bsr", X86::BSR64rm },
  225. { "bswap", X86::BSWAP32r },
  226. { "bswap", X86::BSWAP64r },
  227. { "bt", X86::BT16rr },
  228. { "bt", X86::BT16ri8 },
  229. { "bt", X86::BT32rr },
  230. { "bt", X86::BT32ri8 },
  231. { "bt", X86::BT64rr },
  232. { "bt", X86::BT64ri8 },
  233. { "bt", X86::BT16mr },
  234. { "bt", X86::BT16mi8 },
  235. { "bt", X86::BT32mr },
  236. { "bt", X86::BT32mi8 },
  237. { "bt", X86::BT32mi8 },
  238. { "bt", X86::BT64mr },
  239. { "bt", X86::BT64mi8 },
  240. { "btc", X86::BTC16rr },
  241. { "btc", X86::BTC16ri8 },
  242. { "btc", X86::BTC32rr },
  243. { "btc", X86::BTC32ri8 },
  244. { "btc", X86::BTC64rr },
  245. { "btc", X86::BTC64ri8 },
  246. { "btc", X86::BTC16mr },
  247. { "btc", X86::BTC16mi8 },
  248. { "btc", X86::BTC32mr },
  249. { "btc", X86::BTC32mi8 },
  250. { "btc", X86::BTC32mi8 },
  251. { "btc", X86::BTC64mr },
  252. { "btc", X86::BTC64mi8 },
  253. { "btr", X86::BTR16rr },
  254. { "btr", X86::BTR16ri8 },
  255. { "btr", X86::BTR32rr },
  256. { "btr", X86::BTR32ri8 },
  257. { "btr", X86::BTR64rr },
  258. { "btr", X86::BTR64ri8 },
  259. { "btr", X86::BTR16mr },
  260. { "btr", X86::BTR16mi8 },
  261. { "btr", X86::BTR32mr },
  262. { "btr", X86::BTR32mi8 },
  263. { "btr", X86::BTR32mi8 },
  264. { "btr", X86::BTR64mr },
  265. { "btr", X86::BTR64mi8 },
  266. { "bts", X86::BTS16rr },
  267. { "bts", X86::BTS16ri8 },
  268. { "bts", X86::BTS32rr },
  269. { "bts", X86::BTS32ri8 },
  270. { "bts", X86::BTS64rr },
  271. { "bts", X86::BTS64ri8 },
  272. { "bts", X86::BTS16mr },
  273. { "bts", X86::BTS16mi8 },
  274. { "bts", X86::BTS32mr },
  275. { "bts", X86::BTS32mi8 },
  276. { "bts", X86::BTS32mi8 },
  277. { "bts", X86::BTS64mr },
  278. { "bts", X86::BTS64mi8 },
  279. { "bzhi", X86::BZHI32rr },
  280. { "bzhi", X86::BZHI32rm },
  281. { "bzhi", X86::BZHI64rr },
  282. { "bzhi", X86::BZHI64rm },
  283. { "call", X86::CALL16r },
  284. { "call", X86::CALL32r },
  285. { "call", X86::CALL64r },
  286. { "call", X86::CALL64pcrel32 },
  287. { "call", X86::CALLpcrel32 },
  288. { "call", X86::CALLpcrel16 },
  289. { "call", X86::CALL16m },
  290. { "call", X86::CALL32m },
  291. { "call", X86::CALL64m },
  292. { "call", X86::CALL64m },
  293. { "call", X86::CALL32m },
  294. { "call", X86::CALL16m },
  295. { "call", X86::FARCALL16i },
  296. { "call", X86::FARCALL32i },
  297. { "calll", X86::FARCALL32i },
  298. { "callw", X86::FARCALL16i },
  299. { "cbw", X86::CBW },
  300. { "cdq", X86::CDQ },
  301. { "cdqe", X86::CDQE },
  302. { "clac", X86::CLAC },
  303. { "clc", X86::CLC },
  304. { "cld", X86::CLD },
  305. { "clflush", X86::CLFLUSH },
  306. { "clgi", X86::CLGI },
  307. { "cli", X86::CLI },
  308. { "clrb", X86::XOR8rr },
  309. { "clrl", X86::XOR32rr },
  310. { "clrq", X86::XOR64rr },
  311. { "clrw", X86::XOR16rr },
  312. { "clts", X86::CLTS },
  313. { "cmc", X86::CMC },
  314. { "cmova", X86::CMOVA16rr },
  315. { "cmova", X86::CMOVA16rm },
  316. { "cmova", X86::CMOVA32rr },
  317. { "cmova", X86::CMOVA32rm },
  318. { "cmova", X86::CMOVA64rr },
  319. { "cmova", X86::CMOVA64rm },
  320. { "cmovae", X86::CMOVAE16rr },
  321. { "cmovae", X86::CMOVAE16rm },
  322. { "cmovae", X86::CMOVAE32rr },
  323. { "cmovae", X86::CMOVAE32rm },
  324. { "cmovae", X86::CMOVAE64rr },
  325. { "cmovae", X86::CMOVAE64rm },
  326. { "cmovb", X86::CMOVB16rr },
  327. { "cmovb", X86::CMOVB16rm },
  328. { "cmovb", X86::CMOVB32rr },
  329. { "cmovb", X86::CMOVB32rm },
  330. { "cmovb", X86::CMOVB64rr },
  331. { "cmovb", X86::CMOVB64rm },
  332. { "cmovbe", X86::CMOVBE16rr },
  333. { "cmovbe", X86::CMOVBE16rm },
  334. { "cmovbe", X86::CMOVBE32rr },
  335. { "cmovbe", X86::CMOVBE32rm },
  336. { "cmovbe", X86::CMOVBE64rr },
  337. { "cmovbe", X86::CMOVBE64rm },
  338. { "cmove", X86::CMOVE16rr },
  339. { "cmove", X86::CMOVE16rm },
  340. { "cmove", X86::CMOVE32rr },
  341. { "cmove", X86::CMOVE32rm },
  342. { "cmove", X86::CMOVE64rr },
  343. { "cmove", X86::CMOVE64rm },
  344. { "cmovg", X86::CMOVG16rr },
  345. { "cmovg", X86::CMOVG16rm },
  346. { "cmovg", X86::CMOVG32rr },
  347. { "cmovg", X86::CMOVG32rm },
  348. { "cmovg", X86::CMOVG64rr },
  349. { "cmovg", X86::CMOVG64rm },
  350. { "cmovge", X86::CMOVGE16rr },
  351. { "cmovge", X86::CMOVGE16rm },
  352. { "cmovge", X86::CMOVGE32rr },
  353. { "cmovge", X86::CMOVGE32rm },
  354. { "cmovge", X86::CMOVGE64rr },
  355. { "cmovge", X86::CMOVGE64rm },
  356. { "cmovl", X86::CMOVL16rr },
  357. { "cmovl", X86::CMOVL16rm },
  358. { "cmovl", X86::CMOVL32rr },
  359. { "cmovl", X86::CMOVL32rm },
  360. { "cmovl", X86::CMOVL64rr },
  361. { "cmovl", X86::CMOVL64rm },
  362. { "cmovle", X86::CMOVLE16rr },
  363. { "cmovle", X86::CMOVLE16rm },
  364. { "cmovle", X86::CMOVLE32rr },
  365. { "cmovle", X86::CMOVLE32rm },
  366. { "cmovle", X86::CMOVLE64rr },
  367. { "cmovle", X86::CMOVLE64rm },
  368. { "cmovne", X86::CMOVNE16rr },
  369. { "cmovne", X86::CMOVNE16rm },
  370. { "cmovne", X86::CMOVNE32rr },
  371. { "cmovne", X86::CMOVNE32rm },
  372. { "cmovne", X86::CMOVNE64rr },
  373. { "cmovne", X86::CMOVNE64rm },
  374. { "cmovno", X86::CMOVNO16rr },
  375. { "cmovno", X86::CMOVNO16rm },
  376. { "cmovno", X86::CMOVNO32rr },
  377. { "cmovno", X86::CMOVNO32rm },
  378. { "cmovno", X86::CMOVNO64rr },
  379. { "cmovno", X86::CMOVNO64rm },
  380. { "cmovnp", X86::CMOVNP16rr },
  381. { "cmovnp", X86::CMOVNP16rm },
  382. { "cmovnp", X86::CMOVNP32rr },
  383. { "cmovnp", X86::CMOVNP32rm },
  384. { "cmovnp", X86::CMOVNP64rr },
  385. { "cmovnp", X86::CMOVNP64rm },
  386. { "cmovns", X86::CMOVNS16rr },
  387. { "cmovns", X86::CMOVNS16rm },
  388. { "cmovns", X86::CMOVNS32rr },
  389. { "cmovns", X86::CMOVNS32rm },
  390. { "cmovns", X86::CMOVNS64rr },
  391. { "cmovns", X86::CMOVNS64rm },
  392. { "cmovo", X86::CMOVO16rr },
  393. { "cmovo", X86::CMOVO16rm },
  394. { "cmovo", X86::CMOVO32rr },
  395. { "cmovo", X86::CMOVO32rm },
  396. { "cmovo", X86::CMOVO64rr },
  397. { "cmovo", X86::CMOVO64rm },
  398. { "cmovp", X86::CMOVP16rr },
  399. { "cmovp", X86::CMOVP16rm },
  400. { "cmovp", X86::CMOVP32rr },
  401. { "cmovp", X86::CMOVP32rm },
  402. { "cmovp", X86::CMOVP64rr },
  403. { "cmovp", X86::CMOVP64rm },
  404. { "cmovs", X86::CMOVS16rr },
  405. { "cmovs", X86::CMOVS16rm },
  406. { "cmovs", X86::CMOVS32rr },
  407. { "cmovs", X86::CMOVS32rm },
  408. { "cmovs", X86::CMOVS64rr },
  409. { "cmovs", X86::CMOVS64rm },
  410. { "cmp", X86::CMP8i8 },
  411. { "cmp", X86::CMP8rr },
  412. { "cmp", X86::CMP8ri },
  413. { "cmp", X86::CMP8rm },
  414. { "cmp", X86::CMP16i16 },
  415. { "cmp", X86::CMP16rr },
  416. { "cmp", X86::CMP16ri8 },
  417. { "cmp", X86::CMP16ri },
  418. { "cmp", X86::CMP16rm },
  419. { "cmp", X86::CMP32i32 },
  420. { "cmp", X86::CMP32rr },
  421. { "cmp", X86::CMP32ri8 },
  422. { "cmp", X86::CMP32ri },
  423. { "cmp", X86::CMP32rm },
  424. { "cmp", X86::CMP64i32 },
  425. { "cmp", X86::CMP64rr },
  426. { "cmp", X86::CMP64ri8 },
  427. { "cmp", X86::CMP64ri32 },
  428. { "cmp", X86::CMP64rm },
  429. { "cmp", X86::CMP16mr },
  430. { "cmp", X86::CMP16mi8 },
  431. { "cmp", X86::CMP16mi },
  432. { "cmp", X86::CMP32mr },
  433. { "cmp", X86::CMP32mi8 },
  434. { "cmp", X86::CMP32mi },
  435. { "cmp", X86::CMP64mr },
  436. { "cmp", X86::CMP64mi8 },
  437. { "cmp", X86::CMP64mi32 },
  438. { "cmp", X86::CMP8mr },
  439. { "cmp", X86::CMP8mi },
  440. { "cmp", X86::CMPPDrri },
  441. { "cmp", X86::CMPPDrmi },
  442. { "cmp", X86::CMPPSrri },
  443. { "cmp", X86::CMPPSrmi },
  444. { "cmp", X86::CMPSDrr },
  445. { "cmp", X86::CMPSDrm },
  446. { "cmp", X86::CMPSSrr },
  447. { "cmp", X86::CMPSSrm },
  448. { "cmppd", X86::CMPPDrri_alt },
  449. { "cmppd", X86::CMPPDrmi_alt },
  450. { "cmpps", X86::CMPPSrri_alt },
  451. { "cmpps", X86::CMPPSrmi_alt },
  452. { "cmpsb", X86::CMPSB },
  453. { "cmpsd", X86::CMPSL },
  454. { "cmpsd", X86::CMPSDrr_alt },
  455. { "cmpsd", X86::CMPSDrm_alt },
  456. { "cmpsq", X86::CMPSQ },
  457. { "cmpss", X86::CMPSSrr_alt },
  458. { "cmpss", X86::CMPSSrm_alt },
  459. { "cmpsw", X86::CMPSW },
  460. { "cmpxchg", X86::CMPXCHG8rr },
  461. { "cmpxchg", X86::CMPXCHG16rr },
  462. { "cmpxchg", X86::CMPXCHG32rr },
  463. { "cmpxchg", X86::CMPXCHG64rr },
  464. { "cmpxchg", X86::CMPXCHG16rm },
  465. { "cmpxchg", X86::CMPXCHG32rm },
  466. { "cmpxchg", X86::CMPXCHG64rm },
  467. { "cmpxchg", X86::CMPXCHG8rm },
  468. { "cmpxchg16b", X86::CMPXCHG16B },
  469. { "cmpxchg8b", X86::CMPXCHG8B },
  470. { "comisd", X86::COMISDrr },
  471. { "comisd", X86::COMISDrm },
  472. { "comiss", X86::COMISSrr },
  473. { "comiss", X86::COMISSrm },
  474. { "cpuid", X86::CPUID },
  475. { "cqo", X86::CQO },
  476. { "crc32", X86::CRC32r32r8 },
  477. { "crc32", X86::CRC32r32r16 },
  478. { "crc32", X86::CRC32r32r32 },
  479. { "crc32", X86::CRC32r32m16 },
  480. { "crc32", X86::CRC32r32m32 },
  481. { "crc32", X86::CRC32r32m8 },
  482. { "crc32", X86::CRC32r64r8 },
  483. { "crc32", X86::CRC32r64r64 },
  484. { "crc32", X86::CRC32r64m64 },
  485. { "crc32", X86::CRC32r64m8 },
  486. { "cs", X86::CS_PREFIX },
  487. { "cvtdq2pd", X86::CVTDQ2PDrr },
  488. { "cvtdq2pd", X86::CVTDQ2PDrm },
  489. { "cvtdq2ps", X86::CVTDQ2PSrr },
  490. { "cvtdq2ps", X86::CVTDQ2PSrm },
  491. { "cvtpd2dq", X86::CVTPD2DQrr },
  492. { "cvtpd2dq", X86::CVTPD2DQrm },
  493. { "cvtpd2pi", X86::MMX_CVTPD2PIirr },
  494. { "cvtpd2pi", X86::MMX_CVTPD2PIirm },
  495. { "cvtpd2ps", X86::CVTPD2PSrr },
  496. { "cvtpd2ps", X86::CVTPD2PSrm },
  497. { "cvtpi2pd", X86::MMX_CVTPI2PDirr },
  498. { "cvtpi2pd", X86::MMX_CVTPI2PDirm },
  499. { "cvtpi2ps", X86::MMX_CVTPI2PSirr },
  500. { "cvtpi2ps", X86::MMX_CVTPI2PSirm },
  501. { "cvtps2dq", X86::CVTPS2DQrr },
  502. { "cvtps2dq", X86::CVTPS2DQrm },
  503. { "cvtps2pd", X86::CVTPS2PDrr },
  504. { "cvtps2pd", X86::CVTPS2PDrm },
  505. { "cvtps2pi", X86::MMX_CVTPS2PIirr },
  506. { "cvtps2pi", X86::MMX_CVTPS2PIirm },
  507. { "cvtsd2si", X86::CVTSD2SIrr },
  508. { "cvtsd2si", X86::CVTSD2SIrr },
  509. { "cvtsd2si", X86::CVTSD2SIrm },
  510. { "cvtsd2si", X86::CVTSD2SIrm },
  511. { "cvtsd2si", X86::CVTSD2SI64rr },
  512. { "cvtsd2si", X86::CVTSD2SI64rr },
  513. { "cvtsd2si", X86::CVTSD2SI64rm },
  514. { "cvtsd2si", X86::CVTSD2SI64rm },
  515. { "cvtsd2ss", X86::CVTSD2SSrr },
  516. { "cvtsd2ss", X86::CVTSD2SSrm },
  517. { "cvtsi2sd", X86::CVTSI2SDrr },
  518. { "cvtsi2sd", X86::CVTSI2SD64rr },
  519. { "cvtsi2sd", X86::CVTSI2SDrm },
  520. { "cvtsi2sd", X86::CVTSI2SDrm },
  521. { "cvtsi2sd", X86::CVTSI2SD64rm },
  522. { "cvtsi2ss", X86::CVTSI2SSrr },
  523. { "cvtsi2ss", X86::CVTSI2SS64rr },
  524. { "cvtsi2ss", X86::CVTSI2SSrm },
  525. { "cvtsi2ss", X86::CVTSI2SSrm },
  526. { "cvtsi2ss", X86::CVTSI2SS64rm },
  527. { "cvtss2sd", X86::CVTSS2SDrr },
  528. { "cvtss2sd", X86::CVTSS2SDrm },
  529. { "cvtss2si", X86::CVTSS2SIrr },
  530. { "cvtss2si", X86::CVTSS2SIrr },
  531. { "cvtss2si", X86::CVTSS2SIrm },
  532. { "cvtss2si", X86::CVTSS2SIrm },
  533. { "cvtss2si", X86::CVTSS2SI64rr },
  534. { "cvtss2si", X86::CVTSS2SI64rr },
  535. { "cvtss2si", X86::CVTSS2SI64rm },
  536. { "cvtss2si", X86::CVTSS2SI64rm },
  537. { "cvttpd2dq", X86::CVTTPD2DQrr },
  538. { "cvttpd2dq", X86::CVTTPD2DQrm },
  539. { "cvttpd2pi", X86::MMX_CVTTPD2PIirr },
  540. { "cvttpd2pi", X86::MMX_CVTTPD2PIirm },
  541. { "cvttps2dq", X86::CVTTPS2DQrr },
  542. { "cvttps2dq", X86::CVTTPS2DQrm },
  543. { "cvttps2pi", X86::MMX_CVTTPS2PIirr },
  544. { "cvttps2pi", X86::MMX_CVTTPS2PIirm },
  545. { "cvttsd2si", X86::CVTTSD2SIrr },
  546. { "cvttsd2si", X86::CVTTSD2SIrr },
  547. { "cvttsd2si", X86::CVTTSD2SIrm },
  548. { "cvttsd2si", X86::CVTTSD2SIrm },
  549. { "cvttsd2si", X86::CVTTSD2SI64rr },
  550. { "cvttsd2si", X86::CVTTSD2SI64rr },
  551. { "cvttsd2si", X86::CVTTSD2SI64rm },
  552. { "cvttsd2si", X86::CVTTSD2SI64rm },
  553. { "cvttss2si", X86::CVTTSS2SIrr },
  554. { "cvttss2si", X86::CVTTSS2SIrr },
  555. { "cvttss2si", X86::CVTTSS2SIrm },
  556. { "cvttss2si", X86::CVTTSS2SIrm },
  557. { "cvttss2si", X86::CVTTSS2SI64rr },
  558. { "cvttss2si", X86::CVTTSS2SI64rr },
  559. { "cvttss2si", X86::CVTTSS2SI64rm },
  560. { "cvttss2si", X86::CVTTSS2SI64rm },
  561. { "cwd", X86::CWD },
  562. { "cwde", X86::CWDE },
  563. { "daa", X86::DAA },
  564. { "das", X86::DAS },
  565. { "data16", X86::DATA16_PREFIX },
  566. { "dec", X86::DEC8r },
  567. { "dec", X86::DEC16r },
  568. { "dec", X86::DEC64_16r },
  569. { "dec", X86::DEC32r },
  570. { "dec", X86::DEC64_32r },
  571. { "dec", X86::DEC64r },
  572. { "dec", X86::DEC16m },
  573. { "dec", X86::DEC64_16m },
  574. { "dec", X86::DEC32m },
  575. { "dec", X86::DEC64_32m },
  576. { "dec", X86::DEC64m },
  577. { "dec", X86::DEC8m },
  578. { "div", X86::DIV8r },
  579. { "div", X86::DIV16r },
  580. { "div", X86::DIV32r },
  581. { "div", X86::DIV64r },
  582. { "div", X86::DIV16m },
  583. { "div", X86::DIV32m },
  584. { "div", X86::DIV64m },
  585. { "div", X86::DIV8m },
  586. { "div", X86::DIV8r },
  587. { "div", X86::DIV8m },
  588. { "div", X86::DIV16r },
  589. { "div", X86::DIV16m },
  590. { "div", X86::DIV32r },
  591. { "div", X86::DIV32m },
  592. { "div", X86::DIV64r },
  593. { "div", X86::DIV64m },
  594. { "divpd", X86::DIVPDrr },
  595. { "divpd", X86::DIVPDrm },
  596. { "divps", X86::DIVPSrr },
  597. { "divps", X86::DIVPSrm },
  598. { "divsd", X86::DIVSDrr },
  599. { "divsd", X86::DIVSDrm },
  600. { "divss", X86::DIVSSrr },
  601. { "divss", X86::DIVSSrm },
  602. { "dppd", X86::DPPDrri },
  603. { "dppd", X86::DPPDrmi },
  604. { "dpps", X86::DPPSrri },
  605. { "dpps", X86::DPPSrmi },
  606. { "ds", X86::DS_PREFIX },
  607. { "emms", X86::MMX_EMMS },
  608. { "encls", X86::ENCLS },
  609. { "enclu", X86::ENCLU },
  610. { "enter", X86::ENTER },
  611. { "es", X86::ES_PREFIX },
  612. { "extractps", X86::EXTRACTPSrr },
  613. { "extractps", X86::EXTRACTPSmr },
  614. { "extrq", X86::EXTRQ },
  615. { "extrq", X86::EXTRQI },
  616. { "f2xm1", X86::F2XM1 },
  617. { "fabs", X86::ABS_F },
  618. { "fadd", X86::ADD_FST0r },
  619. { "fadd", X86::ADD_F32m },
  620. { "fadd", X86::ADD_F64m },
  621. { "fadd", X86::ADD_FST0r },
  622. { "fadd", X86::ADD_FST0r },
  623. { "fadd", X86::ADD_FrST0 },
  624. { "faddp", X86::ADD_FPrST0 },
  625. { "faddp", X86::ADD_FPrST0 },
  626. { "faddp", X86::ADD_FPrST0 },
  627. { "faddp", X86::ADD_FPrST0 },
  628. { "faddp", X86::ADD_FPrST0 },
  629. { "fbld", X86::FBLDm },
  630. { "fbstp", X86::FBSTPm },
  631. { "fchs", X86::CHS_F },
  632. { "fcmovb", X86::CMOVB_F },
  633. { "fcmovbe", X86::CMOVBE_F },
  634. { "fcmove", X86::CMOVE_F },
  635. { "fcmovnb", X86::CMOVNB_F },
  636. { "fcmovnbe", X86::CMOVNBE_F },
  637. { "fcmovne", X86::CMOVNE_F },
  638. { "fcmovnu", X86::CMOVNP_F },
  639. { "fcmovu", X86::CMOVP_F },
  640. { "fcom", X86::COM_FST0r },
  641. { "fcom", X86::COM_FST0r },
  642. { "fcom", X86::FCOM32m },
  643. { "fcom", X86::FCOM64m },
  644. { "fcomi", X86::COM_FIr },
  645. { "fcomi", X86::COM_FIr },
  646. { "fcomi", X86::COM_FIr },
  647. { "fcomi", X86::COM_FIr },
  648. { "fcomp", X86::COMP_FST0r },
  649. { "fcomp", X86::COMP_FST0r },
  650. { "fcomp", X86::FCOMP32m },
  651. { "fcomp", X86::FCOMP64m },
  652. { "fcompi", X86::COM_FIPr },
  653. { "fcompi", X86::COM_FIPr },
  654. { "fcompi", X86::COM_FIPr },
  655. { "fcompi", X86::COM_FIPr },
  656. { "fcompp", X86::FCOMPP },
  657. { "fcos", X86::COS_F },
  658. { "fdecstp", X86::FDECSTP },
  659. { "fdiv", X86::DIV_FST0r },
  660. { "fdiv", X86::DIV_F32m },
  661. { "fdiv", X86::DIV_F64m },
  662. { "fdiv", X86::DIV_FST0r },
  663. { "fdiv", X86::DIV_FST0r },
  664. { "fdiv", X86::DIV_FrST0 },
  665. { "fdivp", X86::DIV_FPrST0 },
  666. { "fdivp", X86::DIV_FPrST0 },
  667. { "fdivp", X86::DIV_FPrST0 },
  668. { "fdivp", X86::DIV_FPrST0 },
  669. { "fdivp", X86::DIV_FPrST0 },
  670. { "fdivr", X86::DIVR_FST0r },
  671. { "fdivr", X86::DIVR_F32m },
  672. { "fdivr", X86::DIVR_F64m },
  673. { "fdivr", X86::DIVR_FST0r },
  674. { "fdivr", X86::DIVR_FST0r },
  675. { "fdivr", X86::DIVR_FrST0 },
  676. { "fdivrp", X86::DIVR_FPrST0 },
  677. { "fdivrp", X86::DIVR_FPrST0 },
  678. { "fdivrp", X86::DIVR_FPrST0 },
  679. { "fdivrp", X86::DIVR_FPrST0 },
  680. { "fdivrp", X86::DIVR_FPrST0 },
  681. { "femms", X86::FEMMS },
  682. { "ffree", X86::FFREE },
  683. { "fiadd", X86::ADD_FI16m },
  684. { "fiadd", X86::ADD_FI32m },
  685. { "ficom", X86::FICOM16m },
  686. { "ficom", X86::FICOM32m },
  687. { "ficomp", X86::FICOMP16m },
  688. { "ficomp", X86::FICOMP32m },
  689. { "fidiv", X86::DIV_FI16m },
  690. { "fidiv", X86::DIV_FI32m },
  691. { "fidivr", X86::DIVR_FI16m },
  692. { "fidivr", X86::DIVR_FI32m },
  693. { "fild", X86::ILD_F16m },
  694. { "fild", X86::ILD_F32m },
  695. { "fild", X86::ILD_F64m },
  696. { "fimul", X86::MUL_FI16m },
  697. { "fimul", X86::MUL_FI32m },
  698. { "fincstp", X86::FINCSTP },
  699. { "fist", X86::IST_F16m },
  700. { "fist", X86::IST_F32m },
  701. { "fistp", X86::IST_FP16m },
  702. { "fistp", X86::IST_FP32m },
  703. { "fistp", X86::IST_FP64m },
  704. { "fisttp", X86::ISTT_FP16m },
  705. { "fisttp", X86::ISTT_FP32m },
  706. { "fisttp", X86::ISTT_FP64m },
  707. { "fisub", X86::SUB_FI16m },
  708. { "fisub", X86::SUB_FI32m },
  709. { "fisubr", X86::SUBR_FI16m },
  710. { "fisubr", X86::SUBR_FI32m },
  711. { "fld", X86::LD_Frr },
  712. { "fld", X86::LD_F32m },
  713. { "fld", X86::LD_F64m },
  714. { "fld", X86::LD_F80m },
  715. { "fld1", X86::LD_F1 },
  716. { "fldcw", X86::FLDCW16m },
  717. { "fldenv", X86::FLDENVm },
  718. { "fldl2e", X86::FLDL2E },
  719. { "fldl2t", X86::FLDL2T },
  720. { "fldlg2", X86::FLDLG2 },
  721. { "fldln2", X86::FLDLN2 },
  722. { "fldpi", X86::FLDPI },
  723. { "fldz", X86::LD_F0 },
  724. { "fmul", X86::MUL_FST0r },
  725. { "fmul", X86::MUL_F32m },
  726. { "fmul", X86::MUL_F64m },
  727. { "fmul", X86::MUL_FST0r },
  728. { "fmul", X86::MUL_FST0r },
  729. { "fmul", X86::MUL_FrST0 },
  730. { "fmulp", X86::MUL_FPrST0 },
  731. { "fmulp", X86::MUL_FPrST0 },
  732. { "fmulp", X86::MUL_FPrST0 },
  733. { "fmulp", X86::MUL_FPrST0 },
  734. { "fmulp", X86::MUL_FPrST0 },
  735. { "fnclex", X86::FNCLEX },
  736. { "fninit", X86::FNINIT },
  737. { "fnop", X86::FNOP },
  738. { "fnsave", X86::FSAVEm },
  739. { "fnstcw", X86::FNSTCW16m },
  740. { "fnstenv", X86::FSTENVm },
  741. { "fnstsw", X86::FNSTSW16r },
  742. { "fnstsw", X86::FNSTSW16r },
  743. { "fnstsw", X86::FNSTSW16r },
  744. { "fnstsw", X86::FNSTSW16r },
  745. { "fnstsw", X86::FNSTSWm },
  746. { "fpatan", X86::FPATAN },
  747. { "fprem", X86::FPREM },
  748. { "fprem1", X86::FPREM1 },
  749. { "fptan", X86::FPTAN },
  750. { "frndint", X86::FRNDINT },
  751. { "frstor", X86::FRSTORm },
  752. { "fs", X86::FS_PREFIX },
  753. { "fscale", X86::FSCALE },
  754. { "fsin", X86::SIN_F },
  755. { "fsincos", X86::FSINCOS },
  756. { "fsqrt", X86::SQRT_F },
  757. { "fst", X86::ST_Frr },
  758. { "fst", X86::ST_F32m },
  759. { "fst", X86::ST_F64m },
  760. { "fstp", X86::ST_FPrr },
  761. { "fstp", X86::ST_FP32m },
  762. { "fstp", X86::ST_FP64m },
  763. { "fstp", X86::ST_FP80m },
  764. { "fsub", X86::SUB_FST0r },
  765. { "fsub", X86::SUB_F32m },
  766. { "fsub", X86::SUB_F64m },
  767. { "fsub", X86::SUB_FST0r },
  768. { "fsub", X86::SUB_FST0r },
  769. { "fsub", X86::SUB_FrST0 },
  770. { "fsubp", X86::SUB_FPrST0 },
  771. { "fsubp", X86::SUB_FPrST0 },
  772. { "fsubp", X86::SUB_FPrST0 },
  773. { "fsubp", X86::SUB_FPrST0 },
  774. { "fsubp", X86::SUB_FPrST0 },
  775. { "fsubr", X86::SUBR_FST0r },
  776. { "fsubr", X86::SUBR_F32m },
  777. { "fsubr", X86::SUBR_F64m },
  778. { "fsubr", X86::SUBR_FST0r },
  779. { "fsubr", X86::SUBR_FST0r },
  780. { "fsubr", X86::SUBR_FrST0 },
  781. { "fsubrp", X86::SUBR_FPrST0 },
  782. { "fsubrp", X86::SUBR_FPrST0 },
  783. { "fsubrp", X86::SUBR_FPrST0 },
  784. { "fsubrp", X86::SUBR_FPrST0 },
  785. { "fsubrp", X86::SUBR_FPrST0 },
  786. { "ftst", X86::TST_F },
  787. { "fucom", X86::UCOM_Fr },
  788. { "fucom", X86::UCOM_Fr },
  789. { "fucomi", X86::UCOM_FIr },
  790. { "fucomi", X86::UCOM_FIr },
  791. { "fucomi", X86::UCOM_FIr },
  792. { "fucomi", X86::UCOM_FIr },
  793. { "fucomp", X86::UCOM_FPr },
  794. { "fucomp", X86::UCOM_FPr },
  795. { "fucompi", X86::UCOM_FIPr },
  796. { "fucompi", X86::UCOM_FIPr },
  797. { "fucompi", X86::UCOM_FIPr },
  798. { "fucompi", X86::UCOM_FIPr },
  799. { "fucompp", X86::UCOM_FPPr },
  800. { "fxam", X86::FXAM },
  801. { "fxch", X86::XCH_F },
  802. { "fxch", X86::XCH_F },
  803. { "fxrstor", X86::FXRSTOR },
  804. { "fxrstor64", X86::FXRSTOR64 },
  805. { "fxsave", X86::FXSAVE },
  806. { "fxsave64", X86::FXSAVE64 },
  807. { "fxtract", X86::FXTRACT },
  808. { "fyl2x", X86::FYL2X },
  809. { "fyl2xp1", X86::FYL2XP1 },
  810. { "gs", X86::GS_PREFIX },
  811. { "haddpd", X86::HADDPDrr },
  812. { "haddpd", X86::HADDPDrm },
  813. { "haddps", X86::HADDPSrr },
  814. { "haddps", X86::HADDPSrm },
  815. { "hlt", X86::HLT },
  816. { "hsubpd", X86::HSUBPDrr },
  817. { "hsubpd", X86::HSUBPDrm },
  818. { "hsubps", X86::HSUBPSrr },
  819. { "hsubps", X86::HSUBPSrm },
  820. { "idiv", X86::IDIV8r },
  821. { "idiv", X86::IDIV16r },
  822. { "idiv", X86::IDIV32r },
  823. { "idiv", X86::IDIV64r },
  824. { "idiv", X86::IDIV16m },
  825. { "idiv", X86::IDIV32m },
  826. { "idiv", X86::IDIV64m },
  827. { "idiv", X86::IDIV8m },
  828. { "idiv", X86::IDIV8r },
  829. { "idiv", X86::IDIV8m },
  830. { "idiv", X86::IDIV16r },
  831. { "idiv", X86::IDIV16m },
  832. { "idiv", X86::IDIV32r },
  833. { "idiv", X86::IDIV32m },
  834. { "idiv", X86::IDIV64r },
  835. { "idiv", X86::IDIV64m },
  836. { "imul", X86::IMUL8r },
  837. { "imul", X86::IMUL16r },
  838. { "imul", X86::IMUL32r },
  839. { "imul", X86::IMUL64r },
  840. { "imul", X86::IMUL16m },
  841. { "imul", X86::IMUL32m },
  842. { "imul", X86::IMUL64m },
  843. { "imul", X86::IMUL8m },
  844. { "imul", X86::IMUL16rr },
  845. { "imul", X86::IMUL16rm },
  846. { "imul", X86::IMUL32rr },
  847. { "imul", X86::IMUL32rm },
  848. { "imul", X86::IMUL64rr },
  849. { "imul", X86::IMUL64rm },
  850. { "imul", X86::IMUL16rri8 },
  851. { "imul", X86::IMUL16rri },
  852. { "imul", X86::IMUL16rmi8 },
  853. { "imul", X86::IMUL16rmi },
  854. { "imul", X86::IMUL32rri8 },
  855. { "imul", X86::IMUL32rri },
  856. { "imul", X86::IMUL32rmi8 },
  857. { "imul", X86::IMUL32rmi },
  858. { "imul", X86::IMUL64rri8 },
  859. { "imul", X86::IMUL64rri32 },
  860. { "imul", X86::IMUL64rmi8 },
  861. { "imul", X86::IMUL64rmi32 },
  862. { "imull", X86::IMUL32rri8 },
  863. { "imull", X86::IMUL32rri },
  864. { "imulq", X86::IMUL64rri8 },
  865. { "imulq", X86::IMUL64rri32 },
  866. { "imulw", X86::IMUL16rri8 },
  867. { "imulw", X86::IMUL16rri },
  868. { "in", X86::IN8rr },
  869. { "in", X86::IN8ri },
  870. { "in", X86::IN16rr },
  871. { "in", X86::IN16ri },
  872. { "in", X86::IN32rr },
  873. { "in", X86::IN32ri },
  874. { "inb", X86::IN8rr },
  875. { "inb", X86::IN8ri },
  876. { "inc", X86::INC8r },
  877. { "inc", X86::INC16r },
  878. { "inc", X86::INC64_16r },
  879. { "inc", X86::INC32r },
  880. { "inc", X86::INC64_32r },
  881. { "inc", X86::INC64r },
  882. { "inc", X86::INC16m },
  883. { "inc", X86::INC64_16m },
  884. { "inc", X86::INC32m },
  885. { "inc", X86::INC64_32m },
  886. { "inc", X86::INC64m },
  887. { "inc", X86::INC8m },
  888. { "inl", X86::IN32rr },
  889. { "inl", X86::IN32ri },
  890. { "insb", X86::INSB },
  891. { "insd", X86::INSL },
  892. { "insertps", X86::INSERTPSrr },
  893. { "insertps", X86::INSERTPSrm },
  894. { "insertq", X86::INSERTQ },
  895. { "insertq", X86::INSERTQI },
  896. { "insw", X86::INSW },
  897. { "int", X86::INT },
  898. { "int3", X86::INT3 },
  899. { "into", X86::INTO },
  900. { "invd", X86::INVD },
  901. { "invept", X86::INVEPT32 },
  902. { "invept", X86::INVEPT64 },
  903. { "invlpg", X86::INVLPG },
  904. { "invlpga", X86::INVLPGA32 },
  905. { "invlpga", X86::INVLPGA64 },
  906. { "invpcid", X86::INVPCID32 },
  907. { "invpcid", X86::INVPCID64 },
  908. { "invvpid", X86::INVVPID32 },
  909. { "invvpid", X86::INVVPID64 },
  910. { "inw", X86::IN16rr },
  911. { "inw", X86::IN16ri },
  912. { "iret", X86::IRET16 },
  913. { "iretd", X86::IRET32 },
  914. { "iretq", X86::IRET64 },
  915. { "ja", X86::JA_2 },
  916. { "ja", X86::JA_1 },
  917. { "ja", X86::JA_4 },
  918. { "jae", X86::JAE_2 },
  919. { "jae", X86::JAE_1 },
  920. { "jae", X86::JAE_4 },
  921. { "jb", X86::JB_2 },
  922. { "jb", X86::JB_1 },
  923. { "jb", X86::JB_4 },
  924. { "jbe", X86::JBE_2 },
  925. { "jbe", X86::JBE_1 },
  926. { "jbe", X86::JBE_4 },
  927. { "jcxz", X86::JCXZ },
  928. { "je", X86::JE_2 },
  929. { "je", X86::JE_1 },
  930. { "je", X86::JE_4 },
  931. { "jecxz", X86::JECXZ_32 },
  932. { "jecxz", X86::JECXZ_64 },
  933. { "jg", X86::JG_2 },
  934. { "jg", X86::JG_1 },
  935. { "jg", X86::JG_4 },
  936. { "jge", X86::JGE_2 },
  937. { "jge", X86::JGE_1 },
  938. { "jge", X86::JGE_4 },
  939. { "jl", X86::JL_2 },
  940. { "jl", X86::JL_1 },
  941. { "jl", X86::JL_4 },
  942. { "jle", X86::JLE_2 },
  943. { "jle", X86::JLE_1 },
  944. { "jle", X86::JLE_4 },
  945. { "jmp", X86::JMP16r },
  946. { "jmp", X86::JMP32r },
  947. { "jmp", X86::JMP64r },
  948. { "jmp", X86::JMP_2 },
  949. { "jmp", X86::JMP_1 },
  950. { "jmp", X86::JMP_4 },
  951. { "jmp", X86::JMP16m },
  952. { "jmp", X86::JMP32m },
  953. { "jmp", X86::JMP64m },
  954. { "jmp", X86::JMP64m },
  955. { "jmp", X86::JMP32m },
  956. { "jmp", X86::JMP16m },
  957. { "jmp", X86::FARJMP16i },
  958. { "jmp", X86::FARJMP32i },
  959. { "jmpl", X86::FARJMP32i },
  960. { "jmpw", X86::FARJMP16i },
  961. { "jne", X86::JNE_2 },
  962. { "jne", X86::JNE_1 },
  963. { "jne", X86::JNE_4 },
  964. { "jno", X86::JNO_2 },
  965. { "jno", X86::JNO_1 },
  966. { "jno", X86::JNO_4 },
  967. { "jnp", X86::JNP_2 },
  968. { "jnp", X86::JNP_1 },
  969. { "jnp", X86::JNP_4 },
  970. { "jns", X86::JNS_2 },
  971. { "jns", X86::JNS_1 },
  972. { "jns", X86::JNS_4 },
  973. { "jo", X86::JO_2 },
  974. { "jo", X86::JO_1 },
  975. { "jo", X86::JO_4 },
  976. { "jp", X86::JP_2 },
  977. { "jp", X86::JP_1 },
  978. { "jp", X86::JP_4 },
  979. { "jrcxz", X86::JRCXZ },
  980. { "js", X86::JS_2 },
  981. { "js", X86::JS_1 },
  982. { "js", X86::JS_4 },
  983. { "kandb", X86::KANDBrr },
  984. { "kandd", X86::KANDDrr },
  985. { "kandnb", X86::KANDNBrr },
  986. { "kandnd", X86::KANDNDrr },
  987. { "kandnq", X86::KANDNQrr },
  988. { "kandnw", X86::KANDNWrr },
  989. { "kandq", X86::KANDQrr },
  990. { "kandw", X86::KANDWrr },
  991. { "kmovb", X86::KMOVBrk },
  992. { "kmovb", X86::KMOVBkr },
  993. { "kmovb", X86::KMOVBkk },
  994. { "kmovb", X86::KMOVBkm },
  995. { "kmovb", X86::KMOVBmk },
  996. { "kmovd", X86::KMOVDrk },
  997. { "kmovd", X86::KMOVDkr },
  998. { "kmovd", X86::KMOVDkk },
  999. { "kmovd", X86::KMOVDkm },
  1000. { "kmovd", X86::KMOVDmk },
  1001. { "kmovq", X86::KMOVQrk },
  1002. { "kmovq", X86::KMOVQkr },
  1003. { "kmovq", X86::KMOVQkk },
  1004. { "kmovq", X86::KMOVQkm },
  1005. { "kmovq", X86::KMOVQmk },
  1006. { "kmovw", X86::KMOVWrk },
  1007. { "kmovw", X86::KMOVWkr },
  1008. { "kmovw", X86::KMOVWkk },
  1009. { "kmovw", X86::KMOVWkm },
  1010. { "kmovw", X86::KMOVWmk },
  1011. { "knotb", X86::KNOTBrr },
  1012. { "knotd", X86::KNOTDrr },
  1013. { "knotq", X86::KNOTQrr },
  1014. { "knotw", X86::KNOTWrr },
  1015. { "korb", X86::KORBrr },
  1016. { "kord", X86::KORDrr },
  1017. { "korq", X86::KORQrr },
  1018. { "kortestw", X86::KORTESTWrr },
  1019. { "korw", X86::KORWrr },
  1020. { "kshiftlw", X86::KSHIFTLWri },
  1021. { "kshiftrw", X86::KSHIFTRWri },
  1022. { "kunpckbw", X86::KUNPCKBWrr },
  1023. { "kxnorb", X86::KXNORBrr },
  1024. { "kxnord", X86::KXNORDrr },
  1025. { "kxnorq", X86::KXNORQrr },
  1026. { "kxnorw", X86::KXNORWrr },
  1027. { "kxorb", X86::KXORBrr },
  1028. { "kxord", X86::KXORDrr },
  1029. { "kxorq", X86::KXORQrr },
  1030. { "kxorw", X86::KXORWrr },
  1031. { "lahf", X86::LAHF },
  1032. { "lar", X86::LAR16rr },
  1033. { "lar", X86::LAR16rm },
  1034. { "lar", X86::LAR32rr },
  1035. { "lar", X86::LAR32rm },
  1036. { "lar", X86::LAR64rr },
  1037. { "lar", X86::LAR64rm },
  1038. { "lcall", X86::FARCALL16m },
  1039. { "lcall", X86::FARCALL32m },
  1040. { "lcall", X86::FARCALL64 },
  1041. { "lcall", X86::FARCALL32m },
  1042. { "lcall", X86::FARCALL16m },
  1043. { "lcall", X86::FARCALL32i },
  1044. { "lcall", X86::FARCALL16i },
  1045. { "lcall", X86::FARCALL16i },
  1046. { "lcall", X86::FARCALL32i },
  1047. { "lddqu", X86::LDDQUrm },
  1048. { "ldmxcsr", X86::LDMXCSR },
  1049. { "lds", X86::LDS16rm },
  1050. { "lds", X86::LDS32rm },
  1051. { "lea", X86::LEA16r },
  1052. { "lea", X86::LEA32r },
  1053. { "lea", X86::LEA64_32r },
  1054. { "lea", X86::LEA64r },
  1055. { "leave", X86::LEAVE },
  1056. { "leave", X86::LEAVE64 },
  1057. { "les", X86::LES16rm },
  1058. { "les", X86::LES32rm },
  1059. { "lfence", X86::LFENCE },
  1060. { "lfs", X86::LFS16rm },
  1061. { "lfs", X86::LFS32rm },
  1062. { "lfs", X86::LFS64rm },
  1063. { "lgdt", X86::LGDT16m },
  1064. { "lgdt", X86::LGDT32m },
  1065. { "lgdt", X86::LGDT64m },
  1066. { "lgs", X86::LGS16rm },
  1067. { "lgs", X86::LGS32rm },
  1068. { "lgs", X86::LGS64rm },
  1069. { "lidt", X86::LIDT16m },
  1070. { "lidt", X86::LIDT32m },
  1071. { "lidt", X86::LIDT64m },
  1072. { "ljmp", X86::FARJMP16m },
  1073. { "ljmp", X86::FARJMP32m },
  1074. { "ljmp", X86::FARJMP64 },
  1075. { "ljmp", X86::FARJMP32m },
  1076. { "ljmp", X86::FARJMP16m },
  1077. { "ljmp", X86::FARJMP32i },
  1078. { "ljmp", X86::FARJMP16i },
  1079. { "ljmp", X86::FARJMP16i },
  1080. { "ljmp", X86::FARJMP32i },
  1081. { "lldt", X86::LLDT16r },
  1082. { "lldt", X86::LLDT16m },
  1083. { "lmsw", X86::LMSW16r },
  1084. { "lmsw", X86::LMSW16m },
  1085. { "lock", X86::LOCK_PREFIX },
  1086. { "lods", X86::LODSB },
  1087. { "lods", X86::LODSW },
  1088. { "lods", X86::LODSL },
  1089. { "lods", X86::LODSQ },
  1090. { "lodsb", X86::LODSB },
  1091. { "lodsb", X86::LODSB },
  1092. { "lodsd", X86::LODSL },
  1093. { "lodsd", X86::LODSL },
  1094. { "lodsq", X86::LODSQ },
  1095. { "lodsq", X86::LODSQ },
  1096. { "lodsw", X86::LODSW },
  1097. { "lodsw", X86::LODSW },
  1098. { "loop", X86::LOOP },
  1099. { "loope", X86::LOOPE },
  1100. { "loopne", X86::LOOPNE },
  1101. { "lsl", X86::LSL16rr },
  1102. { "lsl", X86::LSL16rm },
  1103. { "lsl", X86::LSL32rr },
  1104. { "lsl", X86::LSL32rm },
  1105. { "lsl", X86::LSL64rr },
  1106. { "lsl", X86::LSL64rm },
  1107. { "lss", X86::LSS16rm },
  1108. { "lss", X86::LSS32rm },
  1109. { "lss", X86::LSS64rm },
  1110. { "ltr", X86::LTRr },
  1111. { "ltr", X86::LTRm },
  1112. { "lzcnt", X86::LZCNT16rr },
  1113. { "lzcnt", X86::LZCNT16rm },
  1114. { "lzcnt", X86::LZCNT32rr },
  1115. { "lzcnt", X86::LZCNT32rm },
  1116. { "lzcnt", X86::LZCNT64rr },
  1117. { "lzcnt", X86::LZCNT64rm },
  1118. { "maskmovdqu", X86::MASKMOVDQU },
  1119. { "maskmovdqu", X86::MASKMOVDQU64 },
  1120. { "maskmovq", X86::MMX_MASKMOVQ },
  1121. { "maskmovq", X86::MMX_MASKMOVQ64 },
  1122. { "maxpd", X86::MAXPDrr },
  1123. { "maxpd", X86::MAXPDrm },
  1124. { "maxps", X86::MAXPSrr },
  1125. { "maxps", X86::MAXPSrm },
  1126. { "maxsd", X86::MAXSDrr },
  1127. { "maxsd", X86::MAXSDrm },
  1128. { "maxss", X86::MAXSSrr },
  1129. { "maxss", X86::MAXSSrm },
  1130. { "mfence", X86::MFENCE },
  1131. { "minpd", X86::MINPDrr },
  1132. { "minpd", X86::MINPDrm },
  1133. { "minps", X86::MINPSrr },
  1134. { "minps", X86::MINPSrm },
  1135. { "minsd", X86::MINSDrr },
  1136. { "minsd", X86::MINSDrm },
  1137. { "minss", X86::MINSSrr },
  1138. { "minss", X86::MINSSrm },
  1139. { "monitor", X86::MONITORrrr },
  1140. { "monitor", X86::MONITORrrr },
  1141. { "monitor", X86::MONITORrrr },
  1142. { "montmul", X86::MONTMUL },
  1143. { "mov", X86::MOV8o8a },
  1144. { "mov", X86::MOV8o8a_16 },
  1145. { "mov", X86::MOV8rr },
  1146. { "mov", X86::MOV8ri },
  1147. { "mov", X86::MOV8rm },
  1148. { "mov", X86::MOV16o16a },
  1149. { "mov", X86::MOV16o16a_16 },
  1150. { "mov", X86::MOV16rr },
  1151. { "mov", X86::MOV16rs },
  1152. { "mov", X86::MOV16ri },
  1153. { "mov", X86::MOV16rm },
  1154. { "mov", X86::MOV32o32a },
  1155. { "mov", X86::MOV32o32a_16 },
  1156. { "mov", X86::MOV32rr },
  1157. { "mov", X86::MOV32rs },
  1158. { "mov", X86::MOV32rd },
  1159. { "mov", X86::MOV32rc },
  1160. { "mov", X86::MOV32ri },
  1161. { "mov", X86::MOV32rm },
  1162. { "mov", X86::MOV64rr },
  1163. { "mov", X86::MOV64rs },
  1164. { "mov", X86::MOV64rd },
  1165. { "mov", X86::MOV64rc },
  1166. { "mov", X86::MOV64ri32 },
  1167. { "mov", X86::MOV64rm },
  1168. { "mov", X86::MOV16sr },
  1169. { "mov", X86::MOV32sr },
  1170. { "mov", X86::MOV64sr },
  1171. { "mov", X86::MOV16sm },
  1172. { "mov", X86::MOV32sm },
  1173. { "mov", X86::MOV32ms },
  1174. { "mov", X86::MOV64sm },
  1175. { "mov", X86::MOV32dr },
  1176. { "mov", X86::MOV64dr },
  1177. { "mov", X86::MOV32cr },
  1178. { "mov", X86::MOV64cr },
  1179. { "mov", X86::MOV32sm },
  1180. { "mov", X86::MOV64mr },
  1181. { "mov", X86::MOV64ms },
  1182. { "mov", X86::MOV64mi32 },
  1183. { "mov", X86::MOV16ao16 },
  1184. { "mov", X86::MOV16ao16_16 },
  1185. { "mov", X86::MOV16mr },
  1186. { "mov", X86::MOV16ms },
  1187. { "mov", X86::MOV16mi },
  1188. { "mov", X86::MOV32ao32 },
  1189. { "mov", X86::MOV32ao32_16 },
  1190. { "mov", X86::MOV32mr },
  1191. { "mov", X86::MOV32ms },
  1192. { "mov", X86::MOV32mi },
  1193. { "mov", X86::MOV8ao8 },
  1194. { "mov", X86::MOV8ao8_16 },
  1195. { "mov", X86::MOV8mr },
  1196. { "mov", X86::MOV8mi },
  1197. { "movabs", X86::MOV64o8a },
  1198. { "movabs", X86::MOV64o16a },
  1199. { "movabs", X86::MOV64o32a },
  1200. { "movabs", X86::MOV64o64a },
  1201. { "movabs", X86::MOV64ri },
  1202. { "movabs", X86::MOV64ao16 },
  1203. { "movabs", X86::MOV64ao32 },
  1204. { "movabs", X86::MOV64ao64 },
  1205. { "movabs", X86::MOV64ao8 },
  1206. { "movapd", X86::MOVAPDrr },
  1207. { "movapd", X86::MOVAPDrm },
  1208. { "movapd", X86::MOVAPDmr },
  1209. { "movaps", X86::MOVAPSrr },
  1210. { "movaps", X86::MOVAPSrm },
  1211. { "movaps", X86::MOVAPSmr },
  1212. { "movbe", X86::MOVBE16rm },
  1213. { "movbe", X86::MOVBE32rm },
  1214. { "movbe", X86::MOVBE64rm },
  1215. { "movbe", X86::MOVBE16mr },
  1216. { "movbe", X86::MOVBE32mr },
  1217. { "movbe", X86::MOVBE64mr },
  1218. { "movd", X86::MMX_MOVD64grr },
  1219. { "movd", X86::MOVPDI2DIrr },
  1220. { "movd", X86::MMX_MOVD64from64rr },
  1221. { "movd", X86::MMX_MOVD64rr },
  1222. { "movd", X86::MMX_MOVD64to64rr },
  1223. { "movd", X86::MMX_MOVD64rm },
  1224. { "movd", X86::MOVDI2PDIrr },
  1225. { "movd", X86::MOVDI2PDIrm },
  1226. { "movd", X86::MMX_MOVD64mr },
  1227. { "movd", X86::MOVPDI2DImr },
  1228. { "movddup", X86::MOVDDUPrr },
  1229. { "movddup", X86::MOVDDUPrm },
  1230. { "movdq2q", X86::MMX_MOVDQ2Qrr },
  1231. { "movdqa", X86::MOVDQArr },
  1232. { "movdqa", X86::MOVDQArm },
  1233. { "movdqa", X86::MOVDQAmr },
  1234. { "movdqu", X86::MOVDQUrr },
  1235. { "movdqu", X86::MOVDQUrm },
  1236. { "movdqu", X86::MOVDQUmr },
  1237. { "movhlps", X86::MOVHLPSrr },
  1238. { "movhpd", X86::MOVHPDrm },
  1239. { "movhpd", X86::MOVHPDmr },
  1240. { "movhps", X86::MOVHPSrm },
  1241. { "movhps", X86::MOVHPSmr },
  1242. { "movlhps", X86::MOVLHPSrr },
  1243. { "movlpd", X86::MOVLPDrm },
  1244. { "movlpd", X86::MOVLPDmr },
  1245. { "movlps", X86::MOVLPSrm },
  1246. { "movlps", X86::MOVLPSmr },
  1247. { "movmskpd", X86::MOVMSKPDrr },
  1248. { "movmskps", X86::MOVMSKPSrr },
  1249. { "movntdq", X86::MOVNTDQmr },
  1250. { "movntdqa", X86::MOVNTDQArm },
  1251. { "movnti", X86::MOVNTImr },
  1252. { "movnti", X86::MOVNTI_64mr },
  1253. { "movntpd", X86::MOVNTPDmr },
  1254. { "movntps", X86::MOVNTPSmr },
  1255. { "movntq", X86::MMX_MOVNTQmr },
  1256. { "movntsd", X86::MOVNTSD },
  1257. { "movntss", X86::MOVNTSS },
  1258. { "movq", X86::MMX_MOVD64to64rr },
  1259. { "movq", X86::MOVPQIto64rr },
  1260. { "movq", X86::MOVPQIto64rr },
  1261. { "movq", X86::MMX_MOVD64from64rr },
  1262. { "movq", X86::MMX_MOVQ64rr },
  1263. { "movq", X86::MMX_MOVQ64rm },
  1264. { "movq", X86::MOV64toPQIrr },
  1265. { "movq", X86::MOV64toPQIrr },
  1266. { "movq", X86::MOVZPQILo2PQIrr },
  1267. { "movq", X86::MOVQI2PQIrm },
  1268. { "movq", X86::MOV64ri },
  1269. { "movq", X86::MMX_MOVQ64mr },
  1270. { "movq", X86::MOVPQI2QImr },
  1271. { "movq2dq", X86::MMX_MOVQ2DQrr },
  1272. { "movsb", X86::MOVSB },
  1273. { "movsd", X86::MOVSDrr },
  1274. { "movsd", X86::MOVSDrm },
  1275. { "movsd", X86::MOVSL },
  1276. { "movsd", X86::MOVSDmr },
  1277. { "movshdup", X86::MOVSHDUPrr },
  1278. { "movshdup", X86::MOVSHDUPrm },
  1279. { "movsldup", X86::MOVSLDUPrr },
  1280. { "movsldup", X86::MOVSLDUPrm },
  1281. { "movsq", X86::MOVSQ },
  1282. { "movss", X86::MOVSSrr },
  1283. { "movss", X86::MOVSSrm },
  1284. { "movss", X86::MOVSSmr },
  1285. { "movsw", X86::MOVSW },
  1286. { "movsx", X86::MOVSX16rr8 },
  1287. { "movsx", X86::MOVSX32rr8 },
  1288. { "movsx", X86::MOVSX64rr8 },
  1289. { "movsx", X86::MOVSX16rr8 },
  1290. { "movsx", X86::MOVSX32rr16 },
  1291. { "movsx", X86::MOVSX64rr16 },
  1292. { "movsx", X86::MOVSX16rm8 },
  1293. { "movsx", X86::MOVSX32rr8 },
  1294. { "movsx", X86::MOVSX32rr16 },
  1295. { "movsx", X86::MOVSX64rr32 },
  1296. { "movsx", X86::MOVSX32rm16 },
  1297. { "movsx", X86::MOVSX32rm8 },
  1298. { "movsx", X86::MOVSX64rr8 },
  1299. { "movsx", X86::MOVSX64rr16 },
  1300. { "movsx", X86::MOVSX64rm16 },
  1301. { "movsx", X86::MOVSX64rm8 },
  1302. { "movsx", X86::MOVSX16rm8 },
  1303. { "movsxd", X86::MOVSX64rr32 },
  1304. { "movsxd", X86::MOVSX64rm32 },
  1305. { "movupd", X86::MOVUPDrr },
  1306. { "movupd", X86::MOVUPDrm },
  1307. { "movupd", X86::MOVUPDmr },
  1308. { "movups", X86::MOVUPSrr },
  1309. { "movups", X86::MOVUPSrm },
  1310. { "movups", X86::MOVUPSmr },
  1311. { "movzx", X86::MOVZX16rr8 },
  1312. { "movzx", X86::MOVZX32rr8 },
  1313. { "movzx", X86::MOVZX64rr8_Q },
  1314. { "movzx", X86::MOVZX16rr8 },
  1315. { "movzx", X86::MOVZX32rr16 },
  1316. { "movzx", X86::MOVZX64rr16_Q },
  1317. { "movzx", X86::MOVZX16rm8 },
  1318. { "movzx", X86::MOVZX32rr8 },
  1319. { "movzx", X86::MOVZX32rr16 },
  1320. { "movzx", X86::MOVZX32rm16 },
  1321. { "movzx", X86::MOVZX32rm8 },
  1322. { "movzx", X86::MOVZX64rr8_Q },
  1323. { "movzx", X86::MOVZX64rr16_Q },
  1324. { "movzx", X86::MOVZX64rm16_Q },
  1325. { "movzx", X86::MOVZX64rm8_Q },
  1326. { "movzx", X86::MOVZX16rm8 },
  1327. { "mpsadbw", X86::MPSADBWrri },
  1328. { "mpsadbw", X86::MPSADBWrmi },
  1329. { "mul", X86::MUL8r },
  1330. { "mul", X86::MUL16r },
  1331. { "mul", X86::MUL32r },
  1332. { "mul", X86::MUL64r },
  1333. { "mul", X86::MUL16m },
  1334. { "mul", X86::MUL32m },
  1335. { "mul", X86::MUL64m },
  1336. { "mul", X86::MUL8m },
  1337. { "mulpd", X86::MULPDrr },
  1338. { "mulpd", X86::MULPDrm },
  1339. { "mulps", X86::MULPSrr },
  1340. { "mulps", X86::MULPSrm },
  1341. { "mulsd", X86::MULSDrr },
  1342. { "mulsd", X86::MULSDrm },
  1343. { "mulss", X86::MULSSrr },
  1344. { "mulss", X86::MULSSrm },
  1345. { "mulx", X86::MULX32rr },
  1346. { "mulx", X86::MULX32rm },
  1347. { "mulx", X86::MULX64rr },
  1348. { "mulx", X86::MULX64rm },
  1349. { "mwait", X86::MWAITrr },
  1350. { "mwait", X86::MWAITrr },
  1351. { "mwait", X86::MWAITrr },
  1352. { "neg", X86::NEG8r },
  1353. { "neg", X86::NEG16r },
  1354. { "neg", X86::NEG32r },
  1355. { "neg", X86::NEG64r },
  1356. { "neg", X86::NEG16m },
  1357. { "neg", X86::NEG32m },
  1358. { "neg", X86::NEG64m },
  1359. { "neg", X86::NEG8m },
  1360. { "nop", X86::NOOP },
  1361. { "nop", X86::NOOPW },
  1362. { "nop", X86::NOOPL },
  1363. { "not", X86::NOT8r },
  1364. { "not", X86::NOT16r },
  1365. { "not", X86::NOT32r },
  1366. { "not", X86::NOT64r },
  1367. { "not", X86::NOT16m },
  1368. { "not", X86::NOT32m },
  1369. { "not", X86::NOT64m },
  1370. { "not", X86::NOT8m },
  1371. { "or", X86::OR8i8 },
  1372. { "or", X86::OR8rr },
  1373. { "or", X86::OR8ri },
  1374. { "or", X86::OR8rm },
  1375. { "or", X86::OR16i16 },
  1376. { "or", X86::OR16rr },
  1377. { "or", X86::OR16ri8 },
  1378. { "or", X86::OR16ri },
  1379. { "or", X86::OR16rm },
  1380. { "or", X86::OR32i32 },
  1381. { "or", X86::OR32rr },
  1382. { "or", X86::OR32ri8 },
  1383. { "or", X86::OR32ri },
  1384. { "or", X86::OR32rm },
  1385. { "or", X86::OR64i32 },
  1386. { "or", X86::OR64rr },
  1387. { "or", X86::OR64ri8 },
  1388. { "or", X86::OR64ri32 },
  1389. { "or", X86::OR64rm },
  1390. { "or", X86::OR16mr },
  1391. { "or", X86::OR16mi8 },
  1392. { "or", X86::OR16mi },
  1393. { "or", X86::OR32mr },
  1394. { "or", X86::OR32mi8 },
  1395. { "or", X86::OR32mi },
  1396. { "or", X86::OR64mr },
  1397. { "or", X86::OR64mi8 },
  1398. { "or", X86::OR64mi32 },
  1399. { "or", X86::OR8mr },
  1400. { "or", X86::OR8mi },
  1401. { "orpd", X86::ORPDrr },
  1402. { "orpd", X86::ORPDrm },
  1403. { "orps", X86::ORPSrr },
  1404. { "orps", X86::ORPSrm },
  1405. { "out", X86::OUT8rr },
  1406. { "out", X86::OUT16rr },
  1407. { "out", X86::OUT32rr },
  1408. { "out", X86::OUT8ir },
  1409. { "out", X86::OUT16ir },
  1410. { "out", X86::OUT32ir },
  1411. { "outb", X86::OUT8rr },
  1412. { "outb", X86::OUT8ir },
  1413. { "outl", X86::OUT32rr },
  1414. { "outl", X86::OUT32ir },
  1415. { "outsb", X86::OUTSB },
  1416. { "outsd", X86::OUTSL },
  1417. { "outsw", X86::OUTSW },
  1418. { "outw", X86::OUT16rr },
  1419. { "outw", X86::OUT16ir },
  1420. { "pabsb", X86::MMX_PABSBrr64 },
  1421. { "pabsb", X86::MMX_PABSBrm64 },
  1422. { "pabsb", X86::PABSBrr128 },
  1423. { "pabsb", X86::PABSBrm128 },
  1424. { "pabsd", X86::MMX_PABSDrr64 },
  1425. { "pabsd", X86::MMX_PABSDrm64 },
  1426. { "pabsd", X86::PABSDrr128 },
  1427. { "pabsd", X86::PABSDrm128 },
  1428. { "pabsw", X86::MMX_PABSWrr64 },
  1429. { "pabsw", X86::MMX_PABSWrm64 },
  1430. { "pabsw", X86::PABSWrr128 },
  1431. { "pabsw", X86::PABSWrm128 },
  1432. { "packssdw", X86::MMX_PACKSSDWirr },
  1433. { "packssdw", X86::MMX_PACKSSDWirm },
  1434. { "packssdw", X86::PACKSSDWrr },
  1435. { "packssdw", X86::PACKSSDWrm },
  1436. { "packsswb", X86::MMX_PACKSSWBirr },
  1437. { "packsswb", X86::MMX_PACKSSWBirm },
  1438. { "packsswb", X86::PACKSSWBrr },
  1439. { "packsswb", X86::PACKSSWBrm },
  1440. { "packusdw", X86::PACKUSDWrr },
  1441. { "packusdw", X86::PACKUSDWrm },
  1442. { "packuswb", X86::MMX_PACKUSWBirr },
  1443. { "packuswb", X86::MMX_PACKUSWBirm },
  1444. { "packuswb", X86::PACKUSWBrr },
  1445. { "packuswb", X86::PACKUSWBrm },
  1446. { "paddb", X86::MMX_PADDBirr },
  1447. { "paddb", X86::MMX_PADDBirm },
  1448. { "paddb", X86::PADDBrr },
  1449. { "paddb", X86::PADDBrm },
  1450. { "paddd", X86::MMX_PADDDirr },
  1451. { "paddd", X86::MMX_PADDDirm },
  1452. { "paddd", X86::PADDDrr },
  1453. { "paddd", X86::PADDDrm },
  1454. { "paddq", X86::MMX_PADDQirr },
  1455. { "paddq", X86::MMX_PADDQirm },
  1456. { "paddq", X86::PADDQrr },
  1457. { "paddq", X86::PADDQrm },
  1458. { "paddsb", X86::MMX_PADDSBirr },
  1459. { "paddsb", X86::MMX_PADDSBirm },
  1460. { "paddsb", X86::PADDSBrr },
  1461. { "paddsb", X86::PADDSBrm },
  1462. { "paddsw", X86::MMX_PADDSWirr },
  1463. { "paddsw", X86::MMX_PADDSWirm },
  1464. { "paddsw", X86::PADDSWrr },
  1465. { "paddsw", X86::PADDSWrm },
  1466. { "paddusb", X86::MMX_PADDUSBirr },
  1467. { "paddusb", X86::MMX_PADDUSBirm },
  1468. { "paddusb", X86::PADDUSBrr },
  1469. { "paddusb", X86::PADDUSBrm },
  1470. { "paddusw", X86::MMX_PADDUSWirr },
  1471. { "paddusw", X86::MMX_PADDUSWirm },
  1472. { "paddusw", X86::PADDUSWrr },
  1473. { "paddusw", X86::PADDUSWrm },
  1474. { "paddw", X86::MMX_PADDWirr },
  1475. { "paddw", X86::MMX_PADDWirm },
  1476. { "paddw", X86::PADDWrr },
  1477. { "paddw", X86::PADDWrm },
  1478. { "palignr", X86::MMX_PALIGNR64irr },
  1479. { "palignr", X86::MMX_PALIGNR64irm },
  1480. { "palignr", X86::PALIGNR128rr },
  1481. { "palignr", X86::PALIGNR128rm },
  1482. { "pand", X86::MMX_PANDirr },
  1483. { "pand", X86::MMX_PANDirm },
  1484. { "pand", X86::PANDrr },
  1485. { "pand", X86::PANDrm },
  1486. { "pandn", X86::MMX_PANDNirr },
  1487. { "pandn", X86::MMX_PANDNirm },
  1488. { "pandn", X86::PANDNrr },
  1489. { "pandn", X86::PANDNrm },
  1490. { "pause", X86::PAUSE },
  1491. { "pavgb", X86::MMX_PAVGBirr },
  1492. { "pavgb", X86::MMX_PAVGBirm },
  1493. { "pavgb", X86::PAVGBrr },
  1494. { "pavgb", X86::PAVGBrm },
  1495. { "pavgusb", X86::PAVGUSBrr },
  1496. { "pavgusb", X86::PAVGUSBrm },
  1497. { "pavgw", X86::MMX_PAVGWirr },
  1498. { "pavgw", X86::MMX_PAVGWirm },
  1499. { "pavgw", X86::PAVGWrr },
  1500. { "pavgw", X86::PAVGWrm },
  1501. { "pblendvb", X86::PBLENDVBrr0 },
  1502. { "pblendvb", X86::PBLENDVBrm0 },
  1503. { "pblendvb", X86::PBLENDVBrr0 },
  1504. { "pblendvb", X86::PBLENDVBrm0 },
  1505. { "pblendw", X86::PBLENDWrri },
  1506. { "pblendw", X86::PBLENDWrmi },
  1507. { "pclmulhqhqdq", X86::PCLMULQDQrr },
  1508. { "pclmulhqhqdq", X86::PCLMULQDQrm },
  1509. { "pclmulhqlqdq", X86::PCLMULQDQrr },
  1510. { "pclmulhqlqdq", X86::PCLMULQDQrm },
  1511. { "pclmullqhqdq", X86::PCLMULQDQrr },
  1512. { "pclmullqhqdq", X86::PCLMULQDQrm },
  1513. { "pclmullqlqdq", X86::PCLMULQDQrr },
  1514. { "pclmullqlqdq", X86::PCLMULQDQrm },
  1515. { "pclmulqdq", X86::PCLMULQDQrr },
  1516. { "pclmulqdq", X86::PCLMULQDQrm },
  1517. { "pcmpeqb", X86::MMX_PCMPEQBirr },
  1518. { "pcmpeqb", X86::MMX_PCMPEQBirm },
  1519. { "pcmpeqb", X86::PCMPEQBrr },
  1520. { "pcmpeqb", X86::PCMPEQBrm },
  1521. { "pcmpeqd", X86::MMX_PCMPEQDirr },
  1522. { "pcmpeqd", X86::MMX_PCMPEQDirm },
  1523. { "pcmpeqd", X86::PCMPEQDrr },
  1524. { "pcmpeqd", X86::PCMPEQDrm },
  1525. { "pcmpeqq", X86::PCMPEQQrr },
  1526. { "pcmpeqq", X86::PCMPEQQrm },
  1527. { "pcmpeqw", X86::MMX_PCMPEQWirr },
  1528. { "pcmpeqw", X86::MMX_PCMPEQWirm },
  1529. { "pcmpeqw", X86::PCMPEQWrr },
  1530. { "pcmpeqw", X86::PCMPEQWrm },
  1531. { "pcmpestri", X86::PCMPESTRIrr },
  1532. { "pcmpestri", X86::PCMPESTRIrm },
  1533. { "pcmpestrm", X86::PCMPESTRM128rr },
  1534. { "pcmpestrm", X86::PCMPESTRM128rm },
  1535. { "pcmpgtb", X86::MMX_PCMPGTBirr },
  1536. { "pcmpgtb", X86::MMX_PCMPGTBirm },
  1537. { "pcmpgtb", X86::PCMPGTBrr },
  1538. { "pcmpgtb", X86::PCMPGTBrm },
  1539. { "pcmpgtd", X86::MMX_PCMPGTDirr },
  1540. { "pcmpgtd", X86::MMX_PCMPGTDirm },
  1541. { "pcmpgtd", X86::PCMPGTDrr },
  1542. { "pcmpgtd", X86::PCMPGTDrm },
  1543. { "pcmpgtq", X86::PCMPGTQrr },
  1544. { "pcmpgtq", X86::PCMPGTQrm },
  1545. { "pcmpgtw", X86::MMX_PCMPGTWirr },
  1546. { "pcmpgtw", X86::MMX_PCMPGTWirm },
  1547. { "pcmpgtw", X86::PCMPGTWrr },
  1548. { "pcmpgtw", X86::PCMPGTWrm },
  1549. { "pcmpistri", X86::PCMPISTRIrr },
  1550. { "pcmpistri", X86::PCMPISTRIrm },
  1551. { "pcmpistrm", X86::PCMPISTRM128rr },
  1552. { "pcmpistrm", X86::PCMPISTRM128rm },
  1553. { "pdep", X86::PDEP32rr },
  1554. { "pdep", X86::PDEP32rm },
  1555. { "pdep", X86::PDEP64rr },
  1556. { "pdep", X86::PDEP64rm },
  1557. { "pext", X86::PEXT32rr },
  1558. { "pext", X86::PEXT32rm },
  1559. { "pext", X86::PEXT64rr },
  1560. { "pext", X86::PEXT64rm },
  1561. { "pextrb", X86::PEXTRBrr },
  1562. { "pextrb", X86::PEXTRBmr },
  1563. { "pextrd", X86::PEXTRDrr },
  1564. { "pextrd", X86::PEXTRDmr },
  1565. { "pextrq", X86::PEXTRQrr },
  1566. { "pextrq", X86::PEXTRQmr },
  1567. { "pextrw", X86::MMX_PEXTRWirri },
  1568. { "pextrw", X86::PEXTRWri },
  1569. { "pextrw", X86::PEXTRWmr },
  1570. { "pf2id", X86::PF2IDrr },
  1571. { "pf2id", X86::PF2IDrm },
  1572. { "pf2iw", X86::PF2IWrr },
  1573. { "pf2iw", X86::PF2IWrm },
  1574. { "pfacc", X86::PFACCrr },
  1575. { "pfacc", X86::PFACCrm },
  1576. { "pfadd", X86::PFADDrr },
  1577. { "pfadd", X86::PFADDrm },
  1578. { "pfcmpeq", X86::PFCMPEQrr },
  1579. { "pfcmpeq", X86::PFCMPEQrm },
  1580. { "pfcmpge", X86::PFCMPGErr },
  1581. { "pfcmpge", X86::PFCMPGErm },
  1582. { "pfcmpgt", X86::PFCMPGTrr },
  1583. { "pfcmpgt", X86::PFCMPGTrm },
  1584. { "pfmax", X86::PFMAXrr },
  1585. { "pfmax", X86::PFMAXrm },
  1586. { "pfmin", X86::PFMINrr },
  1587. { "pfmin", X86::PFMINrm },
  1588. { "pfmul", X86::PFMULrr },
  1589. { "pfmul", X86::PFMULrm },
  1590. { "pfnacc", X86::PFNACCrr },
  1591. { "pfnacc", X86::PFNACCrm },
  1592. { "pfpnacc", X86::PFPNACCrr },
  1593. { "pfpnacc", X86::PFPNACCrm },
  1594. { "pfrcp", X86::PFRCPrr },
  1595. { "pfrcp", X86::PFRCPrm },
  1596. { "pfrcpit1", X86::PFRCPIT1rr },
  1597. { "pfrcpit1", X86::PFRCPIT1rm },
  1598. { "pfrcpit2", X86::PFRCPIT2rr },
  1599. { "pfrcpit2", X86::PFRCPIT2rm },
  1600. { "pfrsqit1", X86::PFRSQIT1rr },
  1601. { "pfrsqit1", X86::PFRSQIT1rm },
  1602. { "pfrsqrt", X86::PFRSQRTrr },
  1603. { "pfrsqrt", X86::PFRSQRTrm },
  1604. { "pfsub", X86::PFSUBrr },
  1605. { "pfsub", X86::PFSUBrm },
  1606. { "pfsubr", X86::PFSUBRrr },
  1607. { "pfsubr", X86::PFSUBRrm },
  1608. { "phaddd", X86::MMX_PHADDrr64 },
  1609. { "phaddd", X86::MMX_PHADDrm64 },
  1610. { "phaddd", X86::PHADDDrr },
  1611. { "phaddd", X86::PHADDDrm },
  1612. { "phaddsw", X86::MMX_PHADDSWrr64 },
  1613. { "phaddsw", X86::MMX_PHADDSWrm64 },
  1614. { "phaddsw", X86::PHADDSWrr128 },
  1615. { "phaddsw", X86::PHADDSWrm128 },
  1616. { "phaddw", X86::MMX_PHADDWrr64 },
  1617. { "phaddw", X86::MMX_PHADDWrm64 },
  1618. { "phaddw", X86::PHADDWrr },
  1619. { "phaddw", X86::PHADDWrm },
  1620. { "phminposuw", X86::PHMINPOSUWrr128 },
  1621. { "phminposuw", X86::PHMINPOSUWrm128 },
  1622. { "phsubd", X86::MMX_PHSUBDrr64 },
  1623. { "phsubd", X86::MMX_PHSUBDrm64 },
  1624. { "phsubd", X86::PHSUBDrr },
  1625. { "phsubd", X86::PHSUBDrm },
  1626. { "phsubsw", X86::MMX_PHSUBSWrr64 },
  1627. { "phsubsw", X86::MMX_PHSUBSWrm64 },
  1628. { "phsubsw", X86::PHSUBSWrr128 },
  1629. { "phsubsw", X86::PHSUBSWrm128 },
  1630. { "phsubw", X86::MMX_PHSUBWrr64 },
  1631. { "phsubw", X86::MMX_PHSUBWrm64 },
  1632. { "phsubw", X86::PHSUBWrr },
  1633. { "phsubw", X86::PHSUBWrm },
  1634. { "pi2fd", X86::PI2FDrr },
  1635. { "pi2fd", X86::PI2FDrm },
  1636. { "pi2fw", X86::PI2FWrr },
  1637. { "pi2fw", X86::PI2FWrm },
  1638. { "pinsrb", X86::PINSRBrr },
  1639. { "pinsrb", X86::PINSRBrm },
  1640. { "pinsrd", X86::PINSRDrr },
  1641. { "pinsrd", X86::PINSRDrm },
  1642. { "pinsrq", X86::PINSRQrr },
  1643. { "pinsrq", X86::PINSRQrm },
  1644. { "pinsrw", X86::MMX_PINSRWirri },
  1645. { "pinsrw", X86::MMX_PINSRWirmi },
  1646. { "pinsrw", X86::PINSRWrri },
  1647. { "pinsrw", X86::PINSRWrmi },
  1648. { "pmaddubsw", X86::MMX_PMADDUBSWrr64 },
  1649. { "pmaddubsw", X86::MMX_PMADDUBSWrm64 },
  1650. { "pmaddubsw", X86::PMADDUBSWrr128 },
  1651. { "pmaddubsw", X86::PMADDUBSWrm128 },
  1652. { "pmaddwd", X86::MMX_PMADDWDirr },
  1653. { "pmaddwd", X86::MMX_PMADDWDirm },
  1654. { "pmaddwd", X86::PMADDWDrr },
  1655. { "pmaddwd", X86::PMADDWDrm },
  1656. { "pmaxsb", X86::PMAXSBrr },
  1657. { "pmaxsb", X86::PMAXSBrm },
  1658. { "pmaxsd", X86::PMAXSDrr },
  1659. { "pmaxsd", X86::PMAXSDrm },
  1660. { "pmaxsw", X86::MMX_PMAXSWirr },
  1661. { "pmaxsw", X86::MMX_PMAXSWirm },
  1662. { "pmaxsw", X86::PMAXSWrr },
  1663. { "pmaxsw", X86::PMAXSWrm },
  1664. { "pmaxub", X86::MMX_PMAXUBirr },
  1665. { "pmaxub", X86::MMX_PMAXUBirm },
  1666. { "pmaxub", X86::PMAXUBrr },
  1667. { "pmaxub", X86::PMAXUBrm },
  1668. { "pmaxud", X86::PMAXUDrr },
  1669. { "pmaxud", X86::PMAXUDrm },
  1670. { "pmaxuw", X86::PMAXUWrr },
  1671. { "pmaxuw", X86::PMAXUWrm },
  1672. { "pminsb", X86::PMINSBrr },
  1673. { "pminsb", X86::PMINSBrm },
  1674. { "pminsd", X86::PMINSDrr },
  1675. { "pminsd", X86::PMINSDrm },
  1676. { "pminsw", X86::MMX_PMINSWirr },
  1677. { "pminsw", X86::MMX_PMINSWirm },
  1678. { "pminsw", X86::PMINSWrr },
  1679. { "pminsw", X86::PMINSWrm },
  1680. { "pminub", X86::MMX_PMINUBirr },
  1681. { "pminub", X86::MMX_PMINUBirm },
  1682. { "pminub", X86::PMINUBrr },
  1683. { "pminub", X86::PMINUBrm },
  1684. { "pminud", X86::PMINUDrr },
  1685. { "pminud", X86::PMINUDrm },
  1686. { "pminuw", X86::PMINUWrr },
  1687. { "pminuw", X86::PMINUWrm },
  1688. { "pmovmskb", X86::MMX_PMOVMSKBrr },
  1689. { "pmovmskb", X86::PMOVMSKBrr },
  1690. { "pmovsxbd", X86::PMOVSXBDrr },
  1691. { "pmovsxbd", X86::PMOVSXBDrm },
  1692. { "pmovsxbq", X86::PMOVSXBQrr },
  1693. { "pmovsxbq", X86::PMOVSXBQrm },
  1694. { "pmovsxbw", X86::PMOVSXBWrr },
  1695. { "pmovsxbw", X86::PMOVSXBWrm },
  1696. { "pmovsxdq", X86::PMOVSXDQrr },
  1697. { "pmovsxdq", X86::PMOVSXDQrm },
  1698. { "pmovsxwd", X86::PMOVSXWDrr },
  1699. { "pmovsxwd", X86::PMOVSXWDrm },
  1700. { "pmovsxwq", X86::PMOVSXWQrr },
  1701. { "pmovsxwq", X86::PMOVSXWQrm },
  1702. { "pmovzxbd", X86::PMOVZXBDrr },
  1703. { "pmovzxbd", X86::PMOVZXBDrm },
  1704. { "pmovzxbq", X86::PMOVZXBQrr },
  1705. { "pmovzxbq", X86::PMOVZXBQrm },
  1706. { "pmovzxbw", X86::PMOVZXBWrr },
  1707. { "pmovzxbw", X86::PMOVZXBWrm },
  1708. { "pmovzxdq", X86::PMOVZXDQrr },
  1709. { "pmovzxdq", X86::PMOVZXDQrm },
  1710. { "pmovzxwd", X86::PMOVZXWDrr },
  1711. { "pmovzxwd", X86::PMOVZXWDrm },
  1712. { "pmovzxwq", X86::PMOVZXWQrr },
  1713. { "pmovzxwq", X86::PMOVZXWQrm },
  1714. { "pmuldq", X86::PMULDQrr },
  1715. { "pmuldq", X86::PMULDQrm },
  1716. { "pmulhrsw", X86::MMX_PMULHRSWrr64 },
  1717. { "pmulhrsw", X86::MMX_PMULHRSWrm64 },
  1718. { "pmulhrsw", X86::PMULHRSWrr128 },
  1719. { "pmulhrsw", X86::PMULHRSWrm128 },
  1720. { "pmulhrw", X86::PMULHRWrr },
  1721. { "pmulhrw", X86::PMULHRWrm },
  1722. { "pmulhuw", X86::MMX_PMULHUWirr },
  1723. { "pmulhuw", X86::MMX_PMULHUWirm },
  1724. { "pmulhuw", X86::PMULHUWrr },
  1725. { "pmulhuw", X86::PMULHUWrm },
  1726. { "pmulhw", X86::MMX_PMULHWirr },
  1727. { "pmulhw", X86::MMX_PMULHWirm },
  1728. { "pmulhw", X86::PMULHWrr },
  1729. { "pmulhw", X86::PMULHWrm },
  1730. { "pmulld", X86::PMULLDrr },
  1731. { "pmulld", X86::PMULLDrm },
  1732. { "pmullw", X86::MMX_PMULLWirr },
  1733. { "pmullw", X86::MMX_PMULLWirm },
  1734. { "pmullw", X86::PMULLWrr },
  1735. { "pmullw", X86::PMULLWrm },
  1736. { "pmuludq", X86::MMX_PMULUDQirr },
  1737. { "pmuludq", X86::MMX_PMULUDQirm },
  1738. { "pmuludq", X86::PMULUDQrr },
  1739. { "pmuludq", X86::PMULUDQrm },
  1740. { "pop", X86::POP16r },
  1741. { "pop", X86::POP16rmr },
  1742. { "pop", X86::POP32r },
  1743. { "pop", X86::POP32rmr },
  1744. { "pop", X86::POP64r },
  1745. { "pop", X86::POP64rmr },
  1746. { "pop", X86::POPDS16 },
  1747. { "pop", X86::POPDS32 },
  1748. { "pop", X86::POPSS16 },
  1749. { "pop", X86::POPSS32 },
  1750. { "pop", X86::POPES16 },
  1751. { "pop", X86::POPES32 },
  1752. { "pop", X86::POPFS32 },
  1753. { "pop", X86::POPFS64 },
  1754. { "pop", X86::POPFS16 },
  1755. { "pop", X86::POPGS32 },
  1756. { "pop", X86::POPGS64 },
  1757. { "pop", X86::POPGS16 },
  1758. { "pop", X86::POP16rmm },
  1759. { "pop", X86::POP32rmm },
  1760. { "pop", X86::POP64rmm },
  1761. { "popal", X86::POPA32 },
  1762. { "popaw", X86::POPA16 },
  1763. { "popcnt", X86::POPCNT16rr },
  1764. { "popcnt", X86::POPCNT16rm },
  1765. { "popcnt", X86::POPCNT32rr },
  1766. { "popcnt", X86::POPCNT32rm },
  1767. { "popcnt", X86::POPCNT64rr },
  1768. { "popcnt", X86::POPCNT64rm },
  1769. { "popf", X86::POPF16 },
  1770. { "popfd", X86::POPF32 },
  1771. { "popfq", X86::POPF64 },
  1772. { "por", X86::MMX_PORirr },
  1773. { "por", X86::MMX_PORirm },
  1774. { "por", X86::PORrr },
  1775. { "por", X86::PORrm },
  1776. { "prefetch", X86::PREFETCH },
  1777. { "prefetchnta", X86::PREFETCHNTA },
  1778. { "prefetcht0", X86::PREFETCHT0 },
  1779. { "prefetcht1", X86::PREFETCHT1 },
  1780. { "prefetcht2", X86::PREFETCHT2 },
  1781. { "prefetchw", X86::PREFETCHW },
  1782. { "psadbw", X86::MMX_PSADBWirr },
  1783. { "psadbw", X86::MMX_PSADBWirm },
  1784. { "psadbw", X86::PSADBWrr },
  1785. { "psadbw", X86::PSADBWrm },
  1786. { "pshufb", X86::MMX_PSHUFBrr64 },
  1787. { "pshufb", X86::MMX_PSHUFBrm64 },
  1788. { "pshufb", X86::PSHUFBrr },
  1789. { "pshufb", X86::PSHUFBrm },
  1790. { "pshufd", X86::PSHUFDri },
  1791. { "pshufd", X86::PSHUFDmi },
  1792. { "pshufhw", X86::PSHUFHWri },
  1793. { "pshufhw", X86::PSHUFHWmi },
  1794. { "pshuflw", X86::PSHUFLWri },
  1795. { "pshuflw", X86::PSHUFLWmi },
  1796. { "pshufw", X86::MMX_PSHUFWri },
  1797. { "pshufw", X86::MMX_PSHUFWmi },
  1798. { "psignb", X86::MMX_PSIGNBrr64 },
  1799. { "psignb", X86::MMX_PSIGNBrm64 },
  1800. { "psignb", X86::PSIGNBrr },
  1801. { "psignb", X86::PSIGNBrm },
  1802. { "psignd", X86::MMX_PSIGNDrr64 },
  1803. { "psignd", X86::MMX_PSIGNDrm64 },
  1804. { "psignd", X86::PSIGNDrr },
  1805. { "psignd", X86::PSIGNDrm },
  1806. { "psignw", X86::MMX_PSIGNWrr64 },
  1807. { "psignw", X86::MMX_PSIGNWrm64 },
  1808. { "psignw", X86::PSIGNWrr },
  1809. { "psignw", X86::PSIGNWrm },
  1810. { "pslld", X86::MMX_PSLLDrr },
  1811. { "pslld", X86::MMX_PSLLDri },
  1812. { "pslld", X86::MMX_PSLLDrm },
  1813. { "pslld", X86::PSLLDrr },
  1814. { "pslld", X86::PSLLDri },
  1815. { "pslld", X86::PSLLDrm },
  1816. { "pslldq", X86::PSLLDQri },
  1817. { "psllq", X86::MMX_PSLLQrr },
  1818. { "psllq", X86::MMX_PSLLQri },
  1819. { "psllq", X86::MMX_PSLLQrm },
  1820. { "psllq", X86::PSLLQrr },
  1821. { "psllq", X86::PSLLQri },
  1822. { "psllq", X86::PSLLQrm },
  1823. { "psllw", X86::MMX_PSLLWrr },
  1824. { "psllw", X86::MMX_PSLLWri },
  1825. { "psllw", X86::MMX_PSLLWrm },
  1826. { "psllw", X86::PSLLWrr },
  1827. { "psllw", X86::PSLLWri },
  1828. { "psllw", X86::PSLLWrm },
  1829. { "psrad", X86::MMX_PSRADrr },
  1830. { "psrad", X86::MMX_PSRADri },
  1831. { "psrad", X86::MMX_PSRADrm },
  1832. { "psrad", X86::PSRADrr },
  1833. { "psrad", X86::PSRADri },
  1834. { "psrad", X86::PSRADrm },
  1835. { "psraw", X86::MMX_PSRAWrr },
  1836. { "psraw", X86::MMX_PSRAWri },
  1837. { "psraw", X86::MMX_PSRAWrm },
  1838. { "psraw", X86::PSRAWrr },
  1839. { "psraw", X86::PSRAWri },
  1840. { "psraw", X86::PSRAWrm },
  1841. { "psrld", X86::MMX_PSRLDrr },
  1842. { "psrld", X86::MMX_PSRLDri },
  1843. { "psrld", X86::MMX_PSRLDrm },
  1844. { "psrld", X86::PSRLDrr },
  1845. { "psrld", X86::PSRLDri },
  1846. { "psrld", X86::PSRLDrm },
  1847. { "psrldq", X86::PSRLDQri },
  1848. { "psrlq", X86::MMX_PSRLQrr },
  1849. { "psrlq", X86::MMX_PSRLQri },
  1850. { "psrlq", X86::MMX_PSRLQrm },
  1851. { "psrlq", X86::PSRLQrr },
  1852. { "psrlq", X86::PSRLQri },
  1853. { "psrlq", X86::PSRLQrm },
  1854. { "psrlw", X86::MMX_PSRLWrr },
  1855. { "psrlw", X86::MMX_PSRLWri },
  1856. { "psrlw", X86::MMX_PSRLWrm },
  1857. { "psrlw", X86::PSRLWrr },
  1858. { "psrlw", X86::PSRLWri },
  1859. { "psrlw", X86::PSRLWrm },
  1860. { "psubb", X86::MMX_PSUBBirr },
  1861. { "psubb", X86::MMX_PSUBBirm },
  1862. { "psubb", X86::PSUBBrr },
  1863. { "psubb", X86::PSUBBrm },
  1864. { "psubd", X86::MMX_PSUBDirr },
  1865. { "psubd", X86::MMX_PSUBDirm },
  1866. { "psubd", X86::PSUBDrr },
  1867. { "psubd", X86::PSUBDrm },
  1868. { "psubq", X86::MMX_PSUBQirr },
  1869. { "psubq", X86::MMX_PSUBQirm },
  1870. { "psubq", X86::PSUBQrr },
  1871. { "psubq", X86::PSUBQrm },
  1872. { "psubsb", X86::MMX_PSUBSBirr },
  1873. { "psubsb", X86::MMX_PSUBSBirm },
  1874. { "psubsb", X86::PSUBSBrr },
  1875. { "psubsb", X86::PSUBSBrm },
  1876. { "psubsw", X86::MMX_PSUBSWirr },
  1877. { "psubsw", X86::MMX_PSUBSWirm },
  1878. { "psubsw", X86::PSUBSWrr },
  1879. { "psubsw", X86::PSUBSWrm },
  1880. { "psubusb", X86::MMX_PSUBUSBirr },
  1881. { "psubusb", X86::MMX_PSUBUSBirm },
  1882. { "psubusb", X86::PSUBUSBrr },
  1883. { "psubusb", X86::PSUBUSBrm },
  1884. { "psubusw", X86::MMX_PSUBUSWirr },
  1885. { "psubusw", X86::MMX_PSUBUSWirm },
  1886. { "psubusw", X86::PSUBUSWrr },
  1887. { "psubusw", X86::PSUBUSWrm },
  1888. { "psubw", X86::MMX_PSUBWirr },
  1889. { "psubw", X86::MMX_PSUBWirm },
  1890. { "psubw", X86::PSUBWrr },
  1891. { "psubw", X86::PSUBWrm },
  1892. { "pswapd", X86::PSWAPDrr },
  1893. { "pswapd", X86::PSWAPDrm },
  1894. { "ptest", X86::PTESTrr },
  1895. { "ptest", X86::PTESTrm },
  1896. { "punpckhbw", X86::MMX_PUNPCKHBWirr },
  1897. { "punpckhbw", X86::MMX_PUNPCKHBWirm },
  1898. { "punpckhbw", X86::PUNPCKHBWrr },
  1899. { "punpckhbw", X86::PUNPCKHBWrm },
  1900. { "punpckhdq", X86::MMX_PUNPCKHDQirr },
  1901. { "punpckhdq", X86::MMX_PUNPCKHDQirm },
  1902. { "punpckhdq", X86::PUNPCKHDQrr },
  1903. { "punpckhdq", X86::PUNPCKHDQrm },
  1904. { "punpckhqdq", X86::PUNPCKHQDQrr },
  1905. { "punpckhqdq", X86::PUNPCKHQDQrm },
  1906. { "punpckhwd", X86::MMX_PUNPCKHWDirr },
  1907. { "punpckhwd", X86::MMX_PUNPCKHWDirm },
  1908. { "punpckhwd", X86::PUNPCKHWDrr },
  1909. { "punpckhwd", X86::PUNPCKHWDrm },
  1910. { "punpcklbw", X86::MMX_PUNPCKLBWirr },
  1911. { "punpcklbw", X86::MMX_PUNPCKLBWirm },
  1912. { "punpcklbw", X86::PUNPCKLBWrr },
  1913. { "punpcklbw", X86::PUNPCKLBWrm },
  1914. { "punpckldq", X86::MMX_PUNPCKLDQirr },
  1915. { "punpckldq", X86::MMX_PUNPCKLDQirm },
  1916. { "punpckldq", X86::PUNPCKLDQrr },
  1917. { "punpckldq", X86::PUNPCKLDQrm },
  1918. { "punpcklqdq", X86::PUNPCKLQDQrr },
  1919. { "punpcklqdq", X86::PUNPCKLQDQrm },
  1920. { "punpcklwd", X86::MMX_PUNPCKLWDirr },
  1921. { "punpcklwd", X86::MMX_PUNPCKLWDirm },
  1922. { "punpcklwd", X86::PUNPCKLWDrr },
  1923. { "punpcklwd", X86::PUNPCKLWDrm },
  1924. { "push", X86::PUSH16r },
  1925. { "push", X86::PUSH16rmr },
  1926. { "push", X86::PUSH32r },
  1927. { "push", X86::PUSH32rmr },
  1928. { "push", X86::PUSH64r },
  1929. { "push", X86::PUSH64rmr },
  1930. { "push", X86::PUSHCS16 },
  1931. { "push", X86::PUSHCS32 },
  1932. { "push", X86::PUSHDS16 },
  1933. { "push", X86::PUSHDS32 },
  1934. { "push", X86::PUSHSS16 },
  1935. { "push", X86::PUSHSS32 },
  1936. { "push", X86::PUSHES16 },
  1937. { "push", X86::PUSHES32 },
  1938. { "push", X86::PUSHFS32 },
  1939. { "push", X86::PUSHFS64 },
  1940. { "push", X86::PUSHFS16 },
  1941. { "push", X86::PUSHGS32 },
  1942. { "push", X86::PUSHGS64 },
  1943. { "push", X86::PUSHGS16 },
  1944. { "push", X86::PUSH64i8 },
  1945. { "push", X86::PUSH16i8 },
  1946. { "push", X86::PUSH32i8 },
  1947. { "push", X86::PUSH64i32 },
  1948. { "push", X86::PUSH64i16 },
  1949. { "push", X86::PUSHi16 },
  1950. { "push", X86::PUSHi32 },
  1951. { "push", X86::PUSH16rmm },
  1952. { "push", X86::PUSH32rmm },
  1953. { "push", X86::PUSH64rmm },
  1954. { "pushal", X86::PUSHA32 },
  1955. { "pushaw", X86::PUSHA16 },
  1956. { "pushf", X86::PUSHF16 },
  1957. { "pushfd", X86::PUSHF32 },
  1958. { "pushfq", X86::PUSHF64 },
  1959. { "pxor", X86::MMX_PXORirr },
  1960. { "pxor", X86::MMX_PXORirm },
  1961. { "pxor", X86::PXORrr },
  1962. { "pxor", X86::PXORrm },
  1963. { "rcl", X86::RCL8r1 },
  1964. { "rcl", X86::RCL16r1 },
  1965. { "rcl", X86::RCL32r1 },
  1966. { "rcl", X86::RCL64r1 },
  1967. { "rcl", X86::RCL16m1 },
  1968. { "rcl", X86::RCL32m1 },
  1969. { "rcl", X86::RCL64m1 },
  1970. { "rcl", X86::RCL8m1 },
  1971. { "rcl", X86::RCL8rCL },
  1972. { "rcl", X86::RCL8ri },
  1973. { "rcl", X86::RCL16rCL },
  1974. { "rcl", X86::RCL16ri },
  1975. { "rcl", X86::RCL32rCL },
  1976. { "rcl", X86::RCL32ri },
  1977. { "rcl", X86::RCL64rCL },
  1978. { "rcl", X86::RCL64ri },
  1979. { "rcl", X86::RCL16mCL },
  1980. { "rcl", X86::RCL16mi },
  1981. { "rcl", X86::RCL32mCL },
  1982. { "rcl", X86::RCL32mi },
  1983. { "rcl", X86::RCL64mCL },
  1984. { "rcl", X86::RCL64mi },
  1985. { "rcl", X86::RCL8mCL },
  1986. { "rcl", X86::RCL8mi },
  1987. { "rcpps", X86::RCPPSr },
  1988. { "rcpps", X86::RCPPSm },
  1989. { "rcpss", X86::RCPSSr },
  1990. { "rcpss", X86::RCPSSm },
  1991. { "rcr", X86::RCR8r1 },
  1992. { "rcr", X86::RCR16r1 },
  1993. { "rcr", X86::RCR32r1 },
  1994. { "rcr", X86::RCR64r1 },
  1995. { "rcr", X86::RCR16m1 },
  1996. { "rcr", X86::RCR32m1 },
  1997. { "rcr", X86::RCR64m1 },
  1998. { "rcr", X86::RCR8m1 },
  1999. { "rcr", X86::RCR8rCL },
  2000. { "rcr", X86::RCR8ri },
  2001. { "rcr", X86::RCR16rCL },
  2002. { "rcr", X86::RCR16ri },
  2003. { "rcr", X86::RCR32rCL },
  2004. { "rcr", X86::RCR32ri },
  2005. { "rcr", X86::RCR64rCL },
  2006. { "rcr", X86::RCR64ri },
  2007. { "rcr", X86::RCR16mCL },
  2008. { "rcr", X86::RCR16mi },
  2009. { "rcr", X86::RCR32mCL },
  2010. { "rcr", X86::RCR32mi },
  2011. { "rcr", X86::RCR64mCL },
  2012. { "rcr", X86::RCR64mi },
  2013. { "rcr", X86::RCR8mCL },
  2014. { "rcr", X86::RCR8mi },
  2015. { "rdfsbase", X86::RDFSBASE },
  2016. { "rdfsbase", X86::RDFSBASE64 },
  2017. { "rdgsbase", X86::RDGSBASE },
  2018. { "rdgsbase", X86::RDGSBASE64 },
  2019. { "rdmsr", X86::RDMSR },
  2020. { "rdpmc", X86::RDPMC },
  2021. { "rdrand", X86::RDRAND16r },
  2022. { "rdrand", X86::RDRAND32r },
  2023. { "rdrand", X86::RDRAND64r },
  2024. { "rdseed", X86::RDSEED16r },
  2025. { "rdseed", X86::RDSEED32r },
  2026. { "rdseed", X86::RDSEED64r },
  2027. { "rdtsc", X86::RDTSC },
  2028. { "rdtscp", X86::RDTSCP },
  2029. { "rep", X86::REP_PREFIX },
  2030. { "repne", X86::REPNE_PREFIX },
  2031. { "ret", X86::RETL },
  2032. { "ret", X86::RETQ },
  2033. { "ret", X86::RETW },
  2034. { "ret", X86::RETIL },
  2035. { "ret", X86::RETIQ },
  2036. { "ret", X86::RETIW },
  2037. { "retf", X86::LRETL },
  2038. { "retf", X86::LRETW },
  2039. { "retf", X86::LRETIL },
  2040. { "retf", X86::LRETIW },
  2041. { "retfq", X86::LRETQ },
  2042. { "retfq", X86::LRETIQ },
  2043. { "rex64", X86::REX64_PREFIX },
  2044. { "rol", X86::ROL8r1 },
  2045. { "rol", X86::ROL16r1 },
  2046. { "rol", X86::ROL32r1 },
  2047. { "rol", X86::ROL64r1 },
  2048. { "rol", X86::ROL16m1 },
  2049. { "rol", X86::ROL32m1 },
  2050. { "rol", X86::ROL64m1 },
  2051. { "rol", X86::ROL8m1 },
  2052. { "rol", X86::ROL8rCL },
  2053. { "rol", X86::ROL8ri },
  2054. { "rol", X86::ROL16rCL },
  2055. { "rol", X86::ROL16ri },
  2056. { "rol", X86::ROL32rCL },
  2057. { "rol", X86::ROL32ri },
  2058. { "rol", X86::ROL64rCL },
  2059. { "rol", X86::ROL64ri },
  2060. { "rol", X86::ROL16mCL },
  2061. { "rol", X86::ROL16mi },
  2062. { "rol", X86::ROL32mCL },
  2063. { "rol", X86::ROL32mi },
  2064. { "rol", X86::ROL64mCL },
  2065. { "rol", X86::ROL64mi },
  2066. { "rol", X86::ROL8mCL },
  2067. { "rol", X86::ROL8mi },
  2068. { "ror", X86::ROR8r1 },
  2069. { "ror", X86::ROR16r1 },
  2070. { "ror", X86::ROR32r1 },
  2071. { "ror", X86::ROR64r1 },
  2072. { "ror", X86::ROR16m1 },
  2073. { "ror", X86::ROR32m1 },
  2074. { "ror", X86::ROR64m1 },
  2075. { "ror", X86::ROR8m1 },
  2076. { "ror", X86::ROR8rCL },
  2077. { "ror", X86::ROR8ri },
  2078. { "ror", X86::ROR16rCL },
  2079. { "ror", X86::ROR16ri },
  2080. { "ror", X86::ROR32rCL },
  2081. { "ror", X86::ROR32ri },
  2082. { "ror", X86::ROR64rCL },
  2083. { "ror", X86::ROR64ri },
  2084. { "ror", X86::ROR16mCL },
  2085. { "ror", X86::ROR16mi },
  2086. { "ror", X86::ROR32mCL },
  2087. { "ror", X86::ROR32mi },
  2088. { "ror", X86::ROR64mCL },
  2089. { "ror", X86::ROR64mi },
  2090. { "ror", X86::ROR8mCL },
  2091. { "ror", X86::ROR8mi },
  2092. { "rorx", X86::RORX32ri },
  2093. { "rorx", X86::RORX32mi },
  2094. { "rorx", X86::RORX64ri },
  2095. { "rorx", X86::RORX64mi },
  2096. { "roundpd", X86::ROUNDPDr },
  2097. { "roundpd", X86::ROUNDPDm },
  2098. { "roundps", X86::ROUNDPSr },
  2099. { "roundps", X86::ROUNDPSm },
  2100. { "roundsd", X86::ROUNDSDr },
  2101. { "roundsd", X86::ROUNDSDm },
  2102. { "roundss", X86::ROUNDSSr },
  2103. { "roundss", X86::ROUNDSSm },
  2104. { "rsm", X86::RSM },
  2105. { "rsqrtps", X86::RSQRTPSr },
  2106. { "rsqrtps", X86::RSQRTPSm },
  2107. { "rsqrtss", X86::RSQRTSSr },
  2108. { "rsqrtss", X86::RSQRTSSm },
  2109. { "sahf", X86::SAHF },
  2110. { "sar", X86::SAR8r1 },
  2111. { "sar", X86::SAR16r1 },
  2112. { "sar", X86::SAR32r1 },
  2113. { "sar", X86::SAR64r1 },
  2114. { "sar", X86::SAR16m1 },
  2115. { "sar", X86::SAR32m1 },
  2116. { "sar", X86::SAR64m1 },
  2117. { "sar", X86::SAR8m1 },
  2118. { "sar", X86::SAR8rCL },
  2119. { "sar", X86::SAR8ri },
  2120. { "sar", X86::SAR16rCL },
  2121. { "sar", X86::SAR16ri },
  2122. { "sar", X86::SAR32rCL },
  2123. { "sar", X86::SAR32ri },
  2124. { "sar", X86::SAR64rCL },
  2125. { "sar", X86::SAR64ri },
  2126. { "sar", X86::SAR16mCL },
  2127. { "sar", X86::SAR16mi },
  2128. { "sar", X86::SAR32mCL },
  2129. { "sar", X86::SAR32mi },
  2130. { "sar", X86::SAR64mCL },
  2131. { "sar", X86::SAR64mi },
  2132. { "sar", X86::SAR8mCL },
  2133. { "sar", X86::SAR8mi },
  2134. { "sarx", X86::SARX32rr },
  2135. { "sarx", X86::SARX32rm },
  2136. { "sarx", X86::SARX64rr },
  2137. { "sarx", X86::SARX64rm },
  2138. { "sbb", X86::SBB8i8 },
  2139. { "sbb", X86::SBB8rr },
  2140. { "sbb", X86::SBB8ri },
  2141. { "sbb", X86::SBB8rm },
  2142. { "sbb", X86::SBB16i16 },
  2143. { "sbb", X86::SBB16rr },
  2144. { "sbb", X86::SBB16ri8 },
  2145. { "sbb", X86::SBB16ri },
  2146. { "sbb", X86::SBB16rm },
  2147. { "sbb", X86::SBB32i32 },
  2148. { "sbb", X86::SBB32rr },
  2149. { "sbb", X86::SBB32ri8 },
  2150. { "sbb", X86::SBB32ri },
  2151. { "sbb", X86::SBB32rm },
  2152. { "sbb", X86::SBB64i32 },
  2153. { "sbb", X86::SBB64rr },
  2154. { "sbb", X86::SBB64ri8 },
  2155. { "sbb", X86::SBB64ri32 },
  2156. { "sbb", X86::SBB64rm },
  2157. { "sbb", X86::SBB16mr },
  2158. { "sbb", X86::SBB16mi8 },
  2159. { "sbb", X86::SBB16mi },
  2160. { "sbb", X86::SBB32mr },
  2161. { "sbb", X86::SBB32mi8 },
  2162. { "sbb", X86::SBB32mi },
  2163. { "sbb", X86::SBB64mr },
  2164. { "sbb", X86::SBB64mi8 },
  2165. { "sbb", X86::SBB64mi32 },
  2166. { "sbb", X86::SBB8mr },
  2167. { "sbb", X86::SBB8mi },
  2168. { "scas", X86::SCASB },
  2169. { "scas", X86::SCASW },
  2170. { "scas", X86::SCASL },
  2171. { "scas", X86::SCASQ },
  2172. { "scasb", X86::SCASB },
  2173. { "scasb", X86::SCASB },
  2174. { "scasd", X86::SCASL },
  2175. { "scasd", X86::SCASL },
  2176. { "scasq", X86::SCASQ },
  2177. { "scasq", X86::SCASQ },
  2178. { "scasw", X86::SCASW },
  2179. { "scasw", X86::SCASW },
  2180. { "seta", X86::SETAr },
  2181. { "seta", X86::SETAm },
  2182. { "setae", X86::SETAEr },
  2183. { "setae", X86::SETAEm },
  2184. { "setb", X86::SETBr },
  2185. { "setb", X86::SETBm },
  2186. { "setbe", X86::SETBEr },
  2187. { "setbe", X86::SETBEm },
  2188. { "sete", X86::SETEr },
  2189. { "sete", X86::SETEm },
  2190. { "setg", X86::SETGr },
  2191. { "setg", X86::SETGm },
  2192. { "setge", X86::SETGEr },
  2193. { "setge", X86::SETGEm },
  2194. { "setl", X86::SETLr },
  2195. { "setl", X86::SETLm },
  2196. { "setle", X86::SETLEr },
  2197. { "setle", X86::SETLEm },
  2198. { "setne", X86::SETNEr },
  2199. { "setne", X86::SETNEm },
  2200. { "setno", X86::SETNOr },
  2201. { "setno", X86::SETNOm },
  2202. { "setnp", X86::SETNPr },
  2203. { "setnp", X86::SETNPm },
  2204. { "setns", X86::SETNSr },
  2205. { "setns", X86::SETNSm },
  2206. { "seto", X86::SETOr },
  2207. { "seto", X86::SETOm },
  2208. { "setp", X86::SETPr },
  2209. { "setp", X86::SETPm },
  2210. { "sets", X86::SETSr },
  2211. { "sets", X86::SETSm },
  2212. { "sfence", X86::SFENCE },
  2213. { "sgdt", X86::SGDT16m },
  2214. { "sgdt", X86::SGDT32m },
  2215. { "sgdt", X86::SGDT64m },
  2216. { "sha1msg1", X86::SHA1MSG1rr },
  2217. { "sha1msg1", X86::SHA1MSG1rm },
  2218. { "sha1msg2", X86::SHA1MSG2rr },
  2219. { "sha1msg2", X86::SHA1MSG2rm },
  2220. { "sha1nexte", X86::SHA1NEXTErr },
  2221. { "sha1nexte", X86::SHA1NEXTErm },
  2222. { "sha1rnds4", X86::SHA1RNDS4rri },
  2223. { "sha1rnds4", X86::SHA1RNDS4rmi },
  2224. { "sha256msg1", X86::SHA256MSG1rr },
  2225. { "sha256msg1", X86::SHA256MSG1rm },
  2226. { "sha256msg2", X86::SHA256MSG2rr },
  2227. { "sha256msg2", X86::SHA256MSG2rm },
  2228. { "sha256rnds2", X86::SHA256RNDS2rr },
  2229. { "sha256rnds2", X86::SHA256RNDS2rm },
  2230. { "sha256rnds2", X86::SHA256RNDS2rr },
  2231. { "sha256rnds2", X86::SHA256RNDS2rm },
  2232. { "shl", X86::SHL8r1 },
  2233. { "shl", X86::SHL16r1 },
  2234. { "shl", X86::SHL32r1 },
  2235. { "shl", X86::SHL64r1 },
  2236. { "shl", X86::SHL16m1 },
  2237. { "shl", X86::SHL32m1 },
  2238. { "shl", X86::SHL64m1 },
  2239. { "shl", X86::SHL8m1 },
  2240. { "shl", X86::SHL8rCL },
  2241. { "shl", X86::SHL8ri },
  2242. { "shl", X86::SHL16rCL },
  2243. { "shl", X86::SHL16ri },
  2244. { "shl", X86::SHL32rCL },
  2245. { "shl", X86::SHL32ri },
  2246. { "shl", X86::SHL64rCL },
  2247. { "shl", X86::SHL64ri },
  2248. { "shl", X86::SHL16mCL },
  2249. { "shl", X86::SHL16mi },
  2250. { "shl", X86::SHL32mCL },
  2251. { "shl", X86::SHL32mi },
  2252. { "shl", X86::SHL64mCL },
  2253. { "shl", X86::SHL64mi },
  2254. { "shl", X86::SHL8mCL },
  2255. { "shl", X86::SHL8mi },
  2256. { "shld", X86::SHLD16rrCL },
  2257. { "shld", X86::SHLD32rrCL },
  2258. { "shld", X86::SHLD64rrCL },
  2259. { "shld", X86::SHLD16mrCL },
  2260. { "shld", X86::SHLD32mrCL },
  2261. { "shld", X86::SHLD64mrCL },
  2262. { "shld", X86::SHLD16rrCL },
  2263. { "shld", X86::SHLD16rri8 },
  2264. { "shld", X86::SHLD32rrCL },
  2265. { "shld", X86::SHLD32rri8 },
  2266. { "shld", X86::SHLD64rrCL },
  2267. { "shld", X86::SHLD64rri8 },
  2268. { "shld", X86::SHLD16mrCL },
  2269. { "shld", X86::SHLD16mri8 },
  2270. { "shld", X86::SHLD32mrCL },
  2271. { "shld", X86::SHLD32mri8 },
  2272. { "shld", X86::SHLD64mrCL },
  2273. { "shld", X86::SHLD64mri8 },
  2274. { "shlx", X86::SHLX32rr },
  2275. { "shlx", X86::SHLX32rm },
  2276. { "shlx", X86::SHLX64rr },
  2277. { "shlx", X86::SHLX64rm },
  2278. { "shr", X86::SHR8r1 },
  2279. { "shr", X86::SHR16r1 },
  2280. { "shr", X86::SHR32r1 },
  2281. { "shr", X86::SHR64r1 },
  2282. { "shr", X86::SHR16m1 },
  2283. { "shr", X86::SHR32m1 },
  2284. { "shr", X86::SHR64m1 },
  2285. { "shr", X86::SHR8m1 },
  2286. { "shr", X86::SHR8rCL },
  2287. { "shr", X86::SHR8ri },
  2288. { "shr", X86::SHR16rCL },
  2289. { "shr", X86::SHR16ri },
  2290. { "shr", X86::SHR32rCL },
  2291. { "shr", X86::SHR32ri },
  2292. { "shr", X86::SHR64rCL },
  2293. { "shr", X86::SHR64ri },
  2294. { "shr", X86::SHR16mCL },
  2295. { "shr", X86::SHR16mi },
  2296. { "shr", X86::SHR32mCL },
  2297. { "shr", X86::SHR32mi },
  2298. { "shr", X86::SHR64mCL },
  2299. { "shr", X86::SHR64mi },
  2300. { "shr", X86::SHR8mCL },
  2301. { "shr", X86::SHR8mi },
  2302. { "shrd", X86::SHRD16rrCL },
  2303. { "shrd", X86::SHRD32rrCL },
  2304. { "shrd", X86::SHRD64rrCL },
  2305. { "shrd", X86::SHRD16mrCL },
  2306. { "shrd", X86::SHRD32mrCL },
  2307. { "shrd", X86::SHRD64mrCL },
  2308. { "shrd", X86::SHRD16rrCL },
  2309. { "shrd", X86::SHRD16rri8 },
  2310. { "shrd", X86::SHRD32rrCL },
  2311. { "shrd", X86::SHRD32rri8 },
  2312. { "shrd", X86::SHRD64rrCL },
  2313. { "shrd", X86::SHRD64rri8 },
  2314. { "shrd", X86::SHRD16mrCL },
  2315. { "shrd", X86::SHRD16mri8 },
  2316. { "shrd", X86::SHRD32mrCL },
  2317. { "shrd", X86::SHRD32mri8 },
  2318. { "shrd", X86::SHRD64mrCL },
  2319. { "shrd", X86::SHRD64mri8 },
  2320. { "shrx", X86::SHRX32rr },
  2321. { "shrx", X86::SHRX32rm },
  2322. { "shrx", X86::SHRX64rr },
  2323. { "shrx", X86::SHRX64rm },
  2324. { "shufpd", X86::SHUFPDrri },
  2325. { "shufpd", X86::SHUFPDrmi },
  2326. { "shufps", X86::SHUFPSrri },
  2327. { "shufps", X86::SHUFPSrmi },
  2328. { "sidt", X86::SIDT16m },
  2329. { "sidt", X86::SIDT32m },
  2330. { "sidt", X86::SIDT64m },
  2331. { "skinit", X86::SKINIT },
  2332. { "sldt", X86::SLDT16r },
  2333. { "sldt", X86::SLDT32r },
  2334. { "sldt", X86::SLDT64r },
  2335. { "sldt", X86::SLDT16m },
  2336. { "sldt", X86::SLDT64m },
  2337. { "sldt", X86::SLDT16m },
  2338. { "smsw", X86::SMSW16r },
  2339. { "smsw", X86::SMSW32r },
  2340. { "smsw", X86::SMSW64r },
  2341. { "smsw", X86::SMSW16m },
  2342. { "sqrtpd", X86::SQRTPDr },
  2343. { "sqrtpd", X86::SQRTPDm },
  2344. { "sqrtps", X86::SQRTPSr },
  2345. { "sqrtps", X86::SQRTPSm },
  2346. { "sqrtsd", X86::SQRTSDr },
  2347. { "sqrtsd", X86::SQRTSDm },
  2348. { "sqrtss", X86::SQRTSSr },
  2349. { "sqrtss", X86::SQRTSSm },
  2350. { "ss", X86::SS_PREFIX },
  2351. { "stac", X86::STAC },
  2352. { "stc", X86::STC },
  2353. { "std", X86::STD },
  2354. { "stgi", X86::STGI },
  2355. { "sti", X86::STI },
  2356. { "stmxcsr", X86::STMXCSR },
  2357. { "stos", X86::STOSW },
  2358. { "stos", X86::STOSL },
  2359. { "stos", X86::STOSQ },
  2360. { "stos", X86::STOSB },
  2361. { "stosb", X86::STOSB },
  2362. { "stosb", X86::STOSB },
  2363. { "stosd", X86::STOSL },
  2364. { "stosd", X86::STOSL },
  2365. { "stosq", X86::STOSQ },
  2366. { "stosq", X86::STOSQ },
  2367. { "stosw", X86::STOSW },
  2368. { "stosw", X86::STOSW },
  2369. { "str", X86::STR16r },
  2370. { "str", X86::STR32r },
  2371. { "str", X86::STR64r },
  2372. { "str", X86::STRm },
  2373. { "sub", X86::SUB8i8 },
  2374. { "sub", X86::SUB8rr },
  2375. { "sub", X86::SUB8ri },
  2376. { "sub", X86::SUB8rm },
  2377. { "sub", X86::SUB16i16 },
  2378. { "sub", X86::SUB16rr },
  2379. { "sub", X86::SUB16ri8 },
  2380. { "sub", X86::SUB16ri },
  2381. { "sub", X86::SUB16rm },
  2382. { "sub", X86::SUB32i32 },
  2383. { "sub", X86::SUB32rr },
  2384. { "sub", X86::SUB32ri8 },
  2385. { "sub", X86::SUB32ri },
  2386. { "sub", X86::SUB32rm },
  2387. { "sub", X86::SUB64i32 },
  2388. { "sub", X86::SUB64rr },
  2389. { "sub", X86::SUB64ri8 },
  2390. { "sub", X86::SUB64ri32 },
  2391. { "sub", X86::SUB64rm },
  2392. { "sub", X86::SUB16mr },
  2393. { "sub", X86::SUB16mi8 },
  2394. { "sub", X86::SUB16mi },
  2395. { "sub", X86::SUB32mr },
  2396. { "sub", X86::SUB32mi8 },
  2397. { "sub", X86::SUB32mi },
  2398. { "sub", X86::SUB64mr },
  2399. { "sub", X86::SUB64mi8 },
  2400. { "sub", X86::SUB64mi32 },
  2401. { "sub", X86::SUB8mr },
  2402. { "sub", X86::SUB8mi },
  2403. { "subpd", X86::SUBPDrr },
  2404. { "subpd", X86::SUBPDrm },
  2405. { "subps", X86::SUBPSrr },
  2406. { "subps", X86::SUBPSrm },
  2407. { "subsd", X86::SUBSDrr },
  2408. { "subsd", X86::SUBSDrm },
  2409. { "subss", X86::SUBSSrr },
  2410. { "subss", X86::SUBSSrm },
  2411. { "swapgs", X86::SWAPGS },
  2412. { "syscall", X86::SYSCALL },
  2413. { "sysenter", X86::SYSENTER },
  2414. { "sysexit", X86::SYSEXIT64 },
  2415. { "sysexit", X86::SYSEXIT },
  2416. { "sysret", X86::SYSRET64 },
  2417. { "sysret", X86::SYSRET },
  2418. { "t1mskc", X86::T1MSKC32rr },
  2419. { "t1mskc", X86::T1MSKC32rm },
  2420. { "t1mskc", X86::T1MSKC64rr },
  2421. { "t1mskc", X86::T1MSKC64rm },
  2422. { "test", X86::TEST8i8 },
  2423. { "test", X86::TEST8rr },
  2424. { "test", X86::TEST8ri },
  2425. { "test", X86::TEST8rm },
  2426. { "test", X86::TEST16i16 },
  2427. { "test", X86::TEST16rr },
  2428. { "test", X86::TEST16ri },
  2429. { "test", X86::TEST16rm },
  2430. { "test", X86::TEST32i32 },
  2431. { "test", X86::TEST32rr },
  2432. { "test", X86::TEST32ri },
  2433. { "test", X86::TEST32rm },
  2434. { "test", X86::TEST64i32 },
  2435. { "test", X86::TEST64rr },
  2436. { "test", X86::TEST64ri32 },
  2437. { "test", X86::TEST64rm },
  2438. { "test", X86::TEST16rm },
  2439. { "test", X86::TEST16mi },
  2440. { "test", X86::TEST32rm },
  2441. { "test", X86::TEST32mi },
  2442. { "test", X86::TEST64rm },
  2443. { "test", X86::TEST64mi32 },
  2444. { "test", X86::TEST8rm },
  2445. { "test", X86::TEST8mi },
  2446. { "tzcnt", X86::TZCNT16rr },
  2447. { "tzcnt", X86::TZCNT16rm },
  2448. { "tzcnt", X86::TZCNT32rr },
  2449. { "tzcnt", X86::TZCNT32rm },
  2450. { "tzcnt", X86::TZCNT64rr },
  2451. { "tzcnt", X86::TZCNT64rm },
  2452. { "tzmsk", X86::TZMSK32rr },
  2453. { "tzmsk", X86::TZMSK32rm },
  2454. { "tzmsk", X86::TZMSK64rr },
  2455. { "tzmsk", X86::TZMSK64rm },
  2456. { "ucomisd", X86::UCOMISDrr },
  2457. { "ucomisd", X86::UCOMISDrm },
  2458. { "ucomiss", X86::UCOMISSrr },
  2459. { "ucomiss", X86::UCOMISSrm },
  2460. { "ud2", X86::TRAP },
  2461. { "ud2b", X86::UD2B },
  2462. { "unpckhpd", X86::UNPCKHPDrr },
  2463. { "unpckhpd", X86::UNPCKHPDrm },
  2464. { "unpckhps", X86::UNPCKHPSrr },
  2465. { "unpckhps", X86::UNPCKHPSrm },
  2466. { "unpcklpd", X86::UNPCKLPDrr },
  2467. { "unpcklpd", X86::UNPCKLPDrm },
  2468. { "unpcklps", X86::UNPCKLPSrr },
  2469. { "unpcklps", X86::UNPCKLPSrm },
  2470. { "vaddpd", X86::VADDPDrr },
  2471. { "vaddpd", X86::VADDPDrm },
  2472. { "vaddpd", X86::VADDPDYrr },
  2473. { "vaddpd", X86::VADDPDYrm },
  2474. { "vaddpd", X86::VADDPDZrr },
  2475. { "vaddpd", X86::VADDPDZrm },
  2476. { "vaddpd", X86::VADDPDZrmb },
  2477. { "vaddpd", X86::VADDPDZrrk },
  2478. { "vaddpd", X86::VADDPDZrmk },
  2479. { "vaddpd", X86::VADDPDZrrkz },
  2480. { "vaddpd", X86::VADDPDZrmkz },
  2481. { "vaddpd", X86::VADDPDZrmbk },
  2482. { "vaddpd", X86::VADDPDZrmbkz },
  2483. { "vaddps", X86::VADDPSrr },
  2484. { "vaddps", X86::VADDPSrm },
  2485. { "vaddps", X86::VADDPSYrr },
  2486. { "vaddps", X86::VADDPSYrm },
  2487. { "vaddps", X86::VADDPSZrr },
  2488. { "vaddps", X86::VADDPSZrm },
  2489. { "vaddps", X86::VADDPSZrmb },
  2490. { "vaddps", X86::VADDPSZrrk },
  2491. { "vaddps", X86::VADDPSZrmk },
  2492. { "vaddps", X86::VADDPSZrrkz },
  2493. { "vaddps", X86::VADDPSZrmkz },
  2494. { "vaddps", X86::VADDPSZrmbk },
  2495. { "vaddps", X86::VADDPSZrmbkz },
  2496. { "vaddsd", X86::VADDSDrr },
  2497. { "vaddsd", X86::VADDSDrm },
  2498. { "vaddsd", X86::VADDSDZrr },
  2499. { "vaddsd", X86::VADDSDZrm },
  2500. { "vaddss", X86::VADDSSrr },
  2501. { "vaddss", X86::VADDSSrm },
  2502. { "vaddss", X86::VADDSSZrr },
  2503. { "vaddss", X86::VADDSSZrm },
  2504. { "vaddsubpd", X86::VADDSUBPDrr },
  2505. { "vaddsubpd", X86::VADDSUBPDrm },
  2506. { "vaddsubpd", X86::VADDSUBPDYrr },
  2507. { "vaddsubpd", X86::VADDSUBPDYrm },
  2508. { "vaddsubps", X86::VADDSUBPSrr },
  2509. { "vaddsubps", X86::VADDSUBPSrm },
  2510. { "vaddsubps", X86::VADDSUBPSYrr },
  2511. { "vaddsubps", X86::VADDSUBPSYrm },
  2512. { "vaesdec", X86::VAESDECrr },
  2513. { "vaesdec", X86::VAESDECrm },
  2514. { "vaesdeclast", X86::VAESDECLASTrr },
  2515. { "vaesdeclast", X86::VAESDECLASTrm },
  2516. { "vaesenc", X86::VAESENCrr },
  2517. { "vaesenc", X86::VAESENCrm },
  2518. { "vaesenclast", X86::VAESENCLASTrr },
  2519. { "vaesenclast", X86::VAESENCLASTrm },
  2520. { "vaesimc", X86::VAESIMCrr },
  2521. { "vaesimc", X86::VAESIMCrm },
  2522. { "vaeskeygenassist", X86::VAESKEYGENASSIST128rr },
  2523. { "vaeskeygenassist", X86::VAESKEYGENASSIST128rm },
  2524. { "valignd", X86::VALIGNDrri },
  2525. { "valignd", X86::VALIGNDrmi },
  2526. { "valignd", X86::VALIGNDrrik },
  2527. { "valignd", X86::VALIGNDrrikz },
  2528. { "valignq", X86::VALIGNQrri },
  2529. { "valignq", X86::VALIGNQrmi },
  2530. { "valignq", X86::VALIGNQrrik },
  2531. { "valignq", X86::VALIGNQrrikz },
  2532. { "vandnpd", X86::VANDNPDrr },
  2533. { "vandnpd", X86::VANDNPDrm },
  2534. { "vandnpd", X86::VANDNPDYrr },
  2535. { "vandnpd", X86::VANDNPDYrm },
  2536. { "vandnps", X86::VANDNPSrr },
  2537. { "vandnps", X86::VANDNPSrm },
  2538. { "vandnps", X86::VANDNPSYrr },
  2539. { "vandnps", X86::VANDNPSYrm },
  2540. { "vandpd", X86::VANDPDrr },
  2541. { "vandpd", X86::VANDPDrm },
  2542. { "vandpd", X86::VANDPDYrr },
  2543. { "vandpd", X86::VANDPDYrm },
  2544. { "vandps", X86::VANDPSrr },
  2545. { "vandps", X86::VANDPSrm },
  2546. { "vandps", X86::VANDPSYrr },
  2547. { "vandps", X86::VANDPSYrm },
  2548. { "vblendmpd", X86::VBLENDMPDZrr },
  2549. { "vblendmpd", X86::VBLENDMPDZrm },
  2550. { "vblendmps", X86::VBLENDMPSZrr },
  2551. { "vblendmps", X86::VBLENDMPSZrm },
  2552. { "vblendpd", X86::VBLENDPDrri },
  2553. { "vblendpd", X86::VBLENDPDrmi },
  2554. { "vblendpd", X86::VBLENDPDYrri },
  2555. { "vblendpd", X86::VBLENDPDYrmi },
  2556. { "vblendps", X86::VBLENDPSrri },
  2557. { "vblendps", X86::VBLENDPSrmi },
  2558. { "vblendps", X86::VBLENDPSYrri },
  2559. { "vblendps", X86::VBLENDPSYrmi },
  2560. { "vblendvpd", X86::VBLENDVPDrr },
  2561. { "vblendvpd", X86::VBLENDVPDrm },
  2562. { "vblendvpd", X86::VBLENDVPDYrr },
  2563. { "vblendvpd", X86::VBLENDVPDYrm },
  2564. { "vblendvps", X86::VBLENDVPSrr },
  2565. { "vblendvps", X86::VBLENDVPSrm },
  2566. { "vblendvps", X86::VBLENDVPSYrr },
  2567. { "vblendvps", X86::VBLENDVPSYrm },
  2568. { "vbroadcastf128", X86::VBROADCASTF128 },
  2569. { "vbroadcasti128", X86::VBROADCASTI128 },
  2570. { "vbroadcasti32x4", X86::VBROADCASTI32X4rm },
  2571. { "vbroadcasti32x4", X86::VBROADCASTI32X4krm },
  2572. { "vbroadcasti64x4", X86::VBROADCASTI64X4rm },
  2573. { "vbroadcasti64x4", X86::VBROADCASTI64X4krm },
  2574. { "vbroadcastsd", X86::VBROADCASTSDYrr },
  2575. { "vbroadcastsd", X86::VBROADCASTSDYrm },
  2576. { "vbroadcastsd", X86::VBROADCASTSDZrr },
  2577. { "vbroadcastsd", X86::VBROADCASTSDZrm },
  2578. { "vbroadcastss", X86::VBROADCASTSSrr },
  2579. { "vbroadcastss", X86::VBROADCASTSSrm },
  2580. { "vbroadcastss", X86::VBROADCASTSSYrr },
  2581. { "vbroadcastss", X86::VBROADCASTSSYrm },
  2582. { "vbroadcastss", X86::VBROADCASTSSZrr },
  2583. { "vbroadcastss", X86::VBROADCASTSSZrm },
  2584. { "vcmp", X86::VCMPPDrri },
  2585. { "vcmp", X86::VCMPPDrmi },
  2586. { "vcmp", X86::VCMPPDYrri },
  2587. { "vcmp", X86::VCMPPDYrmi },
  2588. { "vcmp", X86::VCMPPDZrri },
  2589. { "vcmp", X86::VCMPPSrri },
  2590. { "vcmp", X86::VCMPPSrmi },
  2591. { "vcmp", X86::VCMPPSYrri },
  2592. { "vcmp", X86::VCMPPSYrmi },
  2593. { "vcmp", X86::VCMPPSZrri },
  2594. { "vcmp", X86::VCMPSDrr },
  2595. { "vcmp", X86::VCMPSDrm },
  2596. { "vcmp", X86::VCMPSDZrr },
  2597. { "vcmp", X86::VCMPSDZrm },
  2598. { "vcmp", X86::VCMPSSrr },
  2599. { "vcmp", X86::VCMPSSrm },
  2600. { "vcmp", X86::VCMPSSZrr },
  2601. { "vcmp", X86::VCMPSSZrm },
  2602. { "vcmp", X86::VCMPPDZrrib },
  2603. { "vcmp", X86::VCMPPDZrmi },
  2604. { "vcmp", X86::VCMPPSZrrib },
  2605. { "vcmp", X86::VCMPPSZrmi },
  2606. { "vcmppd", X86::VCMPPDrri_alt },
  2607. { "vcmppd", X86::VCMPPDrmi_alt },
  2608. { "vcmppd", X86::VCMPPDYrri_alt },
  2609. { "vcmppd", X86::VCMPPDYrmi_alt },
  2610. { "vcmppd", X86::VCMPPDZrri_alt },
  2611. { "vcmppd", X86::VCMPPDZrmi_alt },
  2612. { "vcmpps", X86::VCMPPSrri_alt },
  2613. { "vcmpps", X86::VCMPPSrmi_alt },
  2614. { "vcmpps", X86::VCMPPSYrri_alt },
  2615. { "vcmpps", X86::VCMPPSYrmi_alt },
  2616. { "vcmpps", X86::VCMPPSZrri_alt },
  2617. { "vcmpps", X86::VCMPPSZrmi_alt },
  2618. { "vcmpsd", X86::VCMPSDrr_alt },
  2619. { "vcmpsd", X86::VCMPSDrm_alt },
  2620. { "vcmpsd", X86::VCMPSDZrri_alt },
  2621. { "vcmpsd", X86::VCMPSDZrmi_alt },
  2622. { "vcmpss", X86::VCMPSSrr_alt },
  2623. { "vcmpss", X86::VCMPSSrm_alt },
  2624. { "vcmpss", X86::VCMPSSZrri_alt },
  2625. { "vcmpss", X86::VCMPSSZrmi_alt },
  2626. { "vcomisd", X86::VCOMISDrr },
  2627. { "vcomisd", X86::VCOMISDrm },
  2628. { "vcomisd", X86::VCOMISDZrr },
  2629. { "vcomisd", X86::VCOMISDZrm },
  2630. { "vcomiss", X86::VCOMISSrr },
  2631. { "vcomiss", X86::VCOMISSrm },
  2632. { "vcomiss", X86::VCOMISSZrr },
  2633. { "vcomiss", X86::VCOMISSZrm },
  2634. { "vcvtdq2pd", X86::VCVTDQ2PDrr },
  2635. { "vcvtdq2pd", X86::VCVTDQ2PDrm },
  2636. { "vcvtdq2pd", X86::VCVTDQ2PDYrr },
  2637. { "vcvtdq2pd", X86::VCVTDQ2PDYrm },
  2638. { "vcvtdq2pd", X86::VCVTDQ2PDZrr },
  2639. { "vcvtdq2pd", X86::VCVTDQ2PDZrm },
  2640. { "vcvtdq2ps", X86::VCVTDQ2PSrr },
  2641. { "vcvtdq2ps", X86::VCVTDQ2PSrm },
  2642. { "vcvtdq2ps", X86::VCVTDQ2PSYrr },
  2643. { "vcvtdq2ps", X86::VCVTDQ2PSYrm },
  2644. { "vcvtdq2ps", X86::VCVTDQ2PSZrr },
  2645. { "vcvtdq2ps", X86::VCVTDQ2PSZrm },
  2646. { "vcvtdq2ps", X86::VCVTDQ2PSZrrb },
  2647. { "vcvtpd2dq", X86::VCVTPD2DQrr },
  2648. { "vcvtpd2dq", X86::VCVTPD2DQYrr },
  2649. { "vcvtpd2dq", X86::VCVTPD2DQYrr },
  2650. { "vcvtpd2dq", X86::VCVTPD2DQYrm },
  2651. { "vcvtpd2dq", X86::VCVTPD2DQZrr },
  2652. { "vcvtpd2dq", X86::VCVTPD2DQZrm },
  2653. { "vcvtpd2dq", X86::VCVTPD2DQZrrb },
  2654. { "vcvtpd2dqx", X86::VCVTPD2DQrr },
  2655. { "vcvtpd2dqx", X86::VCVTPD2DQXrm },
  2656. { "vcvtpd2ps", X86::VCVTPD2PSrr },
  2657. { "vcvtpd2ps", X86::VCVTPD2PSYrr },
  2658. { "vcvtpd2ps", X86::VCVTPD2PSYrr },
  2659. { "vcvtpd2ps", X86::VCVTPD2PSYrm },
  2660. { "vcvtpd2ps", X86::VCVTPD2PSZrr },
  2661. { "vcvtpd2ps", X86::VCVTPD2PSZrm },
  2662. { "vcvtpd2ps", X86::VCVTPD2PSZrrb },
  2663. { "vcvtpd2psx", X86::VCVTPD2PSrr },
  2664. { "vcvtpd2psx", X86::VCVTPD2PSXrm },
  2665. { "vcvtpd2udq", X86::VCVTPD2UDQZrr },
  2666. { "vcvtpd2udq", X86::VCVTPD2UDQZrm },
  2667. { "vcvtpd2udq", X86::VCVTPD2UDQZrrb },
  2668. { "vcvtph2ps", X86::VCVTPH2PSrr },
  2669. { "vcvtph2ps", X86::VCVTPH2PSrm },
  2670. { "vcvtph2ps", X86::VCVTPH2PSYrr },
  2671. { "vcvtph2ps", X86::VCVTPH2PSYrm },
  2672. { "vcvtph2ps", X86::VCVTPH2PSZrr },
  2673. { "vcvtph2ps", X86::VCVTPH2PSZrm },
  2674. { "vcvtps2dq", X86::VCVTPS2DQrr },
  2675. { "vcvtps2dq", X86::VCVTPS2DQrm },
  2676. { "vcvtps2dq", X86::VCVTPS2DQYrr },
  2677. { "vcvtps2dq", X86::VCVTPS2DQYrm },
  2678. { "vcvtps2dq", X86::VCVTPS2DQZrr },
  2679. { "vcvtps2dq", X86::VCVTPS2DQZrm },
  2680. { "vcvtps2dq", X86::VCVTPS2DQZrrb },
  2681. { "vcvtps2pd", X86::VCVTPS2PDrr },
  2682. { "vcvtps2pd", X86::VCVTPS2PDrm },
  2683. { "vcvtps2pd", X86::VCVTPS2PDYrr },
  2684. { "vcvtps2pd", X86::VCVTPS2PDYrm },
  2685. { "vcvtps2pd", X86::VCVTPS2PDZrr },
  2686. { "vcvtps2pd", X86::VCVTPS2PDZrm },
  2687. { "vcvtps2ph", X86::VCVTPS2PHrr },
  2688. { "vcvtps2ph", X86::VCVTPS2PHYrr },
  2689. { "vcvtps2ph", X86::VCVTPS2PHZrr },
  2690. { "vcvtps2ph", X86::VCVTPS2PHYmr },
  2691. { "vcvtps2ph", X86::VCVTPS2PHZmr },
  2692. { "vcvtps2ph", X86::VCVTPS2PHmr },
  2693. { "vcvtps2udq", X86::VCVTPS2UDQZrr },
  2694. { "vcvtps2udq", X86::VCVTPS2UDQZrm },
  2695. { "vcvtps2udq", X86::VCVTPS2UDQZrrb },
  2696. { "vcvtsd2si", X86::VCVTSD2SIrr },
  2697. { "vcvtsd2si", X86::VCVTSD2SIrr },
  2698. { "vcvtsd2si", X86::VCVTSD2SIZrr },
  2699. { "vcvtsd2si", X86::VCVTSD2SIZrm },
  2700. { "vcvtsd2si", X86::VCVTSD2SIrm },
  2701. { "vcvtsd2si", X86::VCVTSD2SIrm },
  2702. { "vcvtsd2si", X86::VCVTSD2SI64rr },
  2703. { "vcvtsd2si", X86::VCVTSD2SI64rr },
  2704. { "vcvtsd2si", X86::VCVTSD2SI64Zrr },
  2705. { "vcvtsd2si", X86::VCVTSD2SI64Zrm },
  2706. { "vcvtsd2si", X86::VCVTSD2SI64rm },
  2707. { "vcvtsd2si", X86::VCVTSD2SI64rm },
  2708. { "vcvtsd2ss", X86::VCVTSD2SSrr },
  2709. { "vcvtsd2ss", X86::VCVTSD2SSrm },
  2710. { "vcvtsd2ss", X86::VCVTSD2SSZrr },
  2711. { "vcvtsd2ss", X86::VCVTSD2SSZrm },
  2712. { "vcvtsd2usi", X86::VCVTSD2USIZrr },
  2713. { "vcvtsd2usi", X86::VCVTSD2USIZrm },
  2714. { "vcvtsd2usi", X86::VCVTSD2USI64Zrr },
  2715. { "vcvtsd2usi", X86::VCVTSD2USI64Zrm },
  2716. { "vcvtsi2sd", X86::VCVTSI2SDrr },
  2717. { "vcvtsi2sd", X86::VCVTSI2SD64rr },
  2718. { "vcvtsi2sd", X86::VCVTSI2SDrm },
  2719. { "vcvtsi2sd", X86::VCVTSI2SDrm },
  2720. { "vcvtsi2sd", X86::VCVTSI2SD64rm },
  2721. { "vcvtsi2sd", X86::VCVTSI2SDZrr },
  2722. { "vcvtsi2sd", X86::VCVTSI642SDZrr },
  2723. { "vcvtsi2sd", X86::VCVTSI2SDZrm },
  2724. { "vcvtsi2sd", X86::VCVTSI642SDZrm },
  2725. { "vcvtsi2ss", X86::VCVTSI2SSrr },
  2726. { "vcvtsi2ss", X86::VCVTSI2SS64rr },
  2727. { "vcvtsi2ss", X86::VCVTSI2SSrm },
  2728. { "vcvtsi2ss", X86::VCVTSI2SSrm },
  2729. { "vcvtsi2ss", X86::VCVTSI2SS64rm },
  2730. { "vcvtsi2ss", X86::VCVTSI2SSZrr },
  2731. { "vcvtsi2ss", X86::VCVTSI642SSZrr },
  2732. { "vcvtsi2ss", X86::VCVTSI2SSZrm },
  2733. { "vcvtsi2ss", X86::VCVTSI642SSZrm },
  2734. { "vcvtss2sd", X86::VCVTSS2SDrr },
  2735. { "vcvtss2sd", X86::VCVTSS2SDrm },
  2736. { "vcvtss2sd", X86::VCVTSS2SDZrr },
  2737. { "vcvtss2sd", X86::VCVTSS2SDZrm },
  2738. { "vcvtss2si", X86::VCVTSS2SIrr },
  2739. { "vcvtss2si", X86::VCVTSS2SIrr },
  2740. { "vcvtss2si", X86::VCVTSS2SIZrr },
  2741. { "vcvtss2si", X86::VCVTSS2SIZrm },
  2742. { "vcvtss2si", X86::VCVTSS2SIrm },
  2743. { "vcvtss2si", X86::VCVTSS2SIrm },
  2744. { "vcvtss2si", X86::VCVTSS2SI64rr },
  2745. { "vcvtss2si", X86::VCVTSS2SI64rr },
  2746. { "vcvtss2si", X86::VCVTSS2SI64Zrr },
  2747. { "vcvtss2si", X86::VCVTSS2SI64Zrm },
  2748. { "vcvtss2si", X86::VCVTSS2SI64rm },
  2749. { "vcvtss2si", X86::VCVTSS2SI64rm },
  2750. { "vcvtss2usi", X86::VCVTSS2USIZrr },
  2751. { "vcvtss2usi", X86::VCVTSS2USIZrm },
  2752. { "vcvtss2usi", X86::VCVTSS2USI64Zrr },
  2753. { "vcvtss2usi", X86::VCVTSS2USI64Zrm },
  2754. { "vcvttpd2dq", X86::VCVTTPD2DQrr },
  2755. { "vcvttpd2dq", X86::VCVTTPD2DQYrr },
  2756. { "vcvttpd2dq", X86::VCVTTPD2DQYrr },
  2757. { "vcvttpd2dq", X86::VCVTTPD2DQYrm },
  2758. { "vcvttpd2dq", X86::VCVTTPD2DQZrr },
  2759. { "vcvttpd2dq", X86::VCVTTPD2DQZrm },
  2760. { "vcvttpd2dqx", X86::VCVTTPD2DQrr },
  2761. { "vcvttpd2dqx", X86::VCVTTPD2DQXrm },
  2762. { "vcvttpd2udq", X86::VCVTTPD2UDQZrr },
  2763. { "vcvttpd2udq", X86::VCVTTPD2UDQZrm },
  2764. { "vcvttps2dq", X86::VCVTTPS2DQrr },
  2765. { "vcvttps2dq", X86::VCVTTPS2DQrm },
  2766. { "vcvttps2dq", X86::VCVTTPS2DQYrr },
  2767. { "vcvttps2dq", X86::VCVTTPS2DQYrm },
  2768. { "vcvttps2dq", X86::VCVTTPS2DQZrr },
  2769. { "vcvttps2dq", X86::VCVTTPS2DQZrm },
  2770. { "vcvttps2udq", X86::VCVTTPS2UDQZrr },
  2771. { "vcvttps2udq", X86::VCVTTPS2UDQZrm },
  2772. { "vcvttsd2si", X86::VCVTTSD2SIrr },
  2773. { "vcvttsd2si", X86::VCVTTSD2SIrr },
  2774. { "vcvttsd2si", X86::VCVTTSD2SIZrr },
  2775. { "vcvttsd2si", X86::VCVTTSD2SIZrm },
  2776. { "vcvttsd2si", X86::VCVTTSD2SIrm },
  2777. { "vcvttsd2si", X86::VCVTTSD2SIrm },
  2778. { "vcvttsd2si", X86::VCVTTSD2SI64rr },
  2779. { "vcvttsd2si", X86::VCVTTSD2SI64rr },
  2780. { "vcvttsd2si", X86::VCVTTSD2SI64Zrr },
  2781. { "vcvttsd2si", X86::VCVTTSD2SI64Zrm },
  2782. { "vcvttsd2si", X86::VCVTTSD2SI64rm },
  2783. { "vcvttsd2si", X86::VCVTTSD2SI64rm },
  2784. { "vcvttsd2usi", X86::VCVTTSD2USIZrr },
  2785. { "vcvttsd2usi", X86::VCVTTSD2USIZrm },
  2786. { "vcvttsd2usi", X86::VCVTTSD2USI64Zrr },
  2787. { "vcvttsd2usi", X86::VCVTTSD2USI64Zrm },
  2788. { "vcvttss2si", X86::VCVTTSS2SIrr },
  2789. { "vcvttss2si", X86::VCVTTSS2SIrr },
  2790. { "vcvttss2si", X86::VCVTTSS2SIZrr },
  2791. { "vcvttss2si", X86::VCVTTSS2SIZrm },
  2792. { "vcvttss2si", X86::VCVTTSS2SIrm },
  2793. { "vcvttss2si", X86::VCVTTSS2SIrm },
  2794. { "vcvttss2si", X86::VCVTTSS2SI64rr },
  2795. { "vcvttss2si", X86::VCVTTSS2SI64rr },
  2796. { "vcvttss2si", X86::VCVTTSS2SI64Zrr },
  2797. { "vcvttss2si", X86::VCVTTSS2SI64Zrm },
  2798. { "vcvttss2si", X86::VCVTTSS2SI64rm },
  2799. { "vcvttss2si", X86::VCVTTSS2SI64rm },
  2800. { "vcvttss2usi", X86::VCVTTSS2USIZrr },
  2801. { "vcvttss2usi", X86::VCVTTSS2USIZrm },
  2802. { "vcvttss2usi", X86::VCVTTSS2USI64Zrr },
  2803. { "vcvttss2usi", X86::VCVTTSS2USI64Zrm },
  2804. { "vcvtudq2pd", X86::VCVTUDQ2PDZrr },
  2805. { "vcvtudq2pd", X86::VCVTUDQ2PDZrm },
  2806. { "vcvtudq2ps", X86::VCVTUDQ2PSZrr },
  2807. { "vcvtudq2ps", X86::VCVTUDQ2PSZrm },
  2808. { "vcvtudq2ps", X86::VCVTUDQ2PSZrrb },
  2809. { "vcvtusi2sd", X86::VCVTUSI2SDZrr },
  2810. { "vcvtusi2sd", X86::VCVTUSI642SDZrr },
  2811. { "vcvtusi2sd", X86::VCVTUSI2SDZrm },
  2812. { "vcvtusi2sd", X86::VCVTUSI642SDZrm },
  2813. { "vcvtusi2ss", X86::VCVTUSI2SSZrr },
  2814. { "vcvtusi2ss", X86::VCVTUSI642SSZrr },
  2815. { "vcvtusi2ss", X86::VCVTUSI2SSZrm },
  2816. { "vcvtusi2ss", X86::VCVTUSI642SSZrm },
  2817. { "vdivpd", X86::VDIVPDrr },
  2818. { "vdivpd", X86::VDIVPDrm },
  2819. { "vdivpd", X86::VDIVPDYrr },
  2820. { "vdivpd", X86::VDIVPDYrm },
  2821. { "vdivpd", X86::VDIVPDZrr },
  2822. { "vdivpd", X86::VDIVPDZrm },
  2823. { "vdivpd", X86::VDIVPDZrmb },
  2824. { "vdivpd", X86::VDIVPDZrrk },
  2825. { "vdivpd", X86::VDIVPDZrmk },
  2826. { "vdivpd", X86::VDIVPDZrrkz },
  2827. { "vdivpd", X86::VDIVPDZrmkz },
  2828. { "vdivpd", X86::VDIVPDZrmbk },
  2829. { "vdivpd", X86::VDIVPDZrmbkz },
  2830. { "vdivps", X86::VDIVPSrr },
  2831. { "vdivps", X86::VDIVPSrm },
  2832. { "vdivps", X86::VDIVPSYrr },
  2833. { "vdivps", X86::VDIVPSYrm },
  2834. { "vdivps", X86::VDIVPSZrr },
  2835. { "vdivps", X86::VDIVPSZrm },
  2836. { "vdivps", X86::VDIVPSZrmb },
  2837. { "vdivps", X86::VDIVPSZrrk },
  2838. { "vdivps", X86::VDIVPSZrmk },
  2839. { "vdivps", X86::VDIVPSZrrkz },
  2840. { "vdivps", X86::VDIVPSZrmkz },
  2841. { "vdivps", X86::VDIVPSZrmbk },
  2842. { "vdivps", X86::VDIVPSZrmbkz },
  2843. { "vdivsd", X86::VDIVSDrr },
  2844. { "vdivsd", X86::VDIVSDrm },
  2845. { "vdivsd", X86::VDIVSDZrr },
  2846. { "vdivsd", X86::VDIVSDZrm },
  2847. { "vdivss", X86::VDIVSSrr },
  2848. { "vdivss", X86::VDIVSSrm },
  2849. { "vdivss", X86::VDIVSSZrr },
  2850. { "vdivss", X86::VDIVSSZrm },
  2851. { "vdppd", X86::VDPPDrri },
  2852. { "vdppd", X86::VDPPDrmi },
  2853. { "vdpps", X86::VDPPSrri },
  2854. { "vdpps", X86::VDPPSrmi },
  2855. { "vdpps", X86::VDPPSYrri },
  2856. { "vdpps", X86::VDPPSYrmi },
  2857. { "verr", X86::VERRr },
  2858. { "verr", X86::VERRm },
  2859. { "verw", X86::VERWr },
  2860. { "verw", X86::VERWm },
  2861. { "vextractf128", X86::VEXTRACTF128rr },
  2862. { "vextractf128", X86::VEXTRACTF128mr },
  2863. { "vextractf32x4", X86::VEXTRACTF32x4rr },
  2864. { "vextractf32x4", X86::VEXTRACTF32x4rm },
  2865. { "vextractf64x4", X86::VEXTRACTF64x4rr },
  2866. { "vextractf64x4", X86::VEXTRACTF64x4rm },
  2867. { "vextracti128", X86::VEXTRACTI128rr },
  2868. { "vextracti128", X86::VEXTRACTI128mr },
  2869. { "vextracti32x4", X86::VEXTRACTI32x4rr },
  2870. { "vextracti32x4", X86::VEXTRACTI32x4rm },
  2871. { "vextracti64x4", X86::VEXTRACTI64x4rr },
  2872. { "vextracti64x4", X86::VEXTRACTI64x4rm },
  2873. { "vextractps", X86::VEXTRACTPSzrr },
  2874. { "vextractps", X86::VEXTRACTPSrr },
  2875. { "vextractps", X86::VEXTRACTPSmr },
  2876. { "vextractps", X86::VEXTRACTPSzmr },
  2877. { "vfmadd132pd", X86::VFMADDPDr132r },
  2878. { "vfmadd132pd", X86::VFMADDPDr132m },
  2879. { "vfmadd132pd", X86::VFMADDPDr132rY },
  2880. { "vfmadd132pd", X86::VFMADDPDr132mY },
  2881. { "vfmadd132pd", X86::VFMADD132PDZm },
  2882. { "vfmadd132pd", X86::VFMADD132PDZmb },
  2883. { "vfmadd132ps", X86::VFMADDPSr132r },
  2884. { "vfmadd132ps", X86::VFMADDPSr132m },
  2885. { "vfmadd132ps", X86::VFMADDPSr132rY },
  2886. { "vfmadd132ps", X86::VFMADDPSr132mY },
  2887. { "vfmadd132ps", X86::VFMADD132PSZm },
  2888. { "vfmadd132ps", X86::VFMADD132PSZmb },
  2889. { "vfmadd132sd", X86::VFMADDSDr132r },
  2890. { "vfmadd132sd", X86::VFMADDSDr132m },
  2891. { "vfmadd132ss", X86::VFMADDSSr132r },
  2892. { "vfmadd132ss", X86::VFMADDSSr132m },
  2893. { "vfmadd213pd", X86::VFMADDPDr213r },
  2894. { "vfmadd213pd", X86::VFMADDPDr213m },
  2895. { "vfmadd213pd", X86::VFMADDPDr213rY },
  2896. { "vfmadd213pd", X86::VFMADDPDr213mY },
  2897. { "vfmadd213pd", X86::VFMADD213PDZr },
  2898. { "vfmadd213pd", X86::VFMADD213PDZm },
  2899. { "vfmadd213pd", X86::VFMADD213PDZmb },
  2900. { "vfmadd213pd", X86::VFMADD213PDZrk },
  2901. { "vfmadd213pd", X86::VFMADD213PDZrkz },
  2902. { "vfmadd213ps", X86::VFMADDPSr213r },
  2903. { "vfmadd213ps", X86::VFMADDPSr213m },
  2904. { "vfmadd213ps", X86::VFMADDPSr213rY },
  2905. { "vfmadd213ps", X86::VFMADDPSr213mY },
  2906. { "vfmadd213ps", X86::VFMADD213PSZr },
  2907. { "vfmadd213ps", X86::VFMADD213PSZm },
  2908. { "vfmadd213ps", X86::VFMADD213PSZmb },
  2909. { "vfmadd213ps", X86::VFMADD213PSZrk },
  2910. { "vfmadd213ps", X86::VFMADD213PSZrkz },
  2911. { "vfmadd213sd", X86::VFMADDSDr213r },
  2912. { "vfmadd213sd", X86::VFMADDSDr213m },
  2913. { "vfmadd213sd", X86::VFMADDSDZr },
  2914. { "vfmadd213sd", X86::VFMADDSDZm },
  2915. { "vfmadd213ss", X86::VFMADDSSr213r },
  2916. { "vfmadd213ss", X86::VFMADDSSr213m },
  2917. { "vfmadd213ss", X86::VFMADDSSZr },
  2918. { "vfmadd213ss", X86::VFMADDSSZm },
  2919. { "vfmadd231pd", X86::VFMADDPDr231r },
  2920. { "vfmadd231pd", X86::VFMADDPDr231m },
  2921. { "vfmadd231pd", X86::VFMADDPDr231rY },
  2922. { "vfmadd231pd", X86::VFMADDPDr231mY },
  2923. { "vfmadd231ps", X86::VFMADDPSr231r },
  2924. { "vfmadd231ps", X86::VFMADDPSr231m },
  2925. { "vfmadd231ps", X86::VFMADDPSr231rY },
  2926. { "vfmadd231ps", X86::VFMADDPSr231mY },
  2927. { "vfmadd231sd", X86::VFMADDSDr231r },
  2928. { "vfmadd231sd", X86::VFMADDSDr231m },
  2929. { "vfmadd231ss", X86::VFMADDSSr231r },
  2930. { "vfmadd231ss", X86::VFMADDSSr231m },
  2931. { "vfmaddpd", X86::VFMADDPD4rr },
  2932. { "vfmaddpd", X86::VFMADDPD4rm },
  2933. { "vfmaddpd", X86::VFMADDPD4mr },
  2934. { "vfmaddpd", X86::VFMADDPD4rrY },
  2935. { "vfmaddpd", X86::VFMADDPD4rmY },
  2936. { "vfmaddpd", X86::VFMADDPD4mrY },
  2937. { "vfmaddps", X86::VFMADDPS4rr },
  2938. { "vfmaddps", X86::VFMADDPS4rm },
  2939. { "vfmaddps", X86::VFMADDPS4mr },
  2940. { "vfmaddps", X86::VFMADDPS4rrY },
  2941. { "vfmaddps", X86::VFMADDPS4rmY },
  2942. { "vfmaddps", X86::VFMADDPS4mrY },
  2943. { "vfmaddsd", X86::VFMADDSD4rr },
  2944. { "vfmaddsd", X86::VFMADDSD4rm },
  2945. { "vfmaddsd", X86::VFMADDSD4mr },
  2946. { "vfmaddss", X86::VFMADDSS4rr },
  2947. { "vfmaddss", X86::VFMADDSS4rm },
  2948. { "vfmaddss", X86::VFMADDSS4mr },
  2949. { "vfmaddsub132pd", X86::VFMADDSUBPDr132r },
  2950. { "vfmaddsub132pd", X86::VFMADDSUBPDr132m },
  2951. { "vfmaddsub132pd", X86::VFMADDSUBPDr132rY },
  2952. { "vfmaddsub132pd", X86::VFMADDSUBPDr132mY },
  2953. { "vfmaddsub132pd", X86::VFMADDSUB132PDZm },
  2954. { "vfmaddsub132pd", X86::VFMADDSUB132PDZmb },
  2955. { "vfmaddsub132ps", X86::VFMADDSUBPSr132r },
  2956. { "vfmaddsub132ps", X86::VFMADDSUBPSr132m },
  2957. { "vfmaddsub132ps", X86::VFMADDSUBPSr132rY },
  2958. { "vfmaddsub132ps", X86::VFMADDSUBPSr132mY },
  2959. { "vfmaddsub132ps", X86::VFMADDSUB132PSZm },
  2960. { "vfmaddsub132ps", X86::VFMADDSUB132PSZmb },
  2961. { "vfmaddsub213pd", X86::VFMADDSUBPDr213r },
  2962. { "vfmaddsub213pd", X86::VFMADDSUBPDr213m },
  2963. { "vfmaddsub213pd", X86::VFMADDSUBPDr213rY },
  2964. { "vfmaddsub213pd", X86::VFMADDSUBPDr213mY },
  2965. { "vfmaddsub213pd", X86::VFMADDSUB213PDZr },
  2966. { "vfmaddsub213pd", X86::VFMADDSUB213PDZm },
  2967. { "vfmaddsub213pd", X86::VFMADDSUB213PDZmb },
  2968. { "vfmaddsub213pd", X86::VFMADDSUB213PDZrk },
  2969. { "vfmaddsub213pd", X86::VFMADDSUB213PDZrkz },
  2970. { "vfmaddsub213ps", X86::VFMADDSUBPSr213r },
  2971. { "vfmaddsub213ps", X86::VFMADDSUBPSr213m },
  2972. { "vfmaddsub213ps", X86::VFMADDSUBPSr213rY },
  2973. { "vfmaddsub213ps", X86::VFMADDSUBPSr213mY },
  2974. { "vfmaddsub213ps", X86::VFMADDSUB213PSZr },
  2975. { "vfmaddsub213ps", X86::VFMADDSUB213PSZm },
  2976. { "vfmaddsub213ps", X86::VFMADDSUB213PSZmb },
  2977. { "vfmaddsub213ps", X86::VFMADDSUB213PSZrk },
  2978. { "vfmaddsub213ps", X86::VFMADDSUB213PSZrkz },
  2979. { "vfmaddsub231pd", X86::VFMADDSUBPDr231r },
  2980. { "vfmaddsub231pd", X86::VFMADDSUBPDr231m },
  2981. { "vfmaddsub231pd", X86::VFMADDSUBPDr231rY },
  2982. { "vfmaddsub231pd", X86::VFMADDSUBPDr231mY },
  2983. { "vfmaddsub231ps", X86::VFMADDSUBPSr231r },
  2984. { "vfmaddsub231ps", X86::VFMADDSUBPSr231m },
  2985. { "vfmaddsub231ps", X86::VFMADDSUBPSr231rY },
  2986. { "vfmaddsub231ps", X86::VFMADDSUBPSr231mY },
  2987. { "vfmaddsubpd", X86::VFMADDSUBPD4rr },
  2988. { "vfmaddsubpd", X86::VFMADDSUBPD4rm },
  2989. { "vfmaddsubpd", X86::VFMADDSUBPD4mr },
  2990. { "vfmaddsubpd", X86::VFMADDSUBPD4rrY },
  2991. { "vfmaddsubpd", X86::VFMADDSUBPD4rmY },
  2992. { "vfmaddsubpd", X86::VFMADDSUBPD4mrY },
  2993. { "vfmaddsubps", X86::VFMADDSUBPS4rr },
  2994. { "vfmaddsubps", X86::VFMADDSUBPS4rm },
  2995. { "vfmaddsubps", X86::VFMADDSUBPS4mr },
  2996. { "vfmaddsubps", X86::VFMADDSUBPS4rrY },
  2997. { "vfmaddsubps", X86::VFMADDSUBPS4rmY },
  2998. { "vfmaddsubps", X86::VFMADDSUBPS4mrY },
  2999. { "vfmsub132pd", X86::VFMSUBPDr132r },
  3000. { "vfmsub132pd", X86::VFMSUBPDr132m },
  3001. { "vfmsub132pd", X86::VFMSUBPDr132rY },
  3002. { "vfmsub132pd", X86::VFMSUBPDr132mY },
  3003. { "vfmsub132pd", X86::VFMSUB132PDZm },
  3004. { "vfmsub132pd", X86::VFMSUB132PDZmb },
  3005. { "vfmsub132ps", X86::VFMSUBPSr132r },
  3006. { "vfmsub132ps", X86::VFMSUBPSr132m },
  3007. { "vfmsub132ps", X86::VFMSUBPSr132rY },
  3008. { "vfmsub132ps", X86::VFMSUBPSr132mY },
  3009. { "vfmsub132ps", X86::VFMSUB132PSZm },
  3010. { "vfmsub132ps", X86::VFMSUB132PSZmb },
  3011. { "vfmsub132sd", X86::VFMSUBSDr132r },
  3012. { "vfmsub132sd", X86::VFMSUBSDr132m },
  3013. { "vfmsub132ss", X86::VFMSUBSSr132r },
  3014. { "vfmsub132ss", X86::VFMSUBSSr132m },
  3015. { "vfmsub213pd", X86::VFMSUBPDr213r },
  3016. { "vfmsub213pd", X86::VFMSUBPDr213m },
  3017. { "vfmsub213pd", X86::VFMSUBPDr213rY },
  3018. { "vfmsub213pd", X86::VFMSUBPDr213mY },
  3019. { "vfmsub213pd", X86::VFMSUB213PDZr },
  3020. { "vfmsub213pd", X86::VFMSUB213PDZm },
  3021. { "vfmsub213pd", X86::VFMSUB213PDZmb },
  3022. { "vfmsub213pd", X86::VFMSUB213PDZrk },
  3023. { "vfmsub213pd", X86::VFMSUB213PDZrkz },
  3024. { "vfmsub213ps", X86::VFMSUBPSr213r },
  3025. { "vfmsub213ps", X86::VFMSUBPSr213m },
  3026. { "vfmsub213ps", X86::VFMSUBPSr213rY },
  3027. { "vfmsub213ps", X86::VFMSUBPSr213mY },
  3028. { "vfmsub213ps", X86::VFMSUB213PSZr },
  3029. { "vfmsub213ps", X86::VFMSUB213PSZm },
  3030. { "vfmsub213ps", X86::VFMSUB213PSZmb },
  3031. { "vfmsub213ps", X86::VFMSUB213PSZrk },
  3032. { "vfmsub213ps", X86::VFMSUB213PSZrkz },
  3033. { "vfmsub213sd", X86::VFMSUBSDr213r },
  3034. { "vfmsub213sd", X86::VFMSUBSDr213m },
  3035. { "vfmsub213sd", X86::VFMSUBSDZr },
  3036. { "vfmsub213sd", X86::VFMSUBSDZm },
  3037. { "vfmsub213ss", X86::VFMSUBSSr213r },
  3038. { "vfmsub213ss", X86::VFMSUBSSr213m },
  3039. { "vfmsub213ss", X86::VFMSUBSSZr },
  3040. { "vfmsub213ss", X86::VFMSUBSSZm },
  3041. { "vfmsub231pd", X86::VFMSUBPDr231r },
  3042. { "vfmsub231pd", X86::VFMSUBPDr231m },
  3043. { "vfmsub231pd", X86::VFMSUBPDr231rY },
  3044. { "vfmsub231pd", X86::VFMSUBPDr231mY },
  3045. { "vfmsub231ps", X86::VFMSUBPSr231r },
  3046. { "vfmsub231ps", X86::VFMSUBPSr231m },
  3047. { "vfmsub231ps", X86::VFMSUBPSr231rY },
  3048. { "vfmsub231ps", X86::VFMSUBPSr231mY },
  3049. { "vfmsub231sd", X86::VFMSUBSDr231r },
  3050. { "vfmsub231sd", X86::VFMSUBSDr231m },
  3051. { "vfmsub231ss", X86::VFMSUBSSr231r },
  3052. { "vfmsub231ss", X86::VFMSUBSSr231m },
  3053. { "vfmsubadd132pd", X86::VFMSUBADDPDr132r },
  3054. { "vfmsubadd132pd", X86::VFMSUBADDPDr132m },
  3055. { "vfmsubadd132pd", X86::VFMSUBADDPDr132rY },
  3056. { "vfmsubadd132pd", X86::VFMSUBADDPDr132mY },
  3057. { "vfmsubadd132pd", X86::VFMSUBADD132PDZm },
  3058. { "vfmsubadd132pd", X86::VFMSUBADD132PDZmb },
  3059. { "vfmsubadd132ps", X86::VFMSUBADDPSr132r },
  3060. { "vfmsubadd132ps", X86::VFMSUBADDPSr132m },
  3061. { "vfmsubadd132ps", X86::VFMSUBADDPSr132rY },
  3062. { "vfmsubadd132ps", X86::VFMSUBADDPSr132mY },
  3063. { "vfmsubadd132ps", X86::VFMSUBADD132PSZm },
  3064. { "vfmsubadd132ps", X86::VFMSUBADD132PSZmb },
  3065. { "vfmsubadd213pd", X86::VFMSUBADDPDr213r },
  3066. { "vfmsubadd213pd", X86::VFMSUBADDPDr213m },
  3067. { "vfmsubadd213pd", X86::VFMSUBADDPDr213rY },
  3068. { "vfmsubadd213pd", X86::VFMSUBADDPDr213mY },
  3069. { "vfmsubadd213pd", X86::VFMSUBADD213PDZr },
  3070. { "vfmsubadd213pd", X86::VFMSUBADD213PDZm },
  3071. { "vfmsubadd213pd", X86::VFMSUBADD213PDZmb },
  3072. { "vfmsubadd213pd", X86::VFMSUBADD213PDZrk },
  3073. { "vfmsubadd213pd", X86::VFMSUBADD213PDZrkz },
  3074. { "vfmsubadd213ps", X86::VFMSUBADDPSr213r },
  3075. { "vfmsubadd213ps", X86::VFMSUBADDPSr213m },
  3076. { "vfmsubadd213ps", X86::VFMSUBADDPSr213rY },
  3077. { "vfmsubadd213ps", X86::VFMSUBADDPSr213mY },
  3078. { "vfmsubadd213ps", X86::VFMSUBADD213PSZr },
  3079. { "vfmsubadd213ps", X86::VFMSUBADD213PSZm },
  3080. { "vfmsubadd213ps", X86::VFMSUBADD213PSZmb },
  3081. { "vfmsubadd213ps", X86::VFMSUBADD213PSZrk },
  3082. { "vfmsubadd213ps", X86::VFMSUBADD213PSZrkz },
  3083. { "vfmsubadd231pd", X86::VFMSUBADDPDr231r },
  3084. { "vfmsubadd231pd", X86::VFMSUBADDPDr231m },
  3085. { "vfmsubadd231pd", X86::VFMSUBADDPDr231rY },
  3086. { "vfmsubadd231pd", X86::VFMSUBADDPDr231mY },
  3087. { "vfmsubadd231ps", X86::VFMSUBADDPSr231r },
  3088. { "vfmsubadd231ps", X86::VFMSUBADDPSr231m },
  3089. { "vfmsubadd231ps", X86::VFMSUBADDPSr231rY },
  3090. { "vfmsubadd231ps", X86::VFMSUBADDPSr231mY },
  3091. { "vfmsubaddpd", X86::VFMSUBADDPD4rr },
  3092. { "vfmsubaddpd", X86::VFMSUBADDPD4rm },
  3093. { "vfmsubaddpd", X86::VFMSUBADDPD4mr },
  3094. { "vfmsubaddpd", X86::VFMSUBADDPD4rrY },
  3095. { "vfmsubaddpd", X86::VFMSUBADDPD4rmY },
  3096. { "vfmsubaddpd", X86::VFMSUBADDPD4mrY },
  3097. { "vfmsubaddps", X86::VFMSUBADDPS4rr },
  3098. { "vfmsubaddps", X86::VFMSUBADDPS4rm },
  3099. { "vfmsubaddps", X86::VFMSUBADDPS4mr },
  3100. { "vfmsubaddps", X86::VFMSUBADDPS4rrY },
  3101. { "vfmsubaddps", X86::VFMSUBADDPS4rmY },
  3102. { "vfmsubaddps", X86::VFMSUBADDPS4mrY },
  3103. { "vfmsubpd", X86::VFMSUBPD4rr },
  3104. { "vfmsubpd", X86::VFMSUBPD4rm },
  3105. { "vfmsubpd", X86::VFMSUBPD4mr },
  3106. { "vfmsubpd", X86::VFMSUBPD4rrY },
  3107. { "vfmsubpd", X86::VFMSUBPD4rmY },
  3108. { "vfmsubpd", X86::VFMSUBPD4mrY },
  3109. { "vfmsubps", X86::VFMSUBPS4rr },
  3110. { "vfmsubps", X86::VFMSUBPS4rm },
  3111. { "vfmsubps", X86::VFMSUBPS4mr },
  3112. { "vfmsubps", X86::VFMSUBPS4rrY },
  3113. { "vfmsubps", X86::VFMSUBPS4rmY },
  3114. { "vfmsubps", X86::VFMSUBPS4mrY },
  3115. { "vfmsubsd", X86::VFMSUBSD4rr },
  3116. { "vfmsubsd", X86::VFMSUBSD4rm },
  3117. { "vfmsubsd", X86::VFMSUBSD4mr },
  3118. { "vfmsubss", X86::VFMSUBSS4rr },
  3119. { "vfmsubss", X86::VFMSUBSS4rm },
  3120. { "vfmsubss", X86::VFMSUBSS4mr },
  3121. { "vfnmadd132pd", X86::VFNMADDPDr132r },
  3122. { "vfnmadd132pd", X86::VFNMADDPDr132m },
  3123. { "vfnmadd132pd", X86::VFNMADDPDr132rY },
  3124. { "vfnmadd132pd", X86::VFNMADDPDr132mY },
  3125. { "vfnmadd132pd", X86::VFNMADD132PDZm },
  3126. { "vfnmadd132pd", X86::VFNMADD132PDZmb },
  3127. { "vfnmadd132ps", X86::VFNMADDPSr132r },
  3128. { "vfnmadd132ps", X86::VFNMADDPSr132m },
  3129. { "vfnmadd132ps", X86::VFNMADDPSr132rY },
  3130. { "vfnmadd132ps", X86::VFNMADDPSr132mY },
  3131. { "vfnmadd132ps", X86::VFNMADD132PSZm },
  3132. { "vfnmadd132ps", X86::VFNMADD132PSZmb },
  3133. { "vfnmadd132sd", X86::VFNMADDSDr132r },
  3134. { "vfnmadd132sd", X86::VFNMADDSDr132m },
  3135. { "vfnmadd132ss", X86::VFNMADDSSr132r },
  3136. { "vfnmadd132ss", X86::VFNMADDSSr132m },
  3137. { "vfnmadd213pd", X86::VFNMADDPDr213r },
  3138. { "vfnmadd213pd", X86::VFNMADDPDr213m },
  3139. { "vfnmadd213pd", X86::VFNMADDPDr213rY },
  3140. { "vfnmadd213pd", X86::VFNMADDPDr213mY },
  3141. { "vfnmadd213pd", X86::VFNMADD213PDZr },
  3142. { "vfnmadd213pd", X86::VFNMADD213PDZm },
  3143. { "vfnmadd213pd", X86::VFNMADD213PDZmb },
  3144. { "vfnmadd213pd", X86::VFNMADD213PDZrk },
  3145. { "vfnmadd213pd", X86::VFNMADD213PDZrkz },
  3146. { "vfnmadd213ps", X86::VFNMADDPSr213r },
  3147. { "vfnmadd213ps", X86::VFNMADDPSr213m },
  3148. { "vfnmadd213ps", X86::VFNMADDPSr213rY },
  3149. { "vfnmadd213ps", X86::VFNMADDPSr213mY },
  3150. { "vfnmadd213ps", X86::VFNMADD213PSZr },
  3151. { "vfnmadd213ps", X86::VFNMADD213PSZm },
  3152. { "vfnmadd213ps", X86::VFNMADD213PSZmb },
  3153. { "vfnmadd213ps", X86::VFNMADD213PSZrk },
  3154. { "vfnmadd213ps", X86::VFNMADD213PSZrkz },
  3155. { "vfnmadd213sd", X86::VFNMADDSDr213r },
  3156. { "vfnmadd213sd", X86::VFNMADDSDr213m },
  3157. { "vfnmadd213sd", X86::VFNMADDSDZr },
  3158. { "vfnmadd213sd", X86::VFNMADDSDZm },
  3159. { "vfnmadd213ss", X86::VFNMADDSSr213r },
  3160. { "vfnmadd213ss", X86::VFNMADDSSr213m },
  3161. { "vfnmadd213ss", X86::VFNMADDSSZr },
  3162. { "vfnmadd213ss", X86::VFNMADDSSZm },
  3163. { "vfnmadd231pd", X86::VFNMADDPDr231r },
  3164. { "vfnmadd231pd", X86::VFNMADDPDr231m },
  3165. { "vfnmadd231pd", X86::VFNMADDPDr231rY },
  3166. { "vfnmadd231pd", X86::VFNMADDPDr231mY },
  3167. { "vfnmadd231ps", X86::VFNMADDPSr231r },
  3168. { "vfnmadd231ps", X86::VFNMADDPSr231m },
  3169. { "vfnmadd231ps", X86::VFNMADDPSr231rY },
  3170. { "vfnmadd231ps", X86::VFNMADDPSr231mY },
  3171. { "vfnmadd231sd", X86::VFNMADDSDr231r },
  3172. { "vfnmadd231sd", X86::VFNMADDSDr231m },
  3173. { "vfnmadd231ss", X86::VFNMADDSSr231r },
  3174. { "vfnmadd231ss", X86::VFNMADDSSr231m },
  3175. { "vfnmaddpd", X86::VFNMADDPD4rr },
  3176. { "vfnmaddpd", X86::VFNMADDPD4rm },
  3177. { "vfnmaddpd", X86::VFNMADDPD4mr },
  3178. { "vfnmaddpd", X86::VFNMADDPD4rrY },
  3179. { "vfnmaddpd", X86::VFNMADDPD4rmY },
  3180. { "vfnmaddpd", X86::VFNMADDPD4mrY },
  3181. { "vfnmaddps", X86::VFNMADDPS4rr },
  3182. { "vfnmaddps", X86::VFNMADDPS4rm },
  3183. { "vfnmaddps", X86::VFNMADDPS4mr },
  3184. { "vfnmaddps", X86::VFNMADDPS4rrY },
  3185. { "vfnmaddps", X86::VFNMADDPS4rmY },
  3186. { "vfnmaddps", X86::VFNMADDPS4mrY },
  3187. { "vfnmaddsd", X86::VFNMADDSD4rr },
  3188. { "vfnmaddsd", X86::VFNMADDSD4rm },
  3189. { "vfnmaddsd", X86::VFNMADDSD4mr },
  3190. { "vfnmaddss", X86::VFNMADDSS4rr },
  3191. { "vfnmaddss", X86::VFNMADDSS4rm },
  3192. { "vfnmaddss", X86::VFNMADDSS4mr },
  3193. { "vfnmsub132pd", X86::VFNMSUBPDr132r },
  3194. { "vfnmsub132pd", X86::VFNMSUBPDr132m },
  3195. { "vfnmsub132pd", X86::VFNMSUBPDr132rY },
  3196. { "vfnmsub132pd", X86::VFNMSUBPDr132mY },
  3197. { "vfnmsub132pd", X86::VFNMSUB132PDZm },
  3198. { "vfnmsub132pd", X86::VFNMSUB132PDZmb },
  3199. { "vfnmsub132ps", X86::VFNMSUBPSr132r },
  3200. { "vfnmsub132ps", X86::VFNMSUBPSr132m },
  3201. { "vfnmsub132ps", X86::VFNMSUBPSr132rY },
  3202. { "vfnmsub132ps", X86::VFNMSUBPSr132mY },
  3203. { "vfnmsub132ps", X86::VFNMSUB132PSZm },
  3204. { "vfnmsub132ps", X86::VFNMSUB132PSZmb },
  3205. { "vfnmsub132sd", X86::VFNMSUBSDr132r },
  3206. { "vfnmsub132sd", X86::VFNMSUBSDr132m },
  3207. { "vfnmsub132ss", X86::VFNMSUBSSr132r },
  3208. { "vfnmsub132ss", X86::VFNMSUBSSr132m },
  3209. { "vfnmsub213pd", X86::VFNMSUBPDr213r },
  3210. { "vfnmsub213pd", X86::VFNMSUBPDr213m },
  3211. { "vfnmsub213pd", X86::VFNMSUBPDr213rY },
  3212. { "vfnmsub213pd", X86::VFNMSUBPDr213mY },
  3213. { "vfnmsub213pd", X86::VFNMSUB213PDZr },
  3214. { "vfnmsub213pd", X86::VFNMSUB213PDZm },
  3215. { "vfnmsub213pd", X86::VFNMSUB213PDZmb },
  3216. { "vfnmsub213pd", X86::VFNMSUB213PDZrk },
  3217. { "vfnmsub213pd", X86::VFNMSUB213PDZrkz },
  3218. { "vfnmsub213ps", X86::VFNMSUBPSr213r },
  3219. { "vfnmsub213ps", X86::VFNMSUBPSr213m },
  3220. { "vfnmsub213ps", X86::VFNMSUBPSr213rY },
  3221. { "vfnmsub213ps", X86::VFNMSUBPSr213mY },
  3222. { "vfnmsub213ps", X86::VFNMSUB213PSZr },
  3223. { "vfnmsub213ps", X86::VFNMSUB213PSZm },
  3224. { "vfnmsub213ps", X86::VFNMSUB213PSZmb },
  3225. { "vfnmsub213ps", X86::VFNMSUB213PSZrk },
  3226. { "vfnmsub213ps", X86::VFNMSUB213PSZrkz },
  3227. { "vfnmsub213sd", X86::VFNMSUBSDr213r },
  3228. { "vfnmsub213sd", X86::VFNMSUBSDr213m },
  3229. { "vfnmsub213sd", X86::VFNMSUBSDZr },
  3230. { "vfnmsub213sd", X86::VFNMSUBSDZm },
  3231. { "vfnmsub213ss", X86::VFNMSUBSSr213r },
  3232. { "vfnmsub213ss", X86::VFNMSUBSSr213m },
  3233. { "vfnmsub213ss", X86::VFNMSUBSSZr },
  3234. { "vfnmsub213ss", X86::VFNMSUBSSZm },
  3235. { "vfnmsub231pd", X86::VFNMSUBPDr231r },
  3236. { "vfnmsub231pd", X86::VFNMSUBPDr231m },
  3237. { "vfnmsub231pd", X86::VFNMSUBPDr231rY },
  3238. { "vfnmsub231pd", X86::VFNMSUBPDr231mY },
  3239. { "vfnmsub231ps", X86::VFNMSUBPSr231r },
  3240. { "vfnmsub231ps", X86::VFNMSUBPSr231m },
  3241. { "vfnmsub231ps", X86::VFNMSUBPSr231rY },
  3242. { "vfnmsub231ps", X86::VFNMSUBPSr231mY },
  3243. { "vfnmsub231sd", X86::VFNMSUBSDr231r },
  3244. { "vfnmsub231sd", X86::VFNMSUBSDr231m },
  3245. { "vfnmsub231ss", X86::VFNMSUBSSr231r },
  3246. { "vfnmsub231ss", X86::VFNMSUBSSr231m },
  3247. { "vfnmsubpd", X86::VFNMSUBPD4rr },
  3248. { "vfnmsubpd", X86::VFNMSUBPD4rm },
  3249. { "vfnmsubpd", X86::VFNMSUBPD4mr },
  3250. { "vfnmsubpd", X86::VFNMSUBPD4rrY },
  3251. { "vfnmsubpd", X86::VFNMSUBPD4rmY },
  3252. { "vfnmsubpd", X86::VFNMSUBPD4mrY },
  3253. { "vfnmsubps", X86::VFNMSUBPS4rr },
  3254. { "vfnmsubps", X86::VFNMSUBPS4rm },
  3255. { "vfnmsubps", X86::VFNMSUBPS4mr },
  3256. { "vfnmsubps", X86::VFNMSUBPS4rrY },
  3257. { "vfnmsubps", X86::VFNMSUBPS4rmY },
  3258. { "vfnmsubps", X86::VFNMSUBPS4mrY },
  3259. { "vfnmsubsd", X86::VFNMSUBSD4rr },
  3260. { "vfnmsubsd", X86::VFNMSUBSD4rm },
  3261. { "vfnmsubsd", X86::VFNMSUBSD4mr },
  3262. { "vfnmsubss", X86::VFNMSUBSS4rr },
  3263. { "vfnmsubss", X86::VFNMSUBSS4rm },
  3264. { "vfnmsubss", X86::VFNMSUBSS4mr },
  3265. { "vfrczpd", X86::VFRCZPDrr },
  3266. { "vfrczpd", X86::VFRCZPDrm },
  3267. { "vfrczpd", X86::VFRCZPDrrY },
  3268. { "vfrczpd", X86::VFRCZPDrmY },
  3269. { "vfrczps", X86::VFRCZPSrr },
  3270. { "vfrczps", X86::VFRCZPSrm },
  3271. { "vfrczps", X86::VFRCZPSrrY },
  3272. { "vfrczps", X86::VFRCZPSrmY },
  3273. { "vfrczsd", X86::VFRCZSDrr },
  3274. { "vfrczsd", X86::VFRCZSDrm },
  3275. { "vfrczss", X86::VFRCZSSrr },
  3276. { "vfrczss", X86::VFRCZSSrm },
  3277. { "vgatherdpd", X86::VGATHERDPDrm },
  3278. { "vgatherdpd", X86::VGATHERDPDYrm },
  3279. { "vgatherdpd", X86::VGATHERDPDZrm },
  3280. { "vgatherdps", X86::VGATHERDPSrm },
  3281. { "vgatherdps", X86::VGATHERDPSYrm },
  3282. { "vgatherdps", X86::VGATHERDPSZrm },
  3283. { "vgatherpf0dpd", X86::VGATHERPF0DPDm },
  3284. { "vgatherpf0dps", X86::VGATHERPF0DPSm },
  3285. { "vgatherpf0qpd", X86::VGATHERPF0QPDm },
  3286. { "vgatherpf0qps", X86::VGATHERPF0QPSm },
  3287. { "vgatherpf1dpd", X86::VGATHERPF1DPDm },
  3288. { "vgatherpf1dps", X86::VGATHERPF1DPSm },
  3289. { "vgatherpf1qpd", X86::VGATHERPF1QPDm },
  3290. { "vgatherpf1qps", X86::VGATHERPF1QPSm },
  3291. { "vgatherqpd", X86::VGATHERQPDrm },
  3292. { "vgatherqpd", X86::VGATHERQPDYrm },
  3293. { "vgatherqpd", X86::VGATHERQPDZrm },
  3294. { "vgatherqps", X86::VGATHERQPSrm },
  3295. { "vgatherqps", X86::VGATHERQPSYrm },
  3296. { "vgatherqps", X86::VGATHERQPSZrm },
  3297. { "vhaddpd", X86::VHADDPDrr },
  3298. { "vhaddpd", X86::VHADDPDrm },
  3299. { "vhaddpd", X86::VHADDPDYrr },
  3300. { "vhaddpd", X86::VHADDPDYrm },
  3301. { "vhaddps", X86::VHADDPSrr },
  3302. { "vhaddps", X86::VHADDPSrm },
  3303. { "vhaddps", X86::VHADDPSYrr },
  3304. { "vhaddps", X86::VHADDPSYrm },
  3305. { "vhsubpd", X86::VHSUBPDrr },
  3306. { "vhsubpd", X86::VHSUBPDrm },
  3307. { "vhsubpd", X86::VHSUBPDYrr },
  3308. { "vhsubpd", X86::VHSUBPDYrm },
  3309. { "vhsubps", X86::VHSUBPSrr },
  3310. { "vhsubps", X86::VHSUBPSrm },
  3311. { "vhsubps", X86::VHSUBPSYrr },
  3312. { "vhsubps", X86::VHSUBPSYrm },
  3313. { "vinsertf128", X86::VINSERTF128rr },
  3314. { "vinsertf128", X86::VINSERTF128rm },
  3315. { "vinsertf32x4", X86::VINSERTF32x4rr },
  3316. { "vinsertf32x4", X86::VINSERTF32x4rm },
  3317. { "vinsertf64x4", X86::VINSERTF64x4rr },
  3318. { "vinsertf64x4", X86::VINSERTF64x4rm },
  3319. { "vinserti128", X86::VINSERTI128rr },
  3320. { "vinserti128", X86::VINSERTI128rm },
  3321. { "vinserti32x4", X86::VINSERTI32x4rr },
  3322. { "vinserti32x4", X86::VINSERTI32x4rm },
  3323. { "vinserti64x4", X86::VINSERTI64x4rr },
  3324. { "vinserti64x4", X86::VINSERTI64x4rm },
  3325. { "vinsertps", X86::VINSERTPSrr },
  3326. { "vinsertps", X86::VINSERTPSrm },
  3327. { "vinsertps", X86::VINSERTPSzrr },
  3328. { "vinsertps", X86::VINSERTPSzrm },
  3329. { "vlddqu", X86::VLDDQUrm },
  3330. { "vlddqu", X86::VLDDQUYrm },
  3331. { "vldmxcsr", X86::VLDMXCSR },
  3332. { "vmaskmovdqu", X86::VMASKMOVDQU },
  3333. { "vmaskmovdqu", X86::VMASKMOVDQU64 },
  3334. { "vmaskmovpd", X86::VMASKMOVPDrm },
  3335. { "vmaskmovpd", X86::VMASKMOVPDYrm },
  3336. { "vmaskmovpd", X86::VMASKMOVPDmr },
  3337. { "vmaskmovpd", X86::VMASKMOVPDYmr },
  3338. { "vmaskmovps", X86::VMASKMOVPSrm },
  3339. { "vmaskmovps", X86::VMASKMOVPSYrm },
  3340. { "vmaskmovps", X86::VMASKMOVPSmr },
  3341. { "vmaskmovps", X86::VMASKMOVPSYmr },
  3342. { "vmaxpd", X86::VMAXPDrr },
  3343. { "vmaxpd", X86::VMAXPDrm },
  3344. { "vmaxpd", X86::VMAXPDYrr },
  3345. { "vmaxpd", X86::VMAXPDYrm },
  3346. { "vmaxpd", X86::VMAXPDZrr },
  3347. { "vmaxpd", X86::VMAXPDZrm },
  3348. { "vmaxpd", X86::VMAXPDZrmb },
  3349. { "vmaxpd", X86::VMAXPDZrrk },
  3350. { "vmaxpd", X86::VMAXPDZrmk },
  3351. { "vmaxpd", X86::VMAXPDZrrkz },
  3352. { "vmaxpd", X86::VMAXPDZrmkz },
  3353. { "vmaxpd", X86::VMAXPDZrmbk },
  3354. { "vmaxpd", X86::VMAXPDZrmbkz },
  3355. { "vmaxps", X86::VMAXPSrr },
  3356. { "vmaxps", X86::VMAXPSrm },
  3357. { "vmaxps", X86::VMAXPSYrr },
  3358. { "vmaxps", X86::VMAXPSYrm },
  3359. { "vmaxps", X86::VMAXPSZrr },
  3360. { "vmaxps", X86::VMAXPSZrm },
  3361. { "vmaxps", X86::VMAXPSZrmb },
  3362. { "vmaxps", X86::VMAXPSZrrk },
  3363. { "vmaxps", X86::VMAXPSZrmk },
  3364. { "vmaxps", X86::VMAXPSZrrkz },
  3365. { "vmaxps", X86::VMAXPSZrmkz },
  3366. { "vmaxps", X86::VMAXPSZrmbk },
  3367. { "vmaxps", X86::VMAXPSZrmbkz },
  3368. { "vmaxsd", X86::VMAXSDrr },
  3369. { "vmaxsd", X86::VMAXSDrm },
  3370. { "vmaxsd", X86::VMAXSDZrr },
  3371. { "vmaxsd", X86::VMAXSDZrm },
  3372. { "vmaxss", X86::VMAXSSrr },
  3373. { "vmaxss", X86::VMAXSSrm },
  3374. { "vmaxss", X86::VMAXSSZrr },
  3375. { "vmaxss", X86::VMAXSSZrm },
  3376. { "vmcall", X86::VMCALL },
  3377. { "vmclear", X86::VMCLEARm },
  3378. { "vmfunc", X86::VMFUNC },
  3379. { "vminpd", X86::VMINPDrr },
  3380. { "vminpd", X86::VMINPDrm },
  3381. { "vminpd", X86::VMINPDYrr },
  3382. { "vminpd", X86::VMINPDYrm },
  3383. { "vminpd", X86::VMINPDZrr },
  3384. { "vminpd", X86::VMINPDZrm },
  3385. { "vminpd", X86::VMINPDZrmb },
  3386. { "vminpd", X86::VMINPDZrrk },
  3387. { "vminpd", X86::VMINPDZrmk },
  3388. { "vminpd", X86::VMINPDZrrkz },
  3389. { "vminpd", X86::VMINPDZrmkz },
  3390. { "vminpd", X86::VMINPDZrmbk },
  3391. { "vminpd", X86::VMINPDZrmbkz },
  3392. { "vminps", X86::VMINPSrr },
  3393. { "vminps", X86::VMINPSrm },
  3394. { "vminps", X86::VMINPSYrr },
  3395. { "vminps", X86::VMINPSYrm },
  3396. { "vminps", X86::VMINPSZrr },
  3397. { "vminps", X86::VMINPSZrm },
  3398. { "vminps", X86::VMINPSZrmb },
  3399. { "vminps", X86::VMINPSZrrk },
  3400. { "vminps", X86::VMINPSZrmk },
  3401. { "vminps", X86::VMINPSZrrkz },
  3402. { "vminps", X86::VMINPSZrmkz },
  3403. { "vminps", X86::VMINPSZrmbk },
  3404. { "vminps", X86::VMINPSZrmbkz },
  3405. { "vminsd", X86::VMINSDrr },
  3406. { "vminsd", X86::VMINSDrm },
  3407. { "vminsd", X86::VMINSDZrr },
  3408. { "vminsd", X86::VMINSDZrm },
  3409. { "vminss", X86::VMINSSrr },
  3410. { "vminss", X86::VMINSSrm },
  3411. { "vminss", X86::VMINSSZrr },
  3412. { "vminss", X86::VMINSSZrm },
  3413. { "vmlaunch", X86::VMLAUNCH },
  3414. { "vmload", X86::VMLOAD32 },
  3415. { "vmload", X86::VMLOAD64 },
  3416. { "vmmcall", X86::VMMCALL },
  3417. { "vmovapd", X86::VMOVAPDrr },
  3418. { "vmovapd", X86::VMOVAPDrm },
  3419. { "vmovapd", X86::VMOVAPDZ128rr },
  3420. { "vmovapd", X86::VMOVAPDZ128rr_alt },
  3421. { "vmovapd", X86::VMOVAPDZ128rm },
  3422. { "vmovapd", X86::VMOVAPDYrr },
  3423. { "vmovapd", X86::VMOVAPDYrm },
  3424. { "vmovapd", X86::VMOVAPDZ256rr },
  3425. { "vmovapd", X86::VMOVAPDZ256rr_alt },
  3426. { "vmovapd", X86::VMOVAPDZ256rm },
  3427. { "vmovapd", X86::VMOVAPDZrr },
  3428. { "vmovapd", X86::VMOVAPDZrr_alt },
  3429. { "vmovapd", X86::VMOVAPDZrm },
  3430. { "vmovapd", X86::VMOVAPDmr },
  3431. { "vmovapd", X86::VMOVAPDZ128mr },
  3432. { "vmovapd", X86::VMOVAPDYmr },
  3433. { "vmovapd", X86::VMOVAPDZ256mr },
  3434. { "vmovapd", X86::VMOVAPDZmr },
  3435. { "vmovapd", X86::VMOVAPDZ128rrk },
  3436. { "vmovapd", X86::VMOVAPDZ128rrk_alt },
  3437. { "vmovapd", X86::VMOVAPDZ128rmk },
  3438. { "vmovapd", X86::VMOVAPDZ256rrk },
  3439. { "vmovapd", X86::VMOVAPDZ256rrk_alt },
  3440. { "vmovapd", X86::VMOVAPDZ256rmk },
  3441. { "vmovapd", X86::VMOVAPDZrrk },
  3442. { "vmovapd", X86::VMOVAPDZrrk_alt },
  3443. { "vmovapd", X86::VMOVAPDZrmk },
  3444. { "vmovapd", X86::VMOVAPDZ128mrk },
  3445. { "vmovapd", X86::VMOVAPDZ256mrk },
  3446. { "vmovapd", X86::VMOVAPDZmrk },
  3447. { "vmovapd", X86::VMOVAPDZ128rrkz },
  3448. { "vmovapd", X86::VMOVAPDZ128rrkz_alt },
  3449. { "vmovapd", X86::VMOVAPDZ128rmkz },
  3450. { "vmovapd", X86::VMOVAPDZ256rrkz },
  3451. { "vmovapd", X86::VMOVAPDZ256rrkz_alt },
  3452. { "vmovapd", X86::VMOVAPDZ256rmkz },
  3453. { "vmovapd", X86::VMOVAPDZrrkz },
  3454. { "vmovapd", X86::VMOVAPDZrrkz_alt },
  3455. { "vmovapd", X86::VMOVAPDZrmkz },
  3456. { "vmovaps", X86::VMOVAPSrr },
  3457. { "vmovaps", X86::VMOVAPSrm },
  3458. { "vmovaps", X86::VMOVAPSZ128rr },
  3459. { "vmovaps", X86::VMOVAPSZ128rr_alt },
  3460. { "vmovaps", X86::VMOVAPSZ128rm },
  3461. { "vmovaps", X86::VMOVAPSYrr },
  3462. { "vmovaps", X86::VMOVAPSYrm },
  3463. { "vmovaps", X86::VMOVAPSZ256rr },
  3464. { "vmovaps", X86::VMOVAPSZ256rr_alt },
  3465. { "vmovaps", X86::VMOVAPSZ256rm },
  3466. { "vmovaps", X86::VMOVAPSZrr },
  3467. { "vmovaps", X86::VMOVAPSZrr_alt },
  3468. { "vmovaps", X86::VMOVAPSZrm },
  3469. { "vmovaps", X86::VMOVAPSmr },
  3470. { "vmovaps", X86::VMOVAPSZ128mr },
  3471. { "vmovaps", X86::VMOVAPSYmr },
  3472. { "vmovaps", X86::VMOVAPSZ256mr },
  3473. { "vmovaps", X86::VMOVAPSZmr },
  3474. { "vmovaps", X86::VMOVAPSZ128rrk },
  3475. { "vmovaps", X86::VMOVAPSZ128rrk_alt },
  3476. { "vmovaps", X86::VMOVAPSZ128rmk },
  3477. { "vmovaps", X86::VMOVAPSZ256rrk },
  3478. { "vmovaps", X86::VMOVAPSZ256rrk_alt },
  3479. { "vmovaps", X86::VMOVAPSZ256rmk },
  3480. { "vmovaps", X86::VMOVAPSZrrk },
  3481. { "vmovaps", X86::VMOVAPSZrrk_alt },
  3482. { "vmovaps", X86::VMOVAPSZrmk },
  3483. { "vmovaps", X86::VMOVAPSZ128mrk },
  3484. { "vmovaps", X86::VMOVAPSZ256mrk },
  3485. { "vmovaps", X86::VMOVAPSZmrk },
  3486. { "vmovaps", X86::VMOVAPSZ128rrkz },
  3487. { "vmovaps", X86::VMOVAPSZ128rrkz_alt },
  3488. { "vmovaps", X86::VMOVAPSZ128rmkz },
  3489. { "vmovaps", X86::VMOVAPSZ256rrkz },
  3490. { "vmovaps", X86::VMOVAPSZ256rrkz_alt },
  3491. { "vmovaps", X86::VMOVAPSZ256rmkz },
  3492. { "vmovaps", X86::VMOVAPSZrrkz },
  3493. { "vmovaps", X86::VMOVAPSZrrkz_alt },
  3494. { "vmovaps", X86::VMOVAPSZrmkz },
  3495. { "vmovd", X86::VMOVPDI2DIrr },
  3496. { "vmovd", X86::VMOVPDI2DIZrr },
  3497. { "vmovd", X86::VMOVPQIto64rr },
  3498. { "vmovd", X86::VMOVDI2PDIrr },
  3499. { "vmovd", X86::VMOV64toPQIrr },
  3500. { "vmovd", X86::VMOVDI2PDIrm },
  3501. { "vmovd", X86::VMOVDI2PDIZrr },
  3502. { "vmovd", X86::VMOVDI2PDIZrm },
  3503. { "vmovd", X86::VMOVPDI2DImr },
  3504. { "vmovd", X86::VMOVPDI2DIZmr },
  3505. { "vmovddup", X86::VMOVDDUPrr },
  3506. { "vmovddup", X86::VMOVDDUPrm },
  3507. { "vmovddup", X86::VMOVDDUPYrr },
  3508. { "vmovddup", X86::VMOVDDUPYrm },
  3509. { "vmovddup", X86::VMOVDDUPZrr },
  3510. { "vmovddup", X86::VMOVDDUPZrm },
  3511. { "vmovdqa", X86::VMOVDQArr },
  3512. { "vmovdqa", X86::VMOVDQArm },
  3513. { "vmovdqa", X86::VMOVDQAYrr },
  3514. { "vmovdqa", X86::VMOVDQAYrm },
  3515. { "vmovdqa", X86::VMOVDQAmr },
  3516. { "vmovdqa", X86::VMOVDQAYmr },
  3517. { "vmovdqa32", X86::VMOVDQA32Z128rr },
  3518. { "vmovdqa32", X86::VMOVDQA32Z128rr_alt },
  3519. { "vmovdqa32", X86::VMOVDQA32Z128rm },
  3520. { "vmovdqa32", X86::VMOVDQA32Z256rr },
  3521. { "vmovdqa32", X86::VMOVDQA32Z256rr_alt },
  3522. { "vmovdqa32", X86::VMOVDQA32Z256rm },
  3523. { "vmovdqa32", X86::VMOVDQA32Zrr },
  3524. { "vmovdqa32", X86::VMOVDQA32Zrr_alt },
  3525. { "vmovdqa32", X86::VMOVDQA32Zrm },
  3526. { "vmovdqa32", X86::VMOVDQA32Z128mr },
  3527. { "vmovdqa32", X86::VMOVDQA32Z256mr },
  3528. { "vmovdqa32", X86::VMOVDQA32Zmr },
  3529. { "vmovdqa32", X86::VMOVDQA32Z128rrk },
  3530. { "vmovdqa32", X86::VMOVDQA32Z128rrk_alt },
  3531. { "vmovdqa32", X86::VMOVDQA32Z128rmk },
  3532. { "vmovdqa32", X86::VMOVDQA32Z256rrk },
  3533. { "vmovdqa32", X86::VMOVDQA32Z256rrk_alt },
  3534. { "vmovdqa32", X86::VMOVDQA32Z256rmk },
  3535. { "vmovdqa32", X86::VMOVDQA32Zrrk },
  3536. { "vmovdqa32", X86::VMOVDQA32Zrrk_alt },
  3537. { "vmovdqa32", X86::VMOVDQA32Zrmk },
  3538. { "vmovdqa32", X86::VMOVDQA32Z128mrk },
  3539. { "vmovdqa32", X86::VMOVDQA32Z256mrk },
  3540. { "vmovdqa32", X86::VMOVDQA32Zmrk },
  3541. { "vmovdqa32", X86::VMOVDQA32Z128rrkz },
  3542. { "vmovdqa32", X86::VMOVDQA32Z128rrkz_alt },
  3543. { "vmovdqa32", X86::VMOVDQA32Z128rmkz },
  3544. { "vmovdqa32", X86::VMOVDQA32Z256rrkz },
  3545. { "vmovdqa32", X86::VMOVDQA32Z256rrkz_alt },
  3546. { "vmovdqa32", X86::VMOVDQA32Z256rmkz },
  3547. { "vmovdqa32", X86::VMOVDQA32Zrrkz },
  3548. { "vmovdqa32", X86::VMOVDQA32Zrrkz_alt },
  3549. { "vmovdqa32", X86::VMOVDQA32Zrmkz },
  3550. { "vmovdqa64", X86::VMOVDQA64Z128rr },
  3551. { "vmovdqa64", X86::VMOVDQA64Z128rr_alt },
  3552. { "vmovdqa64", X86::VMOVDQA64Z128rm },
  3553. { "vmovdqa64", X86::VMOVDQA64Z256rr },
  3554. { "vmovdqa64", X86::VMOVDQA64Z256rr_alt },
  3555. { "vmovdqa64", X86::VMOVDQA64Z256rm },
  3556. { "vmovdqa64", X86::VMOVDQA64Zrr },
  3557. { "vmovdqa64", X86::VMOVDQA64Zrr_alt },
  3558. { "vmovdqa64", X86::VMOVDQA64Zrm },
  3559. { "vmovdqa64", X86::VMOVDQA64Z128mr },
  3560. { "vmovdqa64", X86::VMOVDQA64Z256mr },
  3561. { "vmovdqa64", X86::VMOVDQA64Zmr },
  3562. { "vmovdqa64", X86::VMOVDQA64Z128rrk },
  3563. { "vmovdqa64", X86::VMOVDQA64Z128rrk_alt },
  3564. { "vmovdqa64", X86::VMOVDQA64Z128rmk },
  3565. { "vmovdqa64", X86::VMOVDQA64Z256rrk },
  3566. { "vmovdqa64", X86::VMOVDQA64Z256rrk_alt },
  3567. { "vmovdqa64", X86::VMOVDQA64Z256rmk },
  3568. { "vmovdqa64", X86::VMOVDQA64Zrrk },
  3569. { "vmovdqa64", X86::VMOVDQA64Zrrk_alt },
  3570. { "vmovdqa64", X86::VMOVDQA64Zrmk },
  3571. { "vmovdqa64", X86::VMOVDQA64Z128mrk },
  3572. { "vmovdqa64", X86::VMOVDQA64Z256mrk },
  3573. { "vmovdqa64", X86::VMOVDQA64Zmrk },
  3574. { "vmovdqa64", X86::VMOVDQA64Z128rrkz },
  3575. { "vmovdqa64", X86::VMOVDQA64Z128rrkz_alt },
  3576. { "vmovdqa64", X86::VMOVDQA64Z128rmkz },
  3577. { "vmovdqa64", X86::VMOVDQA64Z256rrkz },
  3578. { "vmovdqa64", X86::VMOVDQA64Z256rrkz_alt },
  3579. { "vmovdqa64", X86::VMOVDQA64Z256rmkz },
  3580. { "vmovdqa64", X86::VMOVDQA64Zrrkz },
  3581. { "vmovdqa64", X86::VMOVDQA64Zrrkz_alt },
  3582. { "vmovdqa64", X86::VMOVDQA64Zrmkz },
  3583. { "vmovdqu", X86::VMOVDQUrr },
  3584. { "vmovdqu", X86::VMOVDQUrm },
  3585. { "vmovdqu", X86::VMOVDQUYrr },
  3586. { "vmovdqu", X86::VMOVDQUYrm },
  3587. { "vmovdqu", X86::VMOVDQUmr },
  3588. { "vmovdqu", X86::VMOVDQUYmr },
  3589. { "vmovdqu16", X86::VMOVDQU16Z128rr },
  3590. { "vmovdqu16", X86::VMOVDQU16Z128rr_alt },
  3591. { "vmovdqu16", X86::VMOVDQU16Z128rm },
  3592. { "vmovdqu16", X86::VMOVDQU16Z256rr },
  3593. { "vmovdqu16", X86::VMOVDQU16Z256rr_alt },
  3594. { "vmovdqu16", X86::VMOVDQU16Z256rm },
  3595. { "vmovdqu16", X86::VMOVDQU16Zrr },
  3596. { "vmovdqu16", X86::VMOVDQU16Zrr_alt },
  3597. { "vmovdqu16", X86::VMOVDQU16Zrm },
  3598. { "vmovdqu16", X86::VMOVDQU16Z128mr },
  3599. { "vmovdqu16", X86::VMOVDQU16Z256mr },
  3600. { "vmovdqu16", X86::VMOVDQU16Zmr },
  3601. { "vmovdqu16", X86::VMOVDQU16Z128rrk },
  3602. { "vmovdqu16", X86::VMOVDQU16Z128rrk_alt },
  3603. { "vmovdqu16", X86::VMOVDQU16Z128rmk },
  3604. { "vmovdqu16", X86::VMOVDQU16Z256rrk },
  3605. { "vmovdqu16", X86::VMOVDQU16Z256rrk_alt },
  3606. { "vmovdqu16", X86::VMOVDQU16Z256rmk },
  3607. { "vmovdqu16", X86::VMOVDQU16Zrrk },
  3608. { "vmovdqu16", X86::VMOVDQU16Zrrk_alt },
  3609. { "vmovdqu16", X86::VMOVDQU16Zrmk },
  3610. { "vmovdqu16", X86::VMOVDQU16Z128mrk },
  3611. { "vmovdqu16", X86::VMOVDQU16Z256mrk },
  3612. { "vmovdqu16", X86::VMOVDQU16Zmrk },
  3613. { "vmovdqu16", X86::VMOVDQU16Z128rrkz },
  3614. { "vmovdqu16", X86::VMOVDQU16Z128rrkz_alt },
  3615. { "vmovdqu16", X86::VMOVDQU16Z128rmkz },
  3616. { "vmovdqu16", X86::VMOVDQU16Z256rrkz },
  3617. { "vmovdqu16", X86::VMOVDQU16Z256rrkz_alt },
  3618. { "vmovdqu16", X86::VMOVDQU16Z256rmkz },
  3619. { "vmovdqu16", X86::VMOVDQU16Zrrkz },
  3620. { "vmovdqu16", X86::VMOVDQU16Zrrkz_alt },
  3621. { "vmovdqu16", X86::VMOVDQU16Zrmkz },
  3622. { "vmovdqu32", X86::VMOVDQU32Z128rr },
  3623. { "vmovdqu32", X86::VMOVDQU32Z128rr_alt },
  3624. { "vmovdqu32", X86::VMOVDQU32Z128rm },
  3625. { "vmovdqu32", X86::VMOVDQU32Z256rr },
  3626. { "vmovdqu32", X86::VMOVDQU32Z256rr_alt },
  3627. { "vmovdqu32", X86::VMOVDQU32Z256rm },
  3628. { "vmovdqu32", X86::VMOVDQU32Zrr },
  3629. { "vmovdqu32", X86::VMOVDQU32Zrr_alt },
  3630. { "vmovdqu32", X86::VMOVDQU32Zrm },
  3631. { "vmovdqu32", X86::VMOVDQU32Z128mr },
  3632. { "vmovdqu32", X86::VMOVDQU32Z256mr },
  3633. { "vmovdqu32", X86::VMOVDQU32Zmr },
  3634. { "vmovdqu32", X86::VMOVDQU32Z128rrk },
  3635. { "vmovdqu32", X86::VMOVDQU32Z128rrk_alt },
  3636. { "vmovdqu32", X86::VMOVDQU32Z128rmk },
  3637. { "vmovdqu32", X86::VMOVDQU32Z256rrk },
  3638. { "vmovdqu32", X86::VMOVDQU32Z256rrk_alt },
  3639. { "vmovdqu32", X86::VMOVDQU32Z256rmk },
  3640. { "vmovdqu32", X86::VMOVDQU32Zrrk },
  3641. { "vmovdqu32", X86::VMOVDQU32Zrrk_alt },
  3642. { "vmovdqu32", X86::VMOVDQU32Zrmk },
  3643. { "vmovdqu32", X86::VMOVDQU32Z128mrk },
  3644. { "vmovdqu32", X86::VMOVDQU32Z256mrk },
  3645. { "vmovdqu32", X86::VMOVDQU32Zmrk },
  3646. { "vmovdqu32", X86::VMOVDQU32Z128rrkz },
  3647. { "vmovdqu32", X86::VMOVDQU32Z128rrkz_alt },
  3648. { "vmovdqu32", X86::VMOVDQU32Z128rmkz },
  3649. { "vmovdqu32", X86::VMOVDQU32Z256rrkz },
  3650. { "vmovdqu32", X86::VMOVDQU32Z256rrkz_alt },
  3651. { "vmovdqu32", X86::VMOVDQU32Z256rmkz },
  3652. { "vmovdqu32", X86::VMOVDQU32Zrrkz },
  3653. { "vmovdqu32", X86::VMOVDQU32Zrrkz_alt },
  3654. { "vmovdqu32", X86::VMOVDQU32Zrmkz },
  3655. { "vmovdqu64", X86::VMOVDQU64Z128rr },
  3656. { "vmovdqu64", X86::VMOVDQU64Z128rr_alt },
  3657. { "vmovdqu64", X86::VMOVDQU64Z128rm },
  3658. { "vmovdqu64", X86::VMOVDQU64Z256rr },
  3659. { "vmovdqu64", X86::VMOVDQU64Z256rr_alt },
  3660. { "vmovdqu64", X86::VMOVDQU64Z256rm },
  3661. { "vmovdqu64", X86::VMOVDQU64Zrr },
  3662. { "vmovdqu64", X86::VMOVDQU64Zrr_alt },
  3663. { "vmovdqu64", X86::VMOVDQU64Zrm },
  3664. { "vmovdqu64", X86::VMOVDQU64Z128mr },
  3665. { "vmovdqu64", X86::VMOVDQU64Z256mr },
  3666. { "vmovdqu64", X86::VMOVDQU64Zmr },
  3667. { "vmovdqu64", X86::VMOVDQU64Z128rrk },
  3668. { "vmovdqu64", X86::VMOVDQU64Z128rrk_alt },
  3669. { "vmovdqu64", X86::VMOVDQU64Z128rmk },
  3670. { "vmovdqu64", X86::VMOVDQU64Z256rrk },
  3671. { "vmovdqu64", X86::VMOVDQU64Z256rrk_alt },
  3672. { "vmovdqu64", X86::VMOVDQU64Z256rmk },
  3673. { "vmovdqu64", X86::VMOVDQU64Zrrk },
  3674. { "vmovdqu64", X86::VMOVDQU64Zrrk_alt },
  3675. { "vmovdqu64", X86::VMOVDQU64Zrmk },
  3676. { "vmovdqu64", X86::VMOVDQU64Z128mrk },
  3677. { "vmovdqu64", X86::VMOVDQU64Z256mrk },
  3678. { "vmovdqu64", X86::VMOVDQU64Zmrk },
  3679. { "vmovdqu64", X86::VMOVDQU64Z128rrkz },
  3680. { "vmovdqu64", X86::VMOVDQU64Z128rrkz_alt },
  3681. { "vmovdqu64", X86::VMOVDQU64Z128rmkz },
  3682. { "vmovdqu64", X86::VMOVDQU64Z256rrkz },
  3683. { "vmovdqu64", X86::VMOVDQU64Z256rrkz_alt },
  3684. { "vmovdqu64", X86::VMOVDQU64Z256rmkz },
  3685. { "vmovdqu64", X86::VMOVDQU64Zrrkz },
  3686. { "vmovdqu64", X86::VMOVDQU64Zrrkz_alt },
  3687. { "vmovdqu64", X86::VMOVDQU64Zrmkz },
  3688. { "vmovdqu8", X86::VMOVDQU8Z128rr },
  3689. { "vmovdqu8", X86::VMOVDQU8Z128rr_alt },
  3690. { "vmovdqu8", X86::VMOVDQU8Z128rm },
  3691. { "vmovdqu8", X86::VMOVDQU8Z256rr },
  3692. { "vmovdqu8", X86::VMOVDQU8Z256rr_alt },
  3693. { "vmovdqu8", X86::VMOVDQU8Z256rm },
  3694. { "vmovdqu8", X86::VMOVDQU8Zrr },
  3695. { "vmovdqu8", X86::VMOVDQU8Zrr_alt },
  3696. { "vmovdqu8", X86::VMOVDQU8Zrm },
  3697. { "vmovdqu8", X86::VMOVDQU8Z128mr },
  3698. { "vmovdqu8", X86::VMOVDQU8Z256mr },
  3699. { "vmovdqu8", X86::VMOVDQU8Zmr },
  3700. { "vmovdqu8", X86::VMOVDQU8Z128rrk },
  3701. { "vmovdqu8", X86::VMOVDQU8Z128rrk_alt },
  3702. { "vmovdqu8", X86::VMOVDQU8Z128rmk },
  3703. { "vmovdqu8", X86::VMOVDQU8Z256rrk },
  3704. { "vmovdqu8", X86::VMOVDQU8Z256rrk_alt },
  3705. { "vmovdqu8", X86::VMOVDQU8Z256rmk },
  3706. { "vmovdqu8", X86::VMOVDQU8Zrrk },
  3707. { "vmovdqu8", X86::VMOVDQU8Zrrk_alt },
  3708. { "vmovdqu8", X86::VMOVDQU8Zrmk },
  3709. { "vmovdqu8", X86::VMOVDQU8Z128mrk },
  3710. { "vmovdqu8", X86::VMOVDQU8Z256mrk },
  3711. { "vmovdqu8", X86::VMOVDQU8Zmrk },
  3712. { "vmovdqu8", X86::VMOVDQU8Z128rrkz },
  3713. { "vmovdqu8", X86::VMOVDQU8Z128rrkz_alt },
  3714. { "vmovdqu8", X86::VMOVDQU8Z128rmkz },
  3715. { "vmovdqu8", X86::VMOVDQU8Z256rrkz },
  3716. { "vmovdqu8", X86::VMOVDQU8Z256rrkz_alt },
  3717. { "vmovdqu8", X86::VMOVDQU8Z256rmkz },
  3718. { "vmovdqu8", X86::VMOVDQU8Zrrkz },
  3719. { "vmovdqu8", X86::VMOVDQU8Zrrkz_alt },
  3720. { "vmovdqu8", X86::VMOVDQU8Zrmkz },
  3721. { "vmovhlps", X86::VMOVHLPSrr },
  3722. { "vmovhlps", X86::VMOVHLPSZrr },
  3723. { "vmovhpd", X86::VMOVHPDmr },
  3724. { "vmovhpd", X86::VMOVHPDrm },
  3725. { "vmovhps", X86::VMOVHPSmr },
  3726. { "vmovhps", X86::VMOVHPSrm },
  3727. { "vmovlhps", X86::VMOVLHPSrr },
  3728. { "vmovlhps", X86::VMOVLHPSZrr },
  3729. { "vmovlpd", X86::VMOVLPDmr },
  3730. { "vmovlpd", X86::VMOVLPDrm },
  3731. { "vmovlps", X86::VMOVLPSmr },
  3732. { "vmovlps", X86::VMOVLPSrm },
  3733. { "vmovmskpd", X86::VMOVMSKPDrr },
  3734. { "vmovmskpd", X86::VMOVMSKPDYrr },
  3735. { "vmovmskps", X86::VMOVMSKPSrr },
  3736. { "vmovmskps", X86::VMOVMSKPSYrr },
  3737. { "vmovntdq", X86::VMOVNTDQmr },
  3738. { "vmovntdq", X86::VMOVNTDQZ128mr },
  3739. { "vmovntdq", X86::VMOVNTDQYmr },
  3740. { "vmovntdq", X86::VMOVNTDQZ256mr },
  3741. { "vmovntdq", X86::VMOVNTDQZmr },
  3742. { "vmovntdqa", X86::VMOVNTDQArm },
  3743. { "vmovntdqa", X86::VMOVNTDQAZ128rm },
  3744. { "vmovntdqa", X86::VMOVNTDQAYrm },
  3745. { "vmovntdqa", X86::VMOVNTDQAZ256rm },
  3746. { "vmovntdqa", X86::VMOVNTDQAZrm },
  3747. { "vmovntpd", X86::VMOVNTPDmr },
  3748. { "vmovntpd", X86::VMOVNTPDZ128mr },
  3749. { "vmovntpd", X86::VMOVNTPDYmr },
  3750. { "vmovntpd", X86::VMOVNTPDZ256mr },
  3751. { "vmovntpd", X86::VMOVNTPDZmr },
  3752. { "vmovntps", X86::VMOVNTPSmr },
  3753. { "vmovntps", X86::VMOVNTPSZ128mr },
  3754. { "vmovntps", X86::VMOVNTPSYmr },
  3755. { "vmovntps", X86::VMOVNTPSZ256mr },
  3756. { "vmovntps", X86::VMOVNTPSZmr },
  3757. { "vmovq", X86::VMOVPQIto64rr },
  3758. { "vmovq", X86::VMOVPQIto64Zrr },
  3759. { "vmovq", X86::VMOV64toPQIrr },
  3760. { "vmovq", X86::VMOVZPQILo2PQIrr },
  3761. { "vmovq", X86::VMOVQI2PQIrm },
  3762. { "vmovq", X86::VMOV64toPQIZrr },
  3763. { "vmovq", X86::VMOVZPQILo2PQIZrr },
  3764. { "vmovq", X86::VMOVZPQILo2PQIZrm },
  3765. { "vmovq", X86::VMOVQI2PQIZrm },
  3766. { "vmovq", X86::VMOVSDto64Zmr },
  3767. { "vmovq", X86::VMOVPQI2QImr },
  3768. { "vmovq", X86::VMOVPQIto64Zmr },
  3769. { "vmovsd", X86::VMOVSDrm },
  3770. { "vmovsd", X86::VMOVSDZrm },
  3771. { "vmovsd", X86::VMOVSDmr },
  3772. { "vmovsd", X86::VMOVSDZmr },
  3773. { "vmovsd", X86::VMOVSDrr },
  3774. { "vmovsd", X86::VMOVSDZrr },
  3775. { "vmovsd", X86::VMOVSDZmrk },
  3776. { "vmovsd", X86::VMOVSDZrrk },
  3777. { "vmovshdup", X86::VMOVSHDUPrr },
  3778. { "vmovshdup", X86::VMOVSHDUPrm },
  3779. { "vmovshdup", X86::VMOVSHDUPYrr },
  3780. { "vmovshdup", X86::VMOVSHDUPYrm },
  3781. { "vmovshdup", X86::VMOVSHDUPZrr },
  3782. { "vmovshdup", X86::VMOVSHDUPZrm },
  3783. { "vmovsldup", X86::VMOVSLDUPrr },
  3784. { "vmovsldup", X86::VMOVSLDUPrm },
  3785. { "vmovsldup", X86::VMOVSLDUPYrr },
  3786. { "vmovsldup", X86::VMOVSLDUPYrm },
  3787. { "vmovsldup", X86::VMOVSLDUPZrr },
  3788. { "vmovsldup", X86::VMOVSLDUPZrm },
  3789. { "vmovss", X86::VMOVSSrm },
  3790. { "vmovss", X86::VMOVSSZrm },
  3791. { "vmovss", X86::VMOVSSmr },
  3792. { "vmovss", X86::VMOVSSZmr },
  3793. { "vmovss", X86::VMOVSSrr },
  3794. { "vmovss", X86::VMOVSSZrr },
  3795. { "vmovss", X86::VMOVSSZmrk },
  3796. { "vmovss", X86::VMOVSSZrrk },
  3797. { "vmovupd", X86::VMOVUPDrr },
  3798. { "vmovupd", X86::VMOVUPDrm },
  3799. { "vmovupd", X86::VMOVUPDZ128rr },
  3800. { "vmovupd", X86::VMOVUPDZ128rr_alt },
  3801. { "vmovupd", X86::VMOVUPDZ128rm },
  3802. { "vmovupd", X86::VMOVUPDYrr },
  3803. { "vmovupd", X86::VMOVUPDYrm },
  3804. { "vmovupd", X86::VMOVUPDZ256rr },
  3805. { "vmovupd", X86::VMOVUPDZ256rr_alt },
  3806. { "vmovupd", X86::VMOVUPDZ256rm },
  3807. { "vmovupd", X86::VMOVUPDZrr },
  3808. { "vmovupd", X86::VMOVUPDZrr_alt },
  3809. { "vmovupd", X86::VMOVUPDZrm },
  3810. { "vmovupd", X86::VMOVUPDmr },
  3811. { "vmovupd", X86::VMOVUPDZ128mr },
  3812. { "vmovupd", X86::VMOVUPDYmr },
  3813. { "vmovupd", X86::VMOVUPDZ256mr },
  3814. { "vmovupd", X86::VMOVUPDZmr },
  3815. { "vmovupd", X86::VMOVUPDZ128rrk },
  3816. { "vmovupd", X86::VMOVUPDZ128rrk_alt },
  3817. { "vmovupd", X86::VMOVUPDZ128rmk },
  3818. { "vmovupd", X86::VMOVUPDZ256rrk },
  3819. { "vmovupd", X86::VMOVUPDZ256rrk_alt },
  3820. { "vmovupd", X86::VMOVUPDZ256rmk },
  3821. { "vmovupd", X86::VMOVUPDZrrk },
  3822. { "vmovupd", X86::VMOVUPDZrrk_alt },
  3823. { "vmovupd", X86::VMOVUPDZrmk },
  3824. { "vmovupd", X86::VMOVUPDZ128mrk },
  3825. { "vmovupd", X86::VMOVUPDZ256mrk },
  3826. { "vmovupd", X86::VMOVUPDZmrk },
  3827. { "vmovupd", X86::VMOVUPDZ128rrkz },
  3828. { "vmovupd", X86::VMOVUPDZ128rrkz_alt },
  3829. { "vmovupd", X86::VMOVUPDZ128rmkz },
  3830. { "vmovupd", X86::VMOVUPDZ256rrkz },
  3831. { "vmovupd", X86::VMOVUPDZ256rrkz_alt },
  3832. { "vmovupd", X86::VMOVUPDZ256rmkz },
  3833. { "vmovupd", X86::VMOVUPDZrrkz },
  3834. { "vmovupd", X86::VMOVUPDZrrkz_alt },
  3835. { "vmovupd", X86::VMOVUPDZrmkz },
  3836. { "vmovups", X86::VMOVUPSrr },
  3837. { "vmovups", X86::VMOVUPSrm },
  3838. { "vmovups", X86::VMOVUPSZ128rr },
  3839. { "vmovups", X86::VMOVUPSZ128rr_alt },
  3840. { "vmovups", X86::VMOVUPSZ128rm },
  3841. { "vmovups", X86::VMOVUPSYrr },
  3842. { "vmovups", X86::VMOVUPSYrm },
  3843. { "vmovups", X86::VMOVUPSZ256rr },
  3844. { "vmovups", X86::VMOVUPSZ256rr_alt },
  3845. { "vmovups", X86::VMOVUPSZ256rm },
  3846. { "vmovups", X86::VMOVUPSZrr },
  3847. { "vmovups", X86::VMOVUPSZrr_alt },
  3848. { "vmovups", X86::VMOVUPSZrm },
  3849. { "vmovups", X86::VMOVUPSmr },
  3850. { "vmovups", X86::VMOVUPSZ128mr },
  3851. { "vmovups", X86::VMOVUPSYmr },
  3852. { "vmovups", X86::VMOVUPSZ256mr },
  3853. { "vmovups", X86::VMOVUPSZmr },
  3854. { "vmovups", X86::VMOVUPSZ128rrk },
  3855. { "vmovups", X86::VMOVUPSZ128rrk_alt },
  3856. { "vmovups", X86::VMOVUPSZ128rmk },
  3857. { "vmovups", X86::VMOVUPSZ256rrk },
  3858. { "vmovups", X86::VMOVUPSZ256rrk_alt },
  3859. { "vmovups", X86::VMOVUPSZ256rmk },
  3860. { "vmovups", X86::VMOVUPSZrrk },
  3861. { "vmovups", X86::VMOVUPSZrrk_alt },
  3862. { "vmovups", X86::VMOVUPSZrmk },
  3863. { "vmovups", X86::VMOVUPSZ128mrk },
  3864. { "vmovups", X86::VMOVUPSZ256mrk },
  3865. { "vmovups", X86::VMOVUPSZmrk },
  3866. { "vmovups", X86::VMOVUPSZ128rrkz },
  3867. { "vmovups", X86::VMOVUPSZ128rrkz_alt },
  3868. { "vmovups", X86::VMOVUPSZ128rmkz },
  3869. { "vmovups", X86::VMOVUPSZ256rrkz },
  3870. { "vmovups", X86::VMOVUPSZ256rrkz_alt },
  3871. { "vmovups", X86::VMOVUPSZ256rmkz },
  3872. { "vmovups", X86::VMOVUPSZrrkz },
  3873. { "vmovups", X86::VMOVUPSZrrkz_alt },
  3874. { "vmovups", X86::VMOVUPSZrmkz },
  3875. { "vmpsadbw", X86::VMPSADBWrri },
  3876. { "vmpsadbw", X86::VMPSADBWrmi },
  3877. { "vmpsadbw", X86::VMPSADBWYrri },
  3878. { "vmpsadbw", X86::VMPSADBWYrmi },
  3879. { "vmptrld", X86::VMPTRLDm },
  3880. { "vmptrst", X86::VMPTRSTm },
  3881. { "vmread", X86::VMREAD32rr },
  3882. { "vmread", X86::VMREAD64rr },
  3883. { "vmread", X86::VMREAD32rm },
  3884. { "vmread", X86::VMREAD64rm },
  3885. { "vmresume", X86::VMRESUME },
  3886. { "vmrun", X86::VMRUN32 },
  3887. { "vmrun", X86::VMRUN64 },
  3888. { "vmsave", X86::VMSAVE32 },
  3889. { "vmsave", X86::VMSAVE64 },
  3890. { "vmulpd", X86::VMULPDrr },
  3891. { "vmulpd", X86::VMULPDrm },
  3892. { "vmulpd", X86::VMULPDYrr },
  3893. { "vmulpd", X86::VMULPDYrm },
  3894. { "vmulpd", X86::VMULPDZrr },
  3895. { "vmulpd", X86::VMULPDZrm },
  3896. { "vmulpd", X86::VMULPDZrmb },
  3897. { "vmulpd", X86::VMULPDZrrk },
  3898. { "vmulpd", X86::VMULPDZrmk },
  3899. { "vmulpd", X86::VMULPDZrrkz },
  3900. { "vmulpd", X86::VMULPDZrmkz },
  3901. { "vmulpd", X86::VMULPDZrmbk },
  3902. { "vmulpd", X86::VMULPDZrmbkz },
  3903. { "vmulps", X86::VMULPSrr },
  3904. { "vmulps", X86::VMULPSrm },
  3905. { "vmulps", X86::VMULPSYrr },
  3906. { "vmulps", X86::VMULPSYrm },
  3907. { "vmulps", X86::VMULPSZrr },
  3908. { "vmulps", X86::VMULPSZrm },
  3909. { "vmulps", X86::VMULPSZrmb },
  3910. { "vmulps", X86::VMULPSZrrk },
  3911. { "vmulps", X86::VMULPSZrmk },
  3912. { "vmulps", X86::VMULPSZrrkz },
  3913. { "vmulps", X86::VMULPSZrmkz },
  3914. { "vmulps", X86::VMULPSZrmbk },
  3915. { "vmulps", X86::VMULPSZrmbkz },
  3916. { "vmulsd", X86::VMULSDrr },
  3917. { "vmulsd", X86::VMULSDrm },
  3918. { "vmulsd", X86::VMULSDZrr },
  3919. { "vmulsd", X86::VMULSDZrm },
  3920. { "vmulss", X86::VMULSSrr },
  3921. { "vmulss", X86::VMULSSrm },
  3922. { "vmulss", X86::VMULSSZrr },
  3923. { "vmulss", X86::VMULSSZrm },
  3924. { "vmwrite", X86::VMWRITE32rr },
  3925. { "vmwrite", X86::VMWRITE32rm },
  3926. { "vmwrite", X86::VMWRITE64rr },
  3927. { "vmwrite", X86::VMWRITE64rm },
  3928. { "vmxoff", X86::VMXOFF },
  3929. { "vmxon", X86::VMXON },
  3930. { "vorpd", X86::VORPDrr },
  3931. { "vorpd", X86::VORPDrm },
  3932. { "vorpd", X86::VORPDYrr },
  3933. { "vorpd", X86::VORPDYrm },
  3934. { "vorps", X86::VORPSrr },
  3935. { "vorps", X86::VORPSrm },
  3936. { "vorps", X86::VORPSYrr },
  3937. { "vorps", X86::VORPSYrm },
  3938. { "vpabsb", X86::VPABSBrr128 },
  3939. { "vpabsb", X86::VPABSBrm128 },
  3940. { "vpabsb", X86::VPABSBrr256 },
  3941. { "vpabsb", X86::VPABSBrm256 },
  3942. { "vpabsd", X86::VPABSDrr128 },
  3943. { "vpabsd", X86::VPABSDrm128 },
  3944. { "vpabsd", X86::VPABSDrr256 },
  3945. { "vpabsd", X86::VPABSDrm256 },
  3946. { "vpabsd", X86::VPABSDZrr },
  3947. { "vpabsd", X86::VPABSDZrm },
  3948. { "vpabsd", X86::VPABSDZrmb },
  3949. { "vpabsd", X86::VPABSDZrrk },
  3950. { "vpabsd", X86::VPABSDZrmk },
  3951. { "vpabsd", X86::VPABSDZrrkz },
  3952. { "vpabsd", X86::VPABSDZrmkz },
  3953. { "vpabsd", X86::VPABSDZrmbk },
  3954. { "vpabsd", X86::VPABSDZrmbkz },
  3955. { "vpabsq", X86::VPABSQZrr },
  3956. { "vpabsq", X86::VPABSQZrm },
  3957. { "vpabsq", X86::VPABSQZrmb },
  3958. { "vpabsq", X86::VPABSQZrrk },
  3959. { "vpabsq", X86::VPABSQZrmk },
  3960. { "vpabsq", X86::VPABSQZrrkz },
  3961. { "vpabsq", X86::VPABSQZrmkz },
  3962. { "vpabsq", X86::VPABSQZrmbk },
  3963. { "vpabsq", X86::VPABSQZrmbkz },
  3964. { "vpabsw", X86::VPABSWrr128 },
  3965. { "vpabsw", X86::VPABSWrm128 },
  3966. { "vpabsw", X86::VPABSWrr256 },
  3967. { "vpabsw", X86::VPABSWrm256 },
  3968. { "vpackssdw", X86::VPACKSSDWrr },
  3969. { "vpackssdw", X86::VPACKSSDWrm },
  3970. { "vpackssdw", X86::VPACKSSDWYrr },
  3971. { "vpackssdw", X86::VPACKSSDWYrm },
  3972. { "vpacksswb", X86::VPACKSSWBrr },
  3973. { "vpacksswb", X86::VPACKSSWBrm },
  3974. { "vpacksswb", X86::VPACKSSWBYrr },
  3975. { "vpacksswb", X86::VPACKSSWBYrm },
  3976. { "vpackusdw", X86::VPACKUSDWrr },
  3977. { "vpackusdw", X86::VPACKUSDWrm },
  3978. { "vpackusdw", X86::VPACKUSDWYrr },
  3979. { "vpackusdw", X86::VPACKUSDWYrm },
  3980. { "vpackuswb", X86::VPACKUSWBrr },
  3981. { "vpackuswb", X86::VPACKUSWBrm },
  3982. { "vpackuswb", X86::VPACKUSWBYrr },
  3983. { "vpackuswb", X86::VPACKUSWBYrm },
  3984. { "vpaddb", X86::VPADDBrr },
  3985. { "vpaddb", X86::VPADDBrm },
  3986. { "vpaddb", X86::VPADDBYrr },
  3987. { "vpaddb", X86::VPADDBYrm },
  3988. { "vpaddd", X86::VPADDDrr },
  3989. { "vpaddd", X86::VPADDDrm },
  3990. { "vpaddd", X86::VPADDDYrr },
  3991. { "vpaddd", X86::VPADDDYrm },
  3992. { "vpaddd", X86::VPADDDZrr },
  3993. { "vpaddd", X86::VPADDDZrm },
  3994. { "vpaddd", X86::VPADDDZrmb },
  3995. { "vpaddd", X86::VPADDDZrrk },
  3996. { "vpaddd", X86::VPADDDZrmk },
  3997. { "vpaddd", X86::VPADDDZrrkz },
  3998. { "vpaddd", X86::VPADDDZrmkz },
  3999. { "vpaddd", X86::VPADDDZrmbk },
  4000. { "vpaddd", X86::VPADDDZrmbkz },
  4001. { "vpaddq", X86::VPADDQrr },
  4002. { "vpaddq", X86::VPADDQrm },
  4003. { "vpaddq", X86::VPADDQYrr },
  4004. { "vpaddq", X86::VPADDQYrm },
  4005. { "vpaddq", X86::VPADDQZrr },
  4006. { "vpaddq", X86::VPADDQZrm },
  4007. { "vpaddq", X86::VPADDQZrmb },
  4008. { "vpaddq", X86::VPADDQZrrk },
  4009. { "vpaddq", X86::VPADDQZrmk },
  4010. { "vpaddq", X86::VPADDQZrrkz },
  4011. { "vpaddq", X86::VPADDQZrmkz },
  4012. { "vpaddq", X86::VPADDQZrmbk },
  4013. { "vpaddq", X86::VPADDQZrmbkz },
  4014. { "vpaddsb", X86::VPADDSBrr },
  4015. { "vpaddsb", X86::VPADDSBrm },
  4016. { "vpaddsb", X86::VPADDSBYrr },
  4017. { "vpaddsb", X86::VPADDSBYrm },
  4018. { "vpaddsw", X86::VPADDSWrr },
  4019. { "vpaddsw", X86::VPADDSWrm },
  4020. { "vpaddsw", X86::VPADDSWYrr },
  4021. { "vpaddsw", X86::VPADDSWYrm },
  4022. { "vpaddusb", X86::VPADDUSBrr },
  4023. { "vpaddusb", X86::VPADDUSBrm },
  4024. { "vpaddusb", X86::VPADDUSBYrr },
  4025. { "vpaddusb", X86::VPADDUSBYrm },
  4026. { "vpaddusw", X86::VPADDUSWrr },
  4027. { "vpaddusw", X86::VPADDUSWrm },
  4028. { "vpaddusw", X86::VPADDUSWYrr },
  4029. { "vpaddusw", X86::VPADDUSWYrm },
  4030. { "vpaddw", X86::VPADDWrr },
  4031. { "vpaddw", X86::VPADDWrm },
  4032. { "vpaddw", X86::VPADDWYrr },
  4033. { "vpaddw", X86::VPADDWYrm },
  4034. { "vpalignr", X86::VPALIGNR128rr },
  4035. { "vpalignr", X86::VPALIGNR128rm },
  4036. { "vpalignr", X86::VPALIGNR256rr },
  4037. { "vpalignr", X86::VPALIGNR256rm },
  4038. { "vpand", X86::VPANDrr },
  4039. { "vpand", X86::VPANDrm },
  4040. { "vpand", X86::VPANDYrr },
  4041. { "vpand", X86::VPANDYrm },
  4042. { "vpandd", X86::VPANDDZrr },
  4043. { "vpandd", X86::VPANDDZrm },
  4044. { "vpandd", X86::VPANDDZrmb },
  4045. { "vpandd", X86::VPANDDZrrk },
  4046. { "vpandd", X86::VPANDDZrmk },
  4047. { "vpandd", X86::VPANDDZrrkz },
  4048. { "vpandd", X86::VPANDDZrmkz },
  4049. { "vpandd", X86::VPANDDZrmbk },
  4050. { "vpandd", X86::VPANDDZrmbkz },
  4051. { "vpandn", X86::VPANDNrr },
  4052. { "vpandn", X86::VPANDNrm },
  4053. { "vpandn", X86::VPANDNYrr },
  4054. { "vpandn", X86::VPANDNYrm },
  4055. { "vpandnd", X86::VPANDNDZrr },
  4056. { "vpandnd", X86::VPANDNDZrm },
  4057. { "vpandnd", X86::VPANDNDZrmb },
  4058. { "vpandnd", X86::VPANDNDZrrk },
  4059. { "vpandnd", X86::VPANDNDZrmk },
  4060. { "vpandnd", X86::VPANDNDZrrkz },
  4061. { "vpandnd", X86::VPANDNDZrmkz },
  4062. { "vpandnd", X86::VPANDNDZrmbk },
  4063. { "vpandnd", X86::VPANDNDZrmbkz },
  4064. { "vpandnq", X86::VPANDNQZrr },
  4065. { "vpandnq", X86::VPANDNQZrm },
  4066. { "vpandnq", X86::VPANDNQZrmb },
  4067. { "vpandnq", X86::VPANDNQZrrk },
  4068. { "vpandnq", X86::VPANDNQZrmk },
  4069. { "vpandnq", X86::VPANDNQZrrkz },
  4070. { "vpandnq", X86::VPANDNQZrmkz },
  4071. { "vpandnq", X86::VPANDNQZrmbk },
  4072. { "vpandnq", X86::VPANDNQZrmbkz },
  4073. { "vpandq", X86::VPANDQZrr },
  4074. { "vpandq", X86::VPANDQZrm },
  4075. { "vpandq", X86::VPANDQZrmb },
  4076. { "vpandq", X86::VPANDQZrrk },
  4077. { "vpandq", X86::VPANDQZrmk },
  4078. { "vpandq", X86::VPANDQZrrkz },
  4079. { "vpandq", X86::VPANDQZrmkz },
  4080. { "vpandq", X86::VPANDQZrmbk },
  4081. { "vpandq", X86::VPANDQZrmbkz },
  4082. { "vpavgb", X86::VPAVGBrr },
  4083. { "vpavgb", X86::VPAVGBrm },
  4084. { "vpavgb", X86::VPAVGBYrr },
  4085. { "vpavgb", X86::VPAVGBYrm },
  4086. { "vpavgw", X86::VPAVGWrr },
  4087. { "vpavgw", X86::VPAVGWrm },
  4088. { "vpavgw", X86::VPAVGWYrr },
  4089. { "vpavgw", X86::VPAVGWYrm },
  4090. { "vpblendd", X86::VPBLENDDrri },
  4091. { "vpblendd", X86::VPBLENDDrmi },
  4092. { "vpblendd", X86::VPBLENDDYrri },
  4093. { "vpblendd", X86::VPBLENDDYrmi },
  4094. { "vpblendmd", X86::VPBLENDMDZrr },
  4095. { "vpblendmd", X86::VPBLENDMDZrm },
  4096. { "vpblendmq", X86::VPBLENDMQZrr },
  4097. { "vpblendmq", X86::VPBLENDMQZrm },
  4098. { "vpblendvb", X86::VPBLENDVBrr },
  4099. { "vpblendvb", X86::VPBLENDVBrm },
  4100. { "vpblendvb", X86::VPBLENDVBYrr },
  4101. { "vpblendvb", X86::VPBLENDVBYrm },
  4102. { "vpblendw", X86::VPBLENDWrri },
  4103. { "vpblendw", X86::VPBLENDWrmi },
  4104. { "vpblendw", X86::VPBLENDWYrri },
  4105. { "vpblendw", X86::VPBLENDWYrmi },
  4106. { "vpbroadcastb", X86::VPBROADCASTBrr },
  4107. { "vpbroadcastb", X86::VPBROADCASTBrm },
  4108. { "vpbroadcastb", X86::VPBROADCASTBYrr },
  4109. { "vpbroadcastb", X86::VPBROADCASTBYrm },
  4110. { "vpbroadcastd", X86::VPBROADCASTDrr },
  4111. { "vpbroadcastd", X86::VPBROADCASTDrm },
  4112. { "vpbroadcastd", X86::VPBROADCASTDYrr },
  4113. { "vpbroadcastd", X86::VPBROADCASTDYrm },
  4114. { "vpbroadcastd", X86::VPBROADCASTDrZrr },
  4115. { "vpbroadcastd", X86::VPBROADCASTDZrr },
  4116. { "vpbroadcastd", X86::VPBROADCASTDZrm },
  4117. { "vpbroadcastd", X86::VPBROADCASTDrZkrr },
  4118. { "vpbroadcastd", X86::VPBROADCASTDZkrr },
  4119. { "vpbroadcastd", X86::VPBROADCASTDZkrm },
  4120. { "vpbroadcastmb2q", X86::VPBROADCASTMB2Qrr },
  4121. { "vpbroadcastmw2d", X86::VPBROADCASTMW2Drr },
  4122. { "vpbroadcastq", X86::VPBROADCASTQrr },
  4123. { "vpbroadcastq", X86::VPBROADCASTQrm },
  4124. { "vpbroadcastq", X86::VPBROADCASTQYrr },
  4125. { "vpbroadcastq", X86::VPBROADCASTQYrm },
  4126. { "vpbroadcastq", X86::VPBROADCASTQrZrr },
  4127. { "vpbroadcastq", X86::VPBROADCASTQZrr },
  4128. { "vpbroadcastq", X86::VPBROADCASTQZrm },
  4129. { "vpbroadcastq", X86::VPBROADCASTQrZkrr },
  4130. { "vpbroadcastq", X86::VPBROADCASTQZkrr },
  4131. { "vpbroadcastq", X86::VPBROADCASTQZkrm },
  4132. { "vpbroadcastw", X86::VPBROADCASTWrr },
  4133. { "vpbroadcastw", X86::VPBROADCASTWrm },
  4134. { "vpbroadcastw", X86::VPBROADCASTWYrr },
  4135. { "vpbroadcastw", X86::VPBROADCASTWYrm },
  4136. { "vpclmulhqhqdq", X86::VPCLMULQDQrr },
  4137. { "vpclmulhqhqdq", X86::VPCLMULQDQrm },
  4138. { "vpclmulhqlqdq", X86::VPCLMULQDQrr },
  4139. { "vpclmulhqlqdq", X86::VPCLMULQDQrm },
  4140. { "vpclmullqhqdq", X86::VPCLMULQDQrr },
  4141. { "vpclmullqhqdq", X86::VPCLMULQDQrm },
  4142. { "vpclmullqlqdq", X86::VPCLMULQDQrr },
  4143. { "vpclmullqlqdq", X86::VPCLMULQDQrm },
  4144. { "vpclmulqdq", X86::VPCLMULQDQrr },
  4145. { "vpclmulqdq", X86::VPCLMULQDQrm },
  4146. { "vpcmov", X86::VPCMOVrr },
  4147. { "vpcmov", X86::VPCMOVrm },
  4148. { "vpcmov", X86::VPCMOVmr },
  4149. { "vpcmov", X86::VPCMOVrrY },
  4150. { "vpcmov", X86::VPCMOVrmY },
  4151. { "vpcmov", X86::VPCMOVmrY },
  4152. { "vpcmp", X86::VPCMPBZ128rri },
  4153. { "vpcmp", X86::VPCMPBZ128rmi },
  4154. { "vpcmp", X86::VPCMPBZ256rri },
  4155. { "vpcmp", X86::VPCMPBZ256rmi },
  4156. { "vpcmp", X86::VPCMPBZrri },
  4157. { "vpcmp", X86::VPCMPBZrmi },
  4158. { "vpcmp", X86::VPCMPDZ128rri },
  4159. { "vpcmp", X86::VPCMPDZ128rmi },
  4160. { "vpcmp", X86::VPCMPDZ256rri },
  4161. { "vpcmp", X86::VPCMPDZ256rmi },
  4162. { "vpcmp", X86::VPCMPDZrri },
  4163. { "vpcmp", X86::VPCMPDZrmi },
  4164. { "vpcmp", X86::VPCMPQZ128rri },
  4165. { "vpcmp", X86::VPCMPQZ128rmi },
  4166. { "vpcmp", X86::VPCMPQZ256rri },
  4167. { "vpcmp", X86::VPCMPQZ256rmi },
  4168. { "vpcmp", X86::VPCMPQZrri },
  4169. { "vpcmp", X86::VPCMPQZrmi },
  4170. { "vpcmp", X86::VPCMPUBZ128rri },
  4171. { "vpcmp", X86::VPCMPUBZ128rmi },
  4172. { "vpcmp", X86::VPCMPUBZ256rri },
  4173. { "vpcmp", X86::VPCMPUBZ256rmi },
  4174. { "vpcmp", X86::VPCMPUBZrri },
  4175. { "vpcmp", X86::VPCMPUBZrmi },
  4176. { "vpcmp", X86::VPCMPUDZ128rri },
  4177. { "vpcmp", X86::VPCMPUDZ128rmi },
  4178. { "vpcmp", X86::VPCMPUDZ256rri },
  4179. { "vpcmp", X86::VPCMPUDZ256rmi },
  4180. { "vpcmp", X86::VPCMPUDZrri },
  4181. { "vpcmp", X86::VPCMPUDZrmi },
  4182. { "vpcmp", X86::VPCMPUQZ128rri },
  4183. { "vpcmp", X86::VPCMPUQZ128rmi },
  4184. { "vpcmp", X86::VPCMPUQZ256rri },
  4185. { "vpcmp", X86::VPCMPUQZ256rmi },
  4186. { "vpcmp", X86::VPCMPUQZrri },
  4187. { "vpcmp", X86::VPCMPUQZrmi },
  4188. { "vpcmp", X86::VPCMPUWZ128rri },
  4189. { "vpcmp", X86::VPCMPUWZ128rmi },
  4190. { "vpcmp", X86::VPCMPUWZ256rri },
  4191. { "vpcmp", X86::VPCMPUWZ256rmi },
  4192. { "vpcmp", X86::VPCMPUWZrri },
  4193. { "vpcmp", X86::VPCMPUWZrmi },
  4194. { "vpcmp", X86::VPCMPWZ128rri },
  4195. { "vpcmp", X86::VPCMPWZ128rmi },
  4196. { "vpcmp", X86::VPCMPWZ256rri },
  4197. { "vpcmp", X86::VPCMPWZ256rmi },
  4198. { "vpcmp", X86::VPCMPWZrri },
  4199. { "vpcmp", X86::VPCMPWZrmi },
  4200. { "vpcmp", X86::VPCMPDZ128rmib },
  4201. { "vpcmp", X86::VPCMPDZ256rmib },
  4202. { "vpcmp", X86::VPCMPDZrmib },
  4203. { "vpcmp", X86::VPCMPQZ128rmib },
  4204. { "vpcmp", X86::VPCMPQZ256rmib },
  4205. { "vpcmp", X86::VPCMPQZrmib },
  4206. { "vpcmp", X86::VPCMPUDZ128rmib },
  4207. { "vpcmp", X86::VPCMPUDZ256rmib },
  4208. { "vpcmp", X86::VPCMPUDZrmib },
  4209. { "vpcmp", X86::VPCMPUQZ128rmib },
  4210. { "vpcmp", X86::VPCMPUQZ256rmib },
  4211. { "vpcmp", X86::VPCMPUQZrmib },
  4212. { "vpcmp", X86::VPCMPBZ128rrik },
  4213. { "vpcmp", X86::VPCMPBZ128rmik },
  4214. { "vpcmp", X86::VPCMPBZ256rrik },
  4215. { "vpcmp", X86::VPCMPBZ256rmik },
  4216. { "vpcmp", X86::VPCMPBZrrik },
  4217. { "vpcmp", X86::VPCMPBZrmik },
  4218. { "vpcmp", X86::VPCMPDZ128rrik },
  4219. { "vpcmp", X86::VPCMPDZ128rmik },
  4220. { "vpcmp", X86::VPCMPDZ256rrik },
  4221. { "vpcmp", X86::VPCMPDZ256rmik },
  4222. { "vpcmp", X86::VPCMPDZrrik },
  4223. { "vpcmp", X86::VPCMPDZrmik },
  4224. { "vpcmp", X86::VPCMPQZ128rrik },
  4225. { "vpcmp", X86::VPCMPQZ128rmik },
  4226. { "vpcmp", X86::VPCMPQZ256rrik },
  4227. { "vpcmp", X86::VPCMPQZ256rmik },
  4228. { "vpcmp", X86::VPCMPQZrrik },
  4229. { "vpcmp", X86::VPCMPQZrmik },
  4230. { "vpcmp", X86::VPCMPUBZ128rrik },
  4231. { "vpcmp", X86::VPCMPUBZ128rmik },
  4232. { "vpcmp", X86::VPCMPUBZ256rrik },
  4233. { "vpcmp", X86::VPCMPUBZ256rmik },
  4234. { "vpcmp", X86::VPCMPUBZrrik },
  4235. { "vpcmp", X86::VPCMPUBZrmik },
  4236. { "vpcmp", X86::VPCMPUDZ128rrik },
  4237. { "vpcmp", X86::VPCMPUDZ128rmik },
  4238. { "vpcmp", X86::VPCMPUDZ256rrik },
  4239. { "vpcmp", X86::VPCMPUDZ256rmik },
  4240. { "vpcmp", X86::VPCMPUDZrrik },
  4241. { "vpcmp", X86::VPCMPUDZrmik },
  4242. { "vpcmp", X86::VPCMPUQZ128rrik },
  4243. { "vpcmp", X86::VPCMPUQZ128rmik },
  4244. { "vpcmp", X86::VPCMPUQZ256rrik },
  4245. { "vpcmp", X86::VPCMPUQZ256rmik },
  4246. { "vpcmp", X86::VPCMPUQZrrik },
  4247. { "vpcmp", X86::VPCMPUQZrmik },
  4248. { "vpcmp", X86::VPCMPUWZ128rrik },
  4249. { "vpcmp", X86::VPCMPUWZ128rmik },
  4250. { "vpcmp", X86::VPCMPUWZ256rrik },
  4251. { "vpcmp", X86::VPCMPUWZ256rmik },
  4252. { "vpcmp", X86::VPCMPUWZrrik },
  4253. { "vpcmp", X86::VPCMPUWZrmik },
  4254. { "vpcmp", X86::VPCMPWZ128rrik },
  4255. { "vpcmp", X86::VPCMPWZ128rmik },
  4256. { "vpcmp", X86::VPCMPWZ256rrik },
  4257. { "vpcmp", X86::VPCMPWZ256rmik },
  4258. { "vpcmp", X86::VPCMPWZrrik },
  4259. { "vpcmp", X86::VPCMPWZrmik },
  4260. { "vpcmp", X86::VPCMPDZ128rmibk },
  4261. { "vpcmp", X86::VPCMPDZ256rmibk },
  4262. { "vpcmp", X86::VPCMPDZrmibk },
  4263. { "vpcmp", X86::VPCMPQZ128rmibk },
  4264. { "vpcmp", X86::VPCMPQZ256rmibk },
  4265. { "vpcmp", X86::VPCMPQZrmibk },
  4266. { "vpcmp", X86::VPCMPUDZ128rmibk },
  4267. { "vpcmp", X86::VPCMPUDZ256rmibk },
  4268. { "vpcmp", X86::VPCMPUDZrmibk },
  4269. { "vpcmp", X86::VPCMPUQZ128rmibk },
  4270. { "vpcmp", X86::VPCMPUQZ256rmibk },
  4271. { "vpcmp", X86::VPCMPUQZrmibk },
  4272. { "vpcmpb", X86::VPCMPBZ128rri_alt },
  4273. { "vpcmpb", X86::VPCMPBZ128rmi_alt },
  4274. { "vpcmpb", X86::VPCMPBZ256rri_alt },
  4275. { "vpcmpb", X86::VPCMPBZ256rmi_alt },
  4276. { "vpcmpb", X86::VPCMPBZrri_alt },
  4277. { "vpcmpb", X86::VPCMPBZrmi_alt },
  4278. { "vpcmpb", X86::VPCMPBZ128rrik_alt },
  4279. { "vpcmpb", X86::VPCMPBZ128rmik_alt },
  4280. { "vpcmpb", X86::VPCMPBZ256rrik_alt },
  4281. { "vpcmpb", X86::VPCMPBZ256rmik_alt },
  4282. { "vpcmpb", X86::VPCMPBZrrik_alt },
  4283. { "vpcmpb", X86::VPCMPBZrmik_alt },
  4284. { "vpcmpd", X86::VPCMPDZ128rri_alt },
  4285. { "vpcmpd", X86::VPCMPDZ128rmi_alt },
  4286. { "vpcmpd", X86::VPCMPDZ256rri_alt },
  4287. { "vpcmpd", X86::VPCMPDZ256rmi_alt },
  4288. { "vpcmpd", X86::VPCMPDZrri_alt },
  4289. { "vpcmpd", X86::VPCMPDZrmi_alt },
  4290. { "vpcmpd", X86::VPCMPDZ128rmib_alt },
  4291. { "vpcmpd", X86::VPCMPDZ256rmib_alt },
  4292. { "vpcmpd", X86::VPCMPDZrmib_alt },
  4293. { "vpcmpd", X86::VPCMPDZ128rrik_alt },
  4294. { "vpcmpd", X86::VPCMPDZ128rmik_alt },
  4295. { "vpcmpd", X86::VPCMPDZ256rrik_alt },
  4296. { "vpcmpd", X86::VPCMPDZ256rmik_alt },
  4297. { "vpcmpd", X86::VPCMPDZrrik_alt },
  4298. { "vpcmpd", X86::VPCMPDZrmik_alt },
  4299. { "vpcmpd", X86::VPCMPDZ128rmibk_alt },
  4300. { "vpcmpd", X86::VPCMPDZ256rmibk_alt },
  4301. { "vpcmpd", X86::VPCMPDZrmibk_alt },
  4302. { "vpcmpeqb", X86::VPCMPEQBrr },
  4303. { "vpcmpeqb", X86::VPCMPEQBrm },
  4304. { "vpcmpeqb", X86::VPCMPEQBYrr },
  4305. { "vpcmpeqb", X86::VPCMPEQBYrm },
  4306. { "vpcmpeqb", X86::VPCMPEQBZ128rr },
  4307. { "vpcmpeqb", X86::VPCMPEQBZ128rm },
  4308. { "vpcmpeqb", X86::VPCMPEQBZ256rr },
  4309. { "vpcmpeqb", X86::VPCMPEQBZ256rm },
  4310. { "vpcmpeqb", X86::VPCMPEQBZrr },
  4311. { "vpcmpeqb", X86::VPCMPEQBZrm },
  4312. { "vpcmpeqb", X86::VPCMPEQBZ128rrk },
  4313. { "vpcmpeqb", X86::VPCMPEQBZ128rmk },
  4314. { "vpcmpeqb", X86::VPCMPEQBZ256rrk },
  4315. { "vpcmpeqb", X86::VPCMPEQBZ256rmk },
  4316. { "vpcmpeqb", X86::VPCMPEQBZrrk },
  4317. { "vpcmpeqb", X86::VPCMPEQBZrmk },
  4318. { "vpcmpeqd", X86::VPCMPEQDrr },
  4319. { "vpcmpeqd", X86::VPCMPEQDrm },
  4320. { "vpcmpeqd", X86::VPCMPEQDYrr },
  4321. { "vpcmpeqd", X86::VPCMPEQDYrm },
  4322. { "vpcmpeqd", X86::VPCMPEQDZ128rr },
  4323. { "vpcmpeqd", X86::VPCMPEQDZ128rm },
  4324. { "vpcmpeqd", X86::VPCMPEQDZ256rr },
  4325. { "vpcmpeqd", X86::VPCMPEQDZ256rm },
  4326. { "vpcmpeqd", X86::VPCMPEQDZrr },
  4327. { "vpcmpeqd", X86::VPCMPEQDZrm },
  4328. { "vpcmpeqd", X86::VPCMPEQDZ128rmb },
  4329. { "vpcmpeqd", X86::VPCMPEQDZ256rmb },
  4330. { "vpcmpeqd", X86::VPCMPEQDZrmb },
  4331. { "vpcmpeqd", X86::VPCMPEQDZ128rrk },
  4332. { "vpcmpeqd", X86::VPCMPEQDZ128rmk },
  4333. { "vpcmpeqd", X86::VPCMPEQDZ256rrk },
  4334. { "vpcmpeqd", X86::VPCMPEQDZ256rmk },
  4335. { "vpcmpeqd", X86::VPCMPEQDZrrk },
  4336. { "vpcmpeqd", X86::VPCMPEQDZrmk },
  4337. { "vpcmpeqd", X86::VPCMPEQDZ128rmbk },
  4338. { "vpcmpeqd", X86::VPCMPEQDZ256rmbk },
  4339. { "vpcmpeqd", X86::VPCMPEQDZrmbk },
  4340. { "vpcmpeqq", X86::VPCMPEQQrr },
  4341. { "vpcmpeqq", X86::VPCMPEQQrm },
  4342. { "vpcmpeqq", X86::VPCMPEQQYrr },
  4343. { "vpcmpeqq", X86::VPCMPEQQYrm },
  4344. { "vpcmpeqq", X86::VPCMPEQQZ128rr },
  4345. { "vpcmpeqq", X86::VPCMPEQQZ128rm },
  4346. { "vpcmpeqq", X86::VPCMPEQQZ256rr },
  4347. { "vpcmpeqq", X86::VPCMPEQQZ256rm },
  4348. { "vpcmpeqq", X86::VPCMPEQQZrr },
  4349. { "vpcmpeqq", X86::VPCMPEQQZrm },
  4350. { "vpcmpeqq", X86::VPCMPEQQZ128rmb },
  4351. { "vpcmpeqq", X86::VPCMPEQQZ256rmb },
  4352. { "vpcmpeqq", X86::VPCMPEQQZrmb },
  4353. { "vpcmpeqq", X86::VPCMPEQQZ128rrk },
  4354. { "vpcmpeqq", X86::VPCMPEQQZ128rmk },
  4355. { "vpcmpeqq", X86::VPCMPEQQZ256rrk },
  4356. { "vpcmpeqq", X86::VPCMPEQQZ256rmk },
  4357. { "vpcmpeqq", X86::VPCMPEQQZrrk },
  4358. { "vpcmpeqq", X86::VPCMPEQQZrmk },
  4359. { "vpcmpeqq", X86::VPCMPEQQZ128rmbk },
  4360. { "vpcmpeqq", X86::VPCMPEQQZ256rmbk },
  4361. { "vpcmpeqq", X86::VPCMPEQQZrmbk },
  4362. { "vpcmpeqw", X86::VPCMPEQWrr },
  4363. { "vpcmpeqw", X86::VPCMPEQWrm },
  4364. { "vpcmpeqw", X86::VPCMPEQWYrr },
  4365. { "vpcmpeqw", X86::VPCMPEQWYrm },
  4366. { "vpcmpeqw", X86::VPCMPEQWZ128rr },
  4367. { "vpcmpeqw", X86::VPCMPEQWZ128rm },
  4368. { "vpcmpeqw", X86::VPCMPEQWZ256rr },
  4369. { "vpcmpeqw", X86::VPCMPEQWZ256rm },
  4370. { "vpcmpeqw", X86::VPCMPEQWZrr },
  4371. { "vpcmpeqw", X86::VPCMPEQWZrm },
  4372. { "vpcmpeqw", X86::VPCMPEQWZ128rrk },
  4373. { "vpcmpeqw", X86::VPCMPEQWZ128rmk },
  4374. { "vpcmpeqw", X86::VPCMPEQWZ256rrk },
  4375. { "vpcmpeqw", X86::VPCMPEQWZ256rmk },
  4376. { "vpcmpeqw", X86::VPCMPEQWZrrk },
  4377. { "vpcmpeqw", X86::VPCMPEQWZrmk },
  4378. { "vpcmpestri", X86::VPCMPESTRIrr },
  4379. { "vpcmpestri", X86::VPCMPESTRIrm },
  4380. { "vpcmpestrm", X86::VPCMPESTRM128rr },
  4381. { "vpcmpestrm", X86::VPCMPESTRM128rm },
  4382. { "vpcmpgtb", X86::VPCMPGTBrr },
  4383. { "vpcmpgtb", X86::VPCMPGTBrm },
  4384. { "vpcmpgtb", X86::VPCMPGTBYrr },
  4385. { "vpcmpgtb", X86::VPCMPGTBYrm },
  4386. { "vpcmpgtb", X86::VPCMPGTBZ128rr },
  4387. { "vpcmpgtb", X86::VPCMPGTBZ128rm },
  4388. { "vpcmpgtb", X86::VPCMPGTBZ256rr },
  4389. { "vpcmpgtb", X86::VPCMPGTBZ256rm },
  4390. { "vpcmpgtb", X86::VPCMPGTBZrr },
  4391. { "vpcmpgtb", X86::VPCMPGTBZrm },
  4392. { "vpcmpgtb", X86::VPCMPGTBZ128rrk },
  4393. { "vpcmpgtb", X86::VPCMPGTBZ128rmk },
  4394. { "vpcmpgtb", X86::VPCMPGTBZ256rrk },
  4395. { "vpcmpgtb", X86::VPCMPGTBZ256rmk },
  4396. { "vpcmpgtb", X86::VPCMPGTBZrrk },
  4397. { "vpcmpgtb", X86::VPCMPGTBZrmk },
  4398. { "vpcmpgtd", X86::VPCMPGTDrr },
  4399. { "vpcmpgtd", X86::VPCMPGTDrm },
  4400. { "vpcmpgtd", X86::VPCMPGTDYrr },
  4401. { "vpcmpgtd", X86::VPCMPGTDYrm },
  4402. { "vpcmpgtd", X86::VPCMPGTDZ128rr },
  4403. { "vpcmpgtd", X86::VPCMPGTDZ128rm },
  4404. { "vpcmpgtd", X86::VPCMPGTDZ256rr },
  4405. { "vpcmpgtd", X86::VPCMPGTDZ256rm },
  4406. { "vpcmpgtd", X86::VPCMPGTDZrr },
  4407. { "vpcmpgtd", X86::VPCMPGTDZrm },
  4408. { "vpcmpgtd", X86::VPCMPGTDZ128rmb },
  4409. { "vpcmpgtd", X86::VPCMPGTDZ256rmb },
  4410. { "vpcmpgtd", X86::VPCMPGTDZrmb },
  4411. { "vpcmpgtd", X86::VPCMPGTDZ128rrk },
  4412. { "vpcmpgtd", X86::VPCMPGTDZ128rmk },
  4413. { "vpcmpgtd", X86::VPCMPGTDZ256rrk },
  4414. { "vpcmpgtd", X86::VPCMPGTDZ256rmk },
  4415. { "vpcmpgtd", X86::VPCMPGTDZrrk },
  4416. { "vpcmpgtd", X86::VPCMPGTDZrmk },
  4417. { "vpcmpgtd", X86::VPCMPGTDZ128rmbk },
  4418. { "vpcmpgtd", X86::VPCMPGTDZ256rmbk },
  4419. { "vpcmpgtd", X86::VPCMPGTDZrmbk },
  4420. { "vpcmpgtq", X86::VPCMPGTQrr },
  4421. { "vpcmpgtq", X86::VPCMPGTQrm },
  4422. { "vpcmpgtq", X86::VPCMPGTQYrr },
  4423. { "vpcmpgtq", X86::VPCMPGTQYrm },
  4424. { "vpcmpgtq", X86::VPCMPGTQZ128rr },
  4425. { "vpcmpgtq", X86::VPCMPGTQZ128rm },
  4426. { "vpcmpgtq", X86::VPCMPGTQZ256rr },
  4427. { "vpcmpgtq", X86::VPCMPGTQZ256rm },
  4428. { "vpcmpgtq", X86::VPCMPGTQZrr },
  4429. { "vpcmpgtq", X86::VPCMPGTQZrm },
  4430. { "vpcmpgtq", X86::VPCMPGTQZ128rmb },
  4431. { "vpcmpgtq", X86::VPCMPGTQZ256rmb },
  4432. { "vpcmpgtq", X86::VPCMPGTQZrmb },
  4433. { "vpcmpgtq", X86::VPCMPGTQZ128rrk },
  4434. { "vpcmpgtq", X86::VPCMPGTQZ128rmk },
  4435. { "vpcmpgtq", X86::VPCMPGTQZ256rrk },
  4436. { "vpcmpgtq", X86::VPCMPGTQZ256rmk },
  4437. { "vpcmpgtq", X86::VPCMPGTQZrrk },
  4438. { "vpcmpgtq", X86::VPCMPGTQZrmk },
  4439. { "vpcmpgtq", X86::VPCMPGTQZ128rmbk },
  4440. { "vpcmpgtq", X86::VPCMPGTQZ256rmbk },
  4441. { "vpcmpgtq", X86::VPCMPGTQZrmbk },
  4442. { "vpcmpgtw", X86::VPCMPGTWrr },
  4443. { "vpcmpgtw", X86::VPCMPGTWrm },
  4444. { "vpcmpgtw", X86::VPCMPGTWYrr },
  4445. { "vpcmpgtw", X86::VPCMPGTWYrm },
  4446. { "vpcmpgtw", X86::VPCMPGTWZ128rr },
  4447. { "vpcmpgtw", X86::VPCMPGTWZ128rm },
  4448. { "vpcmpgtw", X86::VPCMPGTWZ256rr },
  4449. { "vpcmpgtw", X86::VPCMPGTWZ256rm },
  4450. { "vpcmpgtw", X86::VPCMPGTWZrr },
  4451. { "vpcmpgtw", X86::VPCMPGTWZrm },
  4452. { "vpcmpgtw", X86::VPCMPGTWZ128rrk },
  4453. { "vpcmpgtw", X86::VPCMPGTWZ128rmk },
  4454. { "vpcmpgtw", X86::VPCMPGTWZ256rrk },
  4455. { "vpcmpgtw", X86::VPCMPGTWZ256rmk },
  4456. { "vpcmpgtw", X86::VPCMPGTWZrrk },
  4457. { "vpcmpgtw", X86::VPCMPGTWZrmk },
  4458. { "vpcmpistri", X86::VPCMPISTRIrr },
  4459. { "vpcmpistri", X86::VPCMPISTRIrm },
  4460. { "vpcmpistrm", X86::VPCMPISTRM128rr },
  4461. { "vpcmpistrm", X86::VPCMPISTRM128rm },
  4462. { "vpcmpq", X86::VPCMPQZ128rri_alt },
  4463. { "vpcmpq", X86::VPCMPQZ128rmi_alt },
  4464. { "vpcmpq", X86::VPCMPQZ256rri_alt },
  4465. { "vpcmpq", X86::VPCMPQZ256rmi_alt },
  4466. { "vpcmpq", X86::VPCMPQZrri_alt },
  4467. { "vpcmpq", X86::VPCMPQZrmi_alt },
  4468. { "vpcmpq", X86::VPCMPQZ128rmib_alt },
  4469. { "vpcmpq", X86::VPCMPQZ256rmib_alt },
  4470. { "vpcmpq", X86::VPCMPQZrmib_alt },
  4471. { "vpcmpq", X86::VPCMPQZ128rrik_alt },
  4472. { "vpcmpq", X86::VPCMPQZ128rmik_alt },
  4473. { "vpcmpq", X86::VPCMPQZ256rrik_alt },
  4474. { "vpcmpq", X86::VPCMPQZ256rmik_alt },
  4475. { "vpcmpq", X86::VPCMPQZrrik_alt },
  4476. { "vpcmpq", X86::VPCMPQZrmik_alt },
  4477. { "vpcmpq", X86::VPCMPQZ128rmibk_alt },
  4478. { "vpcmpq", X86::VPCMPQZ256rmibk_alt },
  4479. { "vpcmpq", X86::VPCMPQZrmibk_alt },
  4480. { "vpcmpub", X86::VPCMPUBZ128rri_alt },
  4481. { "vpcmpub", X86::VPCMPUBZ128rmi_alt },
  4482. { "vpcmpub", X86::VPCMPUBZ256rri_alt },
  4483. { "vpcmpub", X86::VPCMPUBZ256rmi_alt },
  4484. { "vpcmpub", X86::VPCMPUBZrri_alt },
  4485. { "vpcmpub", X86::VPCMPUBZrmi_alt },
  4486. { "vpcmpub", X86::VPCMPUBZ128rrik_alt },
  4487. { "vpcmpub", X86::VPCMPUBZ128rmik_alt },
  4488. { "vpcmpub", X86::VPCMPUBZ256rrik_alt },
  4489. { "vpcmpub", X86::VPCMPUBZ256rmik_alt },
  4490. { "vpcmpub", X86::VPCMPUBZrrik_alt },
  4491. { "vpcmpub", X86::VPCMPUBZrmik_alt },
  4492. { "vpcmpud", X86::VPCMPUDZ128rri_alt },
  4493. { "vpcmpud", X86::VPCMPUDZ128rmi_alt },
  4494. { "vpcmpud", X86::VPCMPUDZ256rri_alt },
  4495. { "vpcmpud", X86::VPCMPUDZ256rmi_alt },
  4496. { "vpcmpud", X86::VPCMPUDZrri_alt },
  4497. { "vpcmpud", X86::VPCMPUDZrmi_alt },
  4498. { "vpcmpud", X86::VPCMPUDZ128rmib_alt },
  4499. { "vpcmpud", X86::VPCMPUDZ256rmib_alt },
  4500. { "vpcmpud", X86::VPCMPUDZrmib_alt },
  4501. { "vpcmpud", X86::VPCMPUDZ128rrik_alt },
  4502. { "vpcmpud", X86::VPCMPUDZ128rmik_alt },
  4503. { "vpcmpud", X86::VPCMPUDZ256rrik_alt },
  4504. { "vpcmpud", X86::VPCMPUDZ256rmik_alt },
  4505. { "vpcmpud", X86::VPCMPUDZrrik_alt },
  4506. { "vpcmpud", X86::VPCMPUDZrmik_alt },
  4507. { "vpcmpud", X86::VPCMPUDZ128rmibk_alt },
  4508. { "vpcmpud", X86::VPCMPUDZ256rmibk_alt },
  4509. { "vpcmpud", X86::VPCMPUDZrmibk_alt },
  4510. { "vpcmpuq", X86::VPCMPUQZ128rri_alt },
  4511. { "vpcmpuq", X86::VPCMPUQZ128rmi_alt },
  4512. { "vpcmpuq", X86::VPCMPUQZ256rri_alt },
  4513. { "vpcmpuq", X86::VPCMPUQZ256rmi_alt },
  4514. { "vpcmpuq", X86::VPCMPUQZrri_alt },
  4515. { "vpcmpuq", X86::VPCMPUQZrmi_alt },
  4516. { "vpcmpuq", X86::VPCMPUQZ128rmib_alt },
  4517. { "vpcmpuq", X86::VPCMPUQZ256rmib_alt },
  4518. { "vpcmpuq", X86::VPCMPUQZrmib_alt },
  4519. { "vpcmpuq", X86::VPCMPUQZ128rrik_alt },
  4520. { "vpcmpuq", X86::VPCMPUQZ128rmik_alt },
  4521. { "vpcmpuq", X86::VPCMPUQZ256rrik_alt },
  4522. { "vpcmpuq", X86::VPCMPUQZ256rmik_alt },
  4523. { "vpcmpuq", X86::VPCMPUQZrrik_alt },
  4524. { "vpcmpuq", X86::VPCMPUQZrmik_alt },
  4525. { "vpcmpuq", X86::VPCMPUQZ128rmibk_alt },
  4526. { "vpcmpuq", X86::VPCMPUQZ256rmibk_alt },
  4527. { "vpcmpuq", X86::VPCMPUQZrmibk_alt },
  4528. { "vpcmpuw", X86::VPCMPUWZ128rri_alt },
  4529. { "vpcmpuw", X86::VPCMPUWZ128rmi_alt },
  4530. { "vpcmpuw", X86::VPCMPUWZ256rri_alt },
  4531. { "vpcmpuw", X86::VPCMPUWZ256rmi_alt },
  4532. { "vpcmpuw", X86::VPCMPUWZrri_alt },
  4533. { "vpcmpuw", X86::VPCMPUWZrmi_alt },
  4534. { "vpcmpuw", X86::VPCMPUWZ128rrik_alt },
  4535. { "vpcmpuw", X86::VPCMPUWZ128rmik_alt },
  4536. { "vpcmpuw", X86::VPCMPUWZ256rrik_alt },
  4537. { "vpcmpuw", X86::VPCMPUWZ256rmik_alt },
  4538. { "vpcmpuw", X86::VPCMPUWZrrik_alt },
  4539. { "vpcmpuw", X86::VPCMPUWZrmik_alt },
  4540. { "vpcmpw", X86::VPCMPWZ128rri_alt },
  4541. { "vpcmpw", X86::VPCMPWZ128rmi_alt },
  4542. { "vpcmpw", X86::VPCMPWZ256rri_alt },
  4543. { "vpcmpw", X86::VPCMPWZ256rmi_alt },
  4544. { "vpcmpw", X86::VPCMPWZrri_alt },
  4545. { "vpcmpw", X86::VPCMPWZrmi_alt },
  4546. { "vpcmpw", X86::VPCMPWZ128rrik_alt },
  4547. { "vpcmpw", X86::VPCMPWZ128rmik_alt },
  4548. { "vpcmpw", X86::VPCMPWZ256rrik_alt },
  4549. { "vpcmpw", X86::VPCMPWZ256rmik_alt },
  4550. { "vpcmpw", X86::VPCMPWZrrik_alt },
  4551. { "vpcmpw", X86::VPCMPWZrmik_alt },
  4552. { "vpcomb", X86::VPCOMBri },
  4553. { "vpcomb", X86::VPCOMBmi },
  4554. { "vpcomd", X86::VPCOMDri },
  4555. { "vpcomd", X86::VPCOMDmi },
  4556. { "vpcomq", X86::VPCOMQri },
  4557. { "vpcomq", X86::VPCOMQmi },
  4558. { "vpcomub", X86::VPCOMUBri },
  4559. { "vpcomub", X86::VPCOMUBmi },
  4560. { "vpcomud", X86::VPCOMUDri },
  4561. { "vpcomud", X86::VPCOMUDmi },
  4562. { "vpcomuq", X86::VPCOMUQri },
  4563. { "vpcomuq", X86::VPCOMUQmi },
  4564. { "vpcomuw", X86::VPCOMUWri },
  4565. { "vpcomuw", X86::VPCOMUWmi },
  4566. { "vpcomw", X86::VPCOMWri },
  4567. { "vpcomw", X86::VPCOMWmi },
  4568. { "vpconflictd", X86::VPCONFLICTDrr },
  4569. { "vpconflictd", X86::VPCONFLICTDrm },
  4570. { "vpconflictd", X86::VPCONFLICTDrmb },
  4571. { "vpconflictd", X86::VPCONFLICTDrrk },
  4572. { "vpconflictd", X86::VPCONFLICTDrmk },
  4573. { "vpconflictd", X86::VPCONFLICTDrrkz },
  4574. { "vpconflictd", X86::VPCONFLICTDrmkz },
  4575. { "vpconflictd", X86::VPCONFLICTDrmbk },
  4576. { "vpconflictd", X86::VPCONFLICTDrmbkz },
  4577. { "vpconflictq", X86::VPCONFLICTQrr },
  4578. { "vpconflictq", X86::VPCONFLICTQrm },
  4579. { "vpconflictq", X86::VPCONFLICTQrmb },
  4580. { "vpconflictq", X86::VPCONFLICTQrrk },
  4581. { "vpconflictq", X86::VPCONFLICTQrmk },
  4582. { "vpconflictq", X86::VPCONFLICTQrrkz },
  4583. { "vpconflictq", X86::VPCONFLICTQrmkz },
  4584. { "vpconflictq", X86::VPCONFLICTQrmbk },
  4585. { "vpconflictq", X86::VPCONFLICTQrmbkz },
  4586. { "vperm2f128", X86::VPERM2F128rr },
  4587. { "vperm2f128", X86::VPERM2F128rm },
  4588. { "vperm2i128", X86::VPERM2I128rr },
  4589. { "vperm2i128", X86::VPERM2I128rm },
  4590. { "vpermd", X86::VPERMDYrr },
  4591. { "vpermd", X86::VPERMDYrm },
  4592. { "vpermd", X86::VPERMDZrr },
  4593. { "vpermd", X86::VPERMDZrm },
  4594. { "vpermi2d", X86::VPERMI2Drr },
  4595. { "vpermi2d", X86::VPERMI2Drm },
  4596. { "vpermi2d", X86::VPERMI2Drrk },
  4597. { "vpermi2d", X86::VPERMI2Drmk },
  4598. { "vpermi2d", X86::VPERMI2Drrkz },
  4599. { "vpermi2d", X86::VPERMI2Drmkz },
  4600. { "vpermi2pd", X86::VPERMI2PDrr },
  4601. { "vpermi2pd", X86::VPERMI2PDrm },
  4602. { "vpermi2pd", X86::VPERMI2PDrrk },
  4603. { "vpermi2pd", X86::VPERMI2PDrmk },
  4604. { "vpermi2pd", X86::VPERMI2PDrrkz },
  4605. { "vpermi2pd", X86::VPERMI2PDrmkz },
  4606. { "vpermi2ps", X86::VPERMI2PSrr },
  4607. { "vpermi2ps", X86::VPERMI2PSrm },
  4608. { "vpermi2ps", X86::VPERMI2PSrrk },
  4609. { "vpermi2ps", X86::VPERMI2PSrmk },
  4610. { "vpermi2ps", X86::VPERMI2PSrrkz },
  4611. { "vpermi2ps", X86::VPERMI2PSrmkz },
  4612. { "vpermi2q", X86::VPERMI2Qrr },
  4613. { "vpermi2q", X86::VPERMI2Qrm },
  4614. { "vpermi2q", X86::VPERMI2Qrrk },
  4615. { "vpermi2q", X86::VPERMI2Qrmk },
  4616. { "vpermi2q", X86::VPERMI2Qrrkz },
  4617. { "vpermi2q", X86::VPERMI2Qrmkz },
  4618. { "vpermil2pd", X86::VPERMIL2PDrr },
  4619. { "vpermil2pd", X86::VPERMIL2PDrm },
  4620. { "vpermil2pd", X86::VPERMIL2PDmr },
  4621. { "vpermil2pd", X86::VPERMIL2PDrrY },
  4622. { "vpermil2pd", X86::VPERMIL2PDrmY },
  4623. { "vpermil2pd", X86::VPERMIL2PDmrY },
  4624. { "vpermil2ps", X86::VPERMIL2PSrr },
  4625. { "vpermil2ps", X86::VPERMIL2PSrm },
  4626. { "vpermil2ps", X86::VPERMIL2PSmr },
  4627. { "vpermil2ps", X86::VPERMIL2PSrrY },
  4628. { "vpermil2ps", X86::VPERMIL2PSrmY },
  4629. { "vpermil2ps", X86::VPERMIL2PSmrY },
  4630. { "vpermilpd", X86::VPERMILPDrr },
  4631. { "vpermilpd", X86::VPERMILPDri },
  4632. { "vpermilpd", X86::VPERMILPDrm },
  4633. { "vpermilpd", X86::VPERMILPDmi },
  4634. { "vpermilpd", X86::VPERMILPDYrr },
  4635. { "vpermilpd", X86::VPERMILPDYri },
  4636. { "vpermilpd", X86::VPERMILPDYrm },
  4637. { "vpermilpd", X86::VPERMILPDYmi },
  4638. { "vpermilpd", X86::VPERMILPDZri },
  4639. { "vpermilpd", X86::VPERMILPDZmi },
  4640. { "vpermilps", X86::VPERMILPSrr },
  4641. { "vpermilps", X86::VPERMILPSri },
  4642. { "vpermilps", X86::VPERMILPSrm },
  4643. { "vpermilps", X86::VPERMILPSmi },
  4644. { "vpermilps", X86::VPERMILPSYrr },
  4645. { "vpermilps", X86::VPERMILPSYri },
  4646. { "vpermilps", X86::VPERMILPSYrm },
  4647. { "vpermilps", X86::VPERMILPSYmi },
  4648. { "vpermilps", X86::VPERMILPSZri },
  4649. { "vpermilps", X86::VPERMILPSZmi },
  4650. { "vpermpd", X86::VPERMPDYri },
  4651. { "vpermpd", X86::VPERMPDYmi },
  4652. { "vpermpd", X86::VPERMPDZrr },
  4653. { "vpermpd", X86::VPERMPDZri },
  4654. { "vpermpd", X86::VPERMPDZrm },
  4655. { "vpermpd", X86::VPERMPDZmi },
  4656. { "vpermps", X86::VPERMPSYrr },
  4657. { "vpermps", X86::VPERMPSYrm },
  4658. { "vpermps", X86::VPERMPSZrr },
  4659. { "vpermps", X86::VPERMPSZrm },
  4660. { "vpermq", X86::VPERMQYri },
  4661. { "vpermq", X86::VPERMQYmi },
  4662. { "vpermq", X86::VPERMQZrr },
  4663. { "vpermq", X86::VPERMQZri },
  4664. { "vpermq", X86::VPERMQZrm },
  4665. { "vpermq", X86::VPERMQZmi },
  4666. { "vpermt2d", X86::VPERMT2Drr },
  4667. { "vpermt2d", X86::VPERMT2Drm },
  4668. { "vpermt2d", X86::VPERMT2Drrk },
  4669. { "vpermt2d", X86::VPERMT2Drmk },
  4670. { "vpermt2d", X86::VPERMT2Drrkz },
  4671. { "vpermt2d", X86::VPERMT2Drmkz },
  4672. { "vpermt2pd", X86::VPERMT2PDrr },
  4673. { "vpermt2pd", X86::VPERMT2PDrm },
  4674. { "vpermt2pd", X86::VPERMT2PDrrk },
  4675. { "vpermt2pd", X86::VPERMT2PDrmk },
  4676. { "vpermt2pd", X86::VPERMT2PDrrkz },
  4677. { "vpermt2pd", X86::VPERMT2PDrmkz },
  4678. { "vpermt2ps", X86::VPERMT2PSrr },
  4679. { "vpermt2ps", X86::VPERMT2PSrm },
  4680. { "vpermt2ps", X86::VPERMT2PSrrk },
  4681. { "vpermt2ps", X86::VPERMT2PSrmk },
  4682. { "vpermt2ps", X86::VPERMT2PSrrkz },
  4683. { "vpermt2ps", X86::VPERMT2PSrmkz },
  4684. { "vpermt2q", X86::VPERMT2Qrr },
  4685. { "vpermt2q", X86::VPERMT2Qrm },
  4686. { "vpermt2q", X86::VPERMT2Qrrk },
  4687. { "vpermt2q", X86::VPERMT2Qrmk },
  4688. { "vpermt2q", X86::VPERMT2Qrrkz },
  4689. { "vpermt2q", X86::VPERMT2Qrmkz },
  4690. { "vpextrb", X86::VPEXTRBrr },
  4691. { "vpextrb", X86::VPEXTRBmr },
  4692. { "vpextrd", X86::VPEXTRDrr },
  4693. { "vpextrd", X86::VPEXTRDmr },
  4694. { "vpextrq", X86::VPEXTRQrr },
  4695. { "vpextrq", X86::VPEXTRQmr },
  4696. { "vpextrw", X86::VPEXTRWri },
  4697. { "vpextrw", X86::VPEXTRWmr },
  4698. { "vpgatherdd", X86::VPGATHERDDrm },
  4699. { "vpgatherdd", X86::VPGATHERDDYrm },
  4700. { "vpgatherdd", X86::VPGATHERDDZrm },
  4701. { "vpgatherdq", X86::VPGATHERDQrm },
  4702. { "vpgatherdq", X86::VPGATHERDQYrm },
  4703. { "vpgatherdq", X86::VPGATHERDQZrm },
  4704. { "vpgatherqd", X86::VPGATHERQDrm },
  4705. { "vpgatherqd", X86::VPGATHERQDYrm },
  4706. { "vpgatherqd", X86::VPGATHERQDZrm },
  4707. { "vpgatherqq", X86::VPGATHERQQrm },
  4708. { "vpgatherqq", X86::VPGATHERQQYrm },
  4709. { "vpgatherqq", X86::VPGATHERQQZrm },
  4710. { "vphaddbd", X86::VPHADDBDrr },
  4711. { "vphaddbd", X86::VPHADDBDrm },
  4712. { "vphaddbq", X86::VPHADDBQrr },
  4713. { "vphaddbq", X86::VPHADDBQrm },
  4714. { "vphaddbw", X86::VPHADDBWrr },
  4715. { "vphaddbw", X86::VPHADDBWrm },
  4716. { "vphaddd", X86::VPHADDDrr },
  4717. { "vphaddd", X86::VPHADDDrm },
  4718. { "vphaddd", X86::VPHADDDYrr },
  4719. { "vphaddd", X86::VPHADDDYrm },
  4720. { "vphadddq", X86::VPHADDDQrr },
  4721. { "vphadddq", X86::VPHADDDQrm },
  4722. { "vphaddsw", X86::VPHADDSWrr128 },
  4723. { "vphaddsw", X86::VPHADDSWrm128 },
  4724. { "vphaddsw", X86::VPHADDSWrr256 },
  4725. { "vphaddsw", X86::VPHADDSWrm256 },
  4726. { "vphaddubd", X86::VPHADDUBDrr },
  4727. { "vphaddubd", X86::VPHADDUBDrm },
  4728. { "vphaddubq", X86::VPHADDUBQrr },
  4729. { "vphaddubq", X86::VPHADDUBQrm },
  4730. { "vphaddubw", X86::VPHADDUBWrr },
  4731. { "vphaddubw", X86::VPHADDUBWrm },
  4732. { "vphaddudq", X86::VPHADDUDQrr },
  4733. { "vphaddudq", X86::VPHADDUDQrm },
  4734. { "vphadduwd", X86::VPHADDUWDrr },
  4735. { "vphadduwd", X86::VPHADDUWDrm },
  4736. { "vphadduwq", X86::VPHADDUWQrr },
  4737. { "vphadduwq", X86::VPHADDUWQrm },
  4738. { "vphaddw", X86::VPHADDWrr },
  4739. { "vphaddw", X86::VPHADDWrm },
  4740. { "vphaddw", X86::VPHADDWYrr },
  4741. { "vphaddw", X86::VPHADDWYrm },
  4742. { "vphaddwd", X86::VPHADDWDrr },
  4743. { "vphaddwd", X86::VPHADDWDrm },
  4744. { "vphaddwq", X86::VPHADDWQrr },
  4745. { "vphaddwq", X86::VPHADDWQrm },
  4746. { "vphminposuw", X86::VPHMINPOSUWrr128 },
  4747. { "vphminposuw", X86::VPHMINPOSUWrm128 },
  4748. { "vphsubbw", X86::VPHSUBBWrr },
  4749. { "vphsubbw", X86::VPHSUBBWrm },
  4750. { "vphsubd", X86::VPHSUBDrr },
  4751. { "vphsubd", X86::VPHSUBDrm },
  4752. { "vphsubd", X86::VPHSUBDYrr },
  4753. { "vphsubd", X86::VPHSUBDYrm },
  4754. { "vphsubdq", X86::VPHSUBDQrr },
  4755. { "vphsubdq", X86::VPHSUBDQrm },
  4756. { "vphsubsw", X86::VPHSUBSWrr128 },
  4757. { "vphsubsw", X86::VPHSUBSWrm128 },
  4758. { "vphsubsw", X86::VPHSUBSWrr256 },
  4759. { "vphsubsw", X86::VPHSUBSWrm256 },
  4760. { "vphsubw", X86::VPHSUBWrr },
  4761. { "vphsubw", X86::VPHSUBWrm },
  4762. { "vphsubw", X86::VPHSUBWYrr },
  4763. { "vphsubw", X86::VPHSUBWYrm },
  4764. { "vphsubwd", X86::VPHSUBWDrr },
  4765. { "vphsubwd", X86::VPHSUBWDrm },
  4766. { "vpinsrb", X86::VPINSRBrr },
  4767. { "vpinsrb", X86::VPINSRBrm },
  4768. { "vpinsrd", X86::VPINSRDrr },
  4769. { "vpinsrd", X86::VPINSRDrm },
  4770. { "vpinsrq", X86::VPINSRQrr },
  4771. { "vpinsrq", X86::VPINSRQrm },
  4772. { "vpinsrw", X86::VPINSRWrri },
  4773. { "vpinsrw", X86::VPINSRWrmi },
  4774. { "vplzcntd", X86::VPLZCNTDrr },
  4775. { "vplzcntd", X86::VPLZCNTDrm },
  4776. { "vplzcntd", X86::VPLZCNTDrmb },
  4777. { "vplzcntd", X86::VPLZCNTDrrk },
  4778. { "vplzcntd", X86::VPLZCNTDrmk },
  4779. { "vplzcntd", X86::VPLZCNTDrrkz },
  4780. { "vplzcntd", X86::VPLZCNTDrmkz },
  4781. { "vplzcntd", X86::VPLZCNTDrmbk },
  4782. { "vplzcntd", X86::VPLZCNTDrmbkz },
  4783. { "vplzcntq", X86::VPLZCNTQrr },
  4784. { "vplzcntq", X86::VPLZCNTQrm },
  4785. { "vplzcntq", X86::VPLZCNTQrmb },
  4786. { "vplzcntq", X86::VPLZCNTQrrk },
  4787. { "vplzcntq", X86::VPLZCNTQrmk },
  4788. { "vplzcntq", X86::VPLZCNTQrrkz },
  4789. { "vplzcntq", X86::VPLZCNTQrmkz },
  4790. { "vplzcntq", X86::VPLZCNTQrmbk },
  4791. { "vplzcntq", X86::VPLZCNTQrmbkz },
  4792. { "vpmacsdd", X86::VPMACSDDrr },
  4793. { "vpmacsdd", X86::VPMACSDDrm },
  4794. { "vpmacsdqh", X86::VPMACSDQHrr },
  4795. { "vpmacsdqh", X86::VPMACSDQHrm },
  4796. { "vpmacsdql", X86::VPMACSDQLrr },
  4797. { "vpmacsdql", X86::VPMACSDQLrm },
  4798. { "vpmacssdd", X86::VPMACSSDDrr },
  4799. { "vpmacssdd", X86::VPMACSSDDrm },
  4800. { "vpmacssdqh", X86::VPMACSSDQHrr },
  4801. { "vpmacssdqh", X86::VPMACSSDQHrm },
  4802. { "vpmacssdql", X86::VPMACSSDQLrr },
  4803. { "vpmacssdql", X86::VPMACSSDQLrm },
  4804. { "vpmacsswd", X86::VPMACSSWDrr },
  4805. { "vpmacsswd", X86::VPMACSSWDrm },
  4806. { "vpmacssww", X86::VPMACSSWWrr },
  4807. { "vpmacssww", X86::VPMACSSWWrm },
  4808. { "vpmacswd", X86::VPMACSWDrr },
  4809. { "vpmacswd", X86::VPMACSWDrm },
  4810. { "vpmacsww", X86::VPMACSWWrr },
  4811. { "vpmacsww", X86::VPMACSWWrm },
  4812. { "vpmadcsswd", X86::VPMADCSSWDrr },
  4813. { "vpmadcsswd", X86::VPMADCSSWDrm },
  4814. { "vpmadcswd", X86::VPMADCSWDrr },
  4815. { "vpmadcswd", X86::VPMADCSWDrm },
  4816. { "vpmaddubsw", X86::VPMADDUBSWrr128 },
  4817. { "vpmaddubsw", X86::VPMADDUBSWrm128 },
  4818. { "vpmaddubsw", X86::VPMADDUBSWrr256 },
  4819. { "vpmaddubsw", X86::VPMADDUBSWrm256 },
  4820. { "vpmaddwd", X86::VPMADDWDrr },
  4821. { "vpmaddwd", X86::VPMADDWDrm },
  4822. { "vpmaddwd", X86::VPMADDWDYrr },
  4823. { "vpmaddwd", X86::VPMADDWDYrm },
  4824. { "vpmaskmovd", X86::VPMASKMOVDrm },
  4825. { "vpmaskmovd", X86::VPMASKMOVDYrm },
  4826. { "vpmaskmovd", X86::VPMASKMOVDmr },
  4827. { "vpmaskmovd", X86::VPMASKMOVDYmr },
  4828. { "vpmaskmovq", X86::VPMASKMOVQrm },
  4829. { "vpmaskmovq", X86::VPMASKMOVQYrm },
  4830. { "vpmaskmovq", X86::VPMASKMOVQmr },
  4831. { "vpmaskmovq", X86::VPMASKMOVQYmr },
  4832. { "vpmaxsb", X86::VPMAXSBrr },
  4833. { "vpmaxsb", X86::VPMAXSBrm },
  4834. { "vpmaxsb", X86::VPMAXSBYrr },
  4835. { "vpmaxsb", X86::VPMAXSBYrm },
  4836. { "vpmaxsd", X86::VPMAXSDrr },
  4837. { "vpmaxsd", X86::VPMAXSDrm },
  4838. { "vpmaxsd", X86::VPMAXSDYrr },
  4839. { "vpmaxsd", X86::VPMAXSDYrm },
  4840. { "vpmaxsd", X86::VPMAXSDZrr },
  4841. { "vpmaxsd", X86::VPMAXSDZrm },
  4842. { "vpmaxsd", X86::VPMAXSDZrmb },
  4843. { "vpmaxsd", X86::VPMAXSDZrrk },
  4844. { "vpmaxsd", X86::VPMAXSDZrmk },
  4845. { "vpmaxsd", X86::VPMAXSDZrrkz },
  4846. { "vpmaxsd", X86::VPMAXSDZrmkz },
  4847. { "vpmaxsd", X86::VPMAXSDZrmbk },
  4848. { "vpmaxsd", X86::VPMAXSDZrmbkz },
  4849. { "vpmaxsq", X86::VPMAXSQZrr },
  4850. { "vpmaxsq", X86::VPMAXSQZrm },
  4851. { "vpmaxsq", X86::VPMAXSQZrmb },
  4852. { "vpmaxsq", X86::VPMAXSQZrrk },
  4853. { "vpmaxsq", X86::VPMAXSQZrmk },
  4854. { "vpmaxsq", X86::VPMAXSQZrrkz },
  4855. { "vpmaxsq", X86::VPMAXSQZrmkz },
  4856. { "vpmaxsq", X86::VPMAXSQZrmbk },
  4857. { "vpmaxsq", X86::VPMAXSQZrmbkz },
  4858. { "vpmaxsw", X86::VPMAXSWrr },
  4859. { "vpmaxsw", X86::VPMAXSWrm },
  4860. { "vpmaxsw", X86::VPMAXSWYrr },
  4861. { "vpmaxsw", X86::VPMAXSWYrm },
  4862. { "vpmaxub", X86::VPMAXUBrr },
  4863. { "vpmaxub", X86::VPMAXUBrm },
  4864. { "vpmaxub", X86::VPMAXUBYrr },
  4865. { "vpmaxub", X86::VPMAXUBYrm },
  4866. { "vpmaxud", X86::VPMAXUDrr },
  4867. { "vpmaxud", X86::VPMAXUDrm },
  4868. { "vpmaxud", X86::VPMAXUDYrr },
  4869. { "vpmaxud", X86::VPMAXUDYrm },
  4870. { "vpmaxud", X86::VPMAXUDZrr },
  4871. { "vpmaxud", X86::VPMAXUDZrm },
  4872. { "vpmaxud", X86::VPMAXUDZrmb },
  4873. { "vpmaxud", X86::VPMAXUDZrrk },
  4874. { "vpmaxud", X86::VPMAXUDZrmk },
  4875. { "vpmaxud", X86::VPMAXUDZrrkz },
  4876. { "vpmaxud", X86::VPMAXUDZrmkz },
  4877. { "vpmaxud", X86::VPMAXUDZrmbk },
  4878. { "vpmaxud", X86::VPMAXUDZrmbkz },
  4879. { "vpmaxuq", X86::VPMAXUQZrr },
  4880. { "vpmaxuq", X86::VPMAXUQZrm },
  4881. { "vpmaxuq", X86::VPMAXUQZrmb },
  4882. { "vpmaxuq", X86::VPMAXUQZrrk },
  4883. { "vpmaxuq", X86::VPMAXUQZrmk },
  4884. { "vpmaxuq", X86::VPMAXUQZrrkz },
  4885. { "vpmaxuq", X86::VPMAXUQZrmkz },
  4886. { "vpmaxuq", X86::VPMAXUQZrmbk },
  4887. { "vpmaxuq", X86::VPMAXUQZrmbkz },
  4888. { "vpmaxuw", X86::VPMAXUWrr },
  4889. { "vpmaxuw", X86::VPMAXUWrm },
  4890. { "vpmaxuw", X86::VPMAXUWYrr },
  4891. { "vpmaxuw", X86::VPMAXUWYrm },
  4892. { "vpminsb", X86::VPMINSBrr },
  4893. { "vpminsb", X86::VPMINSBrm },
  4894. { "vpminsb", X86::VPMINSBYrr },
  4895. { "vpminsb", X86::VPMINSBYrm },
  4896. { "vpminsd", X86::VPMINSDrr },
  4897. { "vpminsd", X86::VPMINSDrm },
  4898. { "vpminsd", X86::VPMINSDYrr },
  4899. { "vpminsd", X86::VPMINSDYrm },
  4900. { "vpminsd", X86::VPMINSDZrr },
  4901. { "vpminsd", X86::VPMINSDZrm },
  4902. { "vpminsd", X86::VPMINSDZrmb },
  4903. { "vpminsd", X86::VPMINSDZrrk },
  4904. { "vpminsd", X86::VPMINSDZrmk },
  4905. { "vpminsd", X86::VPMINSDZrrkz },
  4906. { "vpminsd", X86::VPMINSDZrmkz },
  4907. { "vpminsd", X86::VPMINSDZrmbk },
  4908. { "vpminsd", X86::VPMINSDZrmbkz },
  4909. { "vpminsq", X86::VPMINSQZrr },
  4910. { "vpminsq", X86::VPMINSQZrm },
  4911. { "vpminsq", X86::VPMINSQZrmb },
  4912. { "vpminsq", X86::VPMINSQZrrk },
  4913. { "vpminsq", X86::VPMINSQZrmk },
  4914. { "vpminsq", X86::VPMINSQZrrkz },
  4915. { "vpminsq", X86::VPMINSQZrmkz },
  4916. { "vpminsq", X86::VPMINSQZrmbk },
  4917. { "vpminsq", X86::VPMINSQZrmbkz },
  4918. { "vpminsw", X86::VPMINSWrr },
  4919. { "vpminsw", X86::VPMINSWrm },
  4920. { "vpminsw", X86::VPMINSWYrr },
  4921. { "vpminsw", X86::VPMINSWYrm },
  4922. { "vpminub", X86::VPMINUBrr },
  4923. { "vpminub", X86::VPMINUBrm },
  4924. { "vpminub", X86::VPMINUBYrr },
  4925. { "vpminub", X86::VPMINUBYrm },
  4926. { "vpminud", X86::VPMINUDrr },
  4927. { "vpminud", X86::VPMINUDrm },
  4928. { "vpminud", X86::VPMINUDYrr },
  4929. { "vpminud", X86::VPMINUDYrm },
  4930. { "vpminud", X86::VPMINUDZrr },
  4931. { "vpminud", X86::VPMINUDZrm },
  4932. { "vpminud", X86::VPMINUDZrmb },
  4933. { "vpminud", X86::VPMINUDZrrk },
  4934. { "vpminud", X86::VPMINUDZrmk },
  4935. { "vpminud", X86::VPMINUDZrrkz },
  4936. { "vpminud", X86::VPMINUDZrmkz },
  4937. { "vpminud", X86::VPMINUDZrmbk },
  4938. { "vpminud", X86::VPMINUDZrmbkz },
  4939. { "vpminuq", X86::VPMINUQZrr },
  4940. { "vpminuq", X86::VPMINUQZrm },
  4941. { "vpminuq", X86::VPMINUQZrmb },
  4942. { "vpminuq", X86::VPMINUQZrrk },
  4943. { "vpminuq", X86::VPMINUQZrmk },
  4944. { "vpminuq", X86::VPMINUQZrrkz },
  4945. { "vpminuq", X86::VPMINUQZrmkz },
  4946. { "vpminuq", X86::VPMINUQZrmbk },
  4947. { "vpminuq", X86::VPMINUQZrmbkz },
  4948. { "vpminuw", X86::VPMINUWrr },
  4949. { "vpminuw", X86::VPMINUWrm },
  4950. { "vpminuw", X86::VPMINUWYrr },
  4951. { "vpminuw", X86::VPMINUWYrm },
  4952. { "vpmovdb", X86::VPMOVDBrr },
  4953. { "vpmovdb", X86::VPMOVDBmr },
  4954. { "vpmovdb", X86::VPMOVDBrrk },
  4955. { "vpmovdb", X86::VPMOVDBmrk },
  4956. { "vpmovdb", X86::VPMOVDBrrkz },
  4957. { "vpmovdw", X86::VPMOVDWrr },
  4958. { "vpmovdw", X86::VPMOVDWmr },
  4959. { "vpmovdw", X86::VPMOVDWrrk },
  4960. { "vpmovdw", X86::VPMOVDWmrk },
  4961. { "vpmovdw", X86::VPMOVDWrrkz },
  4962. { "vpmovmskb", X86::VPMOVMSKBrr },
  4963. { "vpmovmskb", X86::VPMOVMSKBYrr },
  4964. { "vpmovqb", X86::VPMOVQBrr },
  4965. { "vpmovqb", X86::VPMOVQBmr },
  4966. { "vpmovqb", X86::VPMOVQBrrk },
  4967. { "vpmovqb", X86::VPMOVQBmrk },
  4968. { "vpmovqb", X86::VPMOVQBrrkz },
  4969. { "vpmovqd", X86::VPMOVQDrr },
  4970. { "vpmovqd", X86::VPMOVQDmr },
  4971. { "vpmovqd", X86::VPMOVQDrrk },
  4972. { "vpmovqd", X86::VPMOVQDmrk },
  4973. { "vpmovqd", X86::VPMOVQDrrkz },
  4974. { "vpmovqw", X86::VPMOVQWrr },
  4975. { "vpmovqw", X86::VPMOVQWmr },
  4976. { "vpmovqw", X86::VPMOVQWrrk },
  4977. { "vpmovqw", X86::VPMOVQWmrk },
  4978. { "vpmovqw", X86::VPMOVQWrrkz },
  4979. { "vpmovsdb", X86::VPMOVSDBrr },
  4980. { "vpmovsdb", X86::VPMOVSDBmr },
  4981. { "vpmovsdb", X86::VPMOVSDBrrk },
  4982. { "vpmovsdb", X86::VPMOVSDBmrk },
  4983. { "vpmovsdb", X86::VPMOVSDBrrkz },
  4984. { "vpmovsdw", X86::VPMOVSDWrr },
  4985. { "vpmovsdw", X86::VPMOVSDWmr },
  4986. { "vpmovsdw", X86::VPMOVSDWrrk },
  4987. { "vpmovsdw", X86::VPMOVSDWmrk },
  4988. { "vpmovsdw", X86::VPMOVSDWrrkz },
  4989. { "vpmovsqb", X86::VPMOVSQBrr },
  4990. { "vpmovsqb", X86::VPMOVSQBmr },
  4991. { "vpmovsqb", X86::VPMOVSQBrrk },
  4992. { "vpmovsqb", X86::VPMOVSQBmrk },
  4993. { "vpmovsqb", X86::VPMOVSQBrrkz },
  4994. { "vpmovsqd", X86::VPMOVSQDrr },
  4995. { "vpmovsqd", X86::VPMOVSQDmr },
  4996. { "vpmovsqd", X86::VPMOVSQDrrk },
  4997. { "vpmovsqd", X86::VPMOVSQDmrk },
  4998. { "vpmovsqd", X86::VPMOVSQDrrkz },
  4999. { "vpmovsqw", X86::VPMOVSQWrr },
  5000. { "vpmovsqw", X86::VPMOVSQWmr },
  5001. { "vpmovsqw", X86::VPMOVSQWrrk },
  5002. { "vpmovsqw", X86::VPMOVSQWmrk },
  5003. { "vpmovsqw", X86::VPMOVSQWrrkz },
  5004. { "vpmovsxbd", X86::VPMOVSXBDrr },
  5005. { "vpmovsxbd", X86::VPMOVSXBDrm },
  5006. { "vpmovsxbd", X86::VPMOVSXBDYrr },
  5007. { "vpmovsxbd", X86::VPMOVSXBDYrm },
  5008. { "vpmovsxbd", X86::VPMOVSXBDZrr },
  5009. { "vpmovsxbd", X86::VPMOVSXBDZrm },
  5010. { "vpmovsxbd", X86::VPMOVSXBDZrrk },
  5011. { "vpmovsxbd", X86::VPMOVSXBDZrmk },
  5012. { "vpmovsxbd", X86::VPMOVSXBDZrrkz },
  5013. { "vpmovsxbd", X86::VPMOVSXBDZrmkz },
  5014. { "vpmovsxbq", X86::VPMOVSXBQrr },
  5015. { "vpmovsxbq", X86::VPMOVSXBQrm },
  5016. { "vpmovsxbq", X86::VPMOVSXBQYrr },
  5017. { "vpmovsxbq", X86::VPMOVSXBQYrm },
  5018. { "vpmovsxbq", X86::VPMOVSXBQZrr },
  5019. { "vpmovsxbq", X86::VPMOVSXBQZrm },
  5020. { "vpmovsxbq", X86::VPMOVSXBQZrrk },
  5021. { "vpmovsxbq", X86::VPMOVSXBQZrmk },
  5022. { "vpmovsxbq", X86::VPMOVSXBQZrrkz },
  5023. { "vpmovsxbq", X86::VPMOVSXBQZrmkz },
  5024. { "vpmovsxbw", X86::VPMOVSXBWrr },
  5025. { "vpmovsxbw", X86::VPMOVSXBWrm },
  5026. { "vpmovsxbw", X86::VPMOVSXBWYrr },
  5027. { "vpmovsxbw", X86::VPMOVSXBWYrm },
  5028. { "vpmovsxdq", X86::VPMOVSXDQrr },
  5029. { "vpmovsxdq", X86::VPMOVSXDQrm },
  5030. { "vpmovsxdq", X86::VPMOVSXDQYrr },
  5031. { "vpmovsxdq", X86::VPMOVSXDQYrm },
  5032. { "vpmovsxdq", X86::VPMOVSXDQZrr },
  5033. { "vpmovsxdq", X86::VPMOVSXDQZrm },
  5034. { "vpmovsxdq", X86::VPMOVSXDQZrrk },
  5035. { "vpmovsxdq", X86::VPMOVSXDQZrmk },
  5036. { "vpmovsxdq", X86::VPMOVSXDQZrrkz },
  5037. { "vpmovsxdq", X86::VPMOVSXDQZrmkz },
  5038. { "vpmovsxwd", X86::VPMOVSXWDrr },
  5039. { "vpmovsxwd", X86::VPMOVSXWDrm },
  5040. { "vpmovsxwd", X86::VPMOVSXWDYrr },
  5041. { "vpmovsxwd", X86::VPMOVSXWDYrm },
  5042. { "vpmovsxwd", X86::VPMOVSXWDZrr },
  5043. { "vpmovsxwd", X86::VPMOVSXWDZrm },
  5044. { "vpmovsxwd", X86::VPMOVSXWDZrrk },
  5045. { "vpmovsxwd", X86::VPMOVSXWDZrmk },
  5046. { "vpmovsxwd", X86::VPMOVSXWDZrrkz },
  5047. { "vpmovsxwd", X86::VPMOVSXWDZrmkz },
  5048. { "vpmovsxwq", X86::VPMOVSXWQrr },
  5049. { "vpmovsxwq", X86::VPMOVSXWQrm },
  5050. { "vpmovsxwq", X86::VPMOVSXWQYrr },
  5051. { "vpmovsxwq", X86::VPMOVSXWQYrm },
  5052. { "vpmovsxwq", X86::VPMOVSXWQZrr },
  5053. { "vpmovsxwq", X86::VPMOVSXWQZrm },
  5054. { "vpmovsxwq", X86::VPMOVSXWQZrrk },
  5055. { "vpmovsxwq", X86::VPMOVSXWQZrmk },
  5056. { "vpmovsxwq", X86::VPMOVSXWQZrrkz },
  5057. { "vpmovsxwq", X86::VPMOVSXWQZrmkz },
  5058. { "vpmovusdb", X86::VPMOVUSDBrr },
  5059. { "vpmovusdb", X86::VPMOVUSDBmr },
  5060. { "vpmovusdb", X86::VPMOVUSDBrrk },
  5061. { "vpmovusdb", X86::VPMOVUSDBmrk },
  5062. { "vpmovusdb", X86::VPMOVUSDBrrkz },
  5063. { "vpmovusdw", X86::VPMOVUSDWrr },
  5064. { "vpmovusdw", X86::VPMOVUSDWmr },
  5065. { "vpmovusdw", X86::VPMOVUSDWrrk },
  5066. { "vpmovusdw", X86::VPMOVUSDWmrk },
  5067. { "vpmovusdw", X86::VPMOVUSDWrrkz },
  5068. { "vpmovusqb", X86::VPMOVUSQBrr },
  5069. { "vpmovusqb", X86::VPMOVUSQBmr },
  5070. { "vpmovusqb", X86::VPMOVUSQBrrk },
  5071. { "vpmovusqb", X86::VPMOVUSQBmrk },
  5072. { "vpmovusqb", X86::VPMOVUSQBrrkz },
  5073. { "vpmovusqd", X86::VPMOVUSQDrr },
  5074. { "vpmovusqd", X86::VPMOVUSQDmr },
  5075. { "vpmovusqd", X86::VPMOVUSQDrrk },
  5076. { "vpmovusqd", X86::VPMOVUSQDmrk },
  5077. { "vpmovusqd", X86::VPMOVUSQDrrkz },
  5078. { "vpmovusqw", X86::VPMOVUSQWrr },
  5079. { "vpmovusqw", X86::VPMOVUSQWmr },
  5080. { "vpmovusqw", X86::VPMOVUSQWrrk },
  5081. { "vpmovusqw", X86::VPMOVUSQWmrk },
  5082. { "vpmovusqw", X86::VPMOVUSQWrrkz },
  5083. { "vpmovzxbd", X86::VPMOVZXBDrr },
  5084. { "vpmovzxbd", X86::VPMOVZXBDrm },
  5085. { "vpmovzxbd", X86::VPMOVZXBDYrr },
  5086. { "vpmovzxbd", X86::VPMOVZXBDYrm },
  5087. { "vpmovzxbd", X86::VPMOVZXBDZrr },
  5088. { "vpmovzxbd", X86::VPMOVZXBDZrm },
  5089. { "vpmovzxbd", X86::VPMOVZXBDZrrk },
  5090. { "vpmovzxbd", X86::VPMOVZXBDZrmk },
  5091. { "vpmovzxbd", X86::VPMOVZXBDZrrkz },
  5092. { "vpmovzxbd", X86::VPMOVZXBDZrmkz },
  5093. { "vpmovzxbq", X86::VPMOVZXBQrr },
  5094. { "vpmovzxbq", X86::VPMOVZXBQrm },
  5095. { "vpmovzxbq", X86::VPMOVZXBQYrr },
  5096. { "vpmovzxbq", X86::VPMOVZXBQYrm },
  5097. { "vpmovzxbq", X86::VPMOVZXBQZrr },
  5098. { "vpmovzxbq", X86::VPMOVZXBQZrm },
  5099. { "vpmovzxbq", X86::VPMOVZXBQZrrk },
  5100. { "vpmovzxbq", X86::VPMOVZXBQZrmk },
  5101. { "vpmovzxbq", X86::VPMOVZXBQZrrkz },
  5102. { "vpmovzxbq", X86::VPMOVZXBQZrmkz },
  5103. { "vpmovzxbw", X86::VPMOVZXBWrr },
  5104. { "vpmovzxbw", X86::VPMOVZXBWrm },
  5105. { "vpmovzxbw", X86::VPMOVZXBWYrr },
  5106. { "vpmovzxbw", X86::VPMOVZXBWYrm },
  5107. { "vpmovzxdq", X86::VPMOVZXDQrr },
  5108. { "vpmovzxdq", X86::VPMOVZXDQrm },
  5109. { "vpmovzxdq", X86::VPMOVZXDQYrr },
  5110. { "vpmovzxdq", X86::VPMOVZXDQYrm },
  5111. { "vpmovzxdq", X86::VPMOVZXDQZrr },
  5112. { "vpmovzxdq", X86::VPMOVZXDQZrm },
  5113. { "vpmovzxdq", X86::VPMOVZXDQZrrk },
  5114. { "vpmovzxdq", X86::VPMOVZXDQZrmk },
  5115. { "vpmovzxdq", X86::VPMOVZXDQZrrkz },
  5116. { "vpmovzxdq", X86::VPMOVZXDQZrmkz },
  5117. { "vpmovzxwd", X86::VPMOVZXWDrr },
  5118. { "vpmovzxwd", X86::VPMOVZXWDrm },
  5119. { "vpmovzxwd", X86::VPMOVZXWDYrr },
  5120. { "vpmovzxwd", X86::VPMOVZXWDYrm },
  5121. { "vpmovzxwd", X86::VPMOVZXWDZrr },
  5122. { "vpmovzxwd", X86::VPMOVZXWDZrm },
  5123. { "vpmovzxwd", X86::VPMOVZXWDZrrk },
  5124. { "vpmovzxwd", X86::VPMOVZXWDZrmk },
  5125. { "vpmovzxwd", X86::VPMOVZXWDZrrkz },
  5126. { "vpmovzxwd", X86::VPMOVZXWDZrmkz },
  5127. { "vpmovzxwq", X86::VPMOVZXWQrr },
  5128. { "vpmovzxwq", X86::VPMOVZXWQrm },
  5129. { "vpmovzxwq", X86::VPMOVZXWQYrr },
  5130. { "vpmovzxwq", X86::VPMOVZXWQYrm },
  5131. { "vpmovzxwq", X86::VPMOVZXWQZrr },
  5132. { "vpmovzxwq", X86::VPMOVZXWQZrm },
  5133. { "vpmovzxwq", X86::VPMOVZXWQZrrk },
  5134. { "vpmovzxwq", X86::VPMOVZXWQZrmk },
  5135. { "vpmovzxwq", X86::VPMOVZXWQZrrkz },
  5136. { "vpmovzxwq", X86::VPMOVZXWQZrmkz },
  5137. { "vpmuldq", X86::VPMULDQrr },
  5138. { "vpmuldq", X86::VPMULDQrm },
  5139. { "vpmuldq", X86::VPMULDQYrr },
  5140. { "vpmuldq", X86::VPMULDQYrm },
  5141. { "vpmuldq", X86::VPMULDQZrr },
  5142. { "vpmuldq", X86::VPMULDQZrm },
  5143. { "vpmuldq", X86::VPMULDQZrmb },
  5144. { "vpmuldq", X86::VPMULDQZrrk },
  5145. { "vpmuldq", X86::VPMULDQZrmk },
  5146. { "vpmuldq", X86::VPMULDQZrrkz },
  5147. { "vpmuldq", X86::VPMULDQZrmkz },
  5148. { "vpmuldq", X86::VPMULDQZrmbk },
  5149. { "vpmuldq", X86::VPMULDQZrmbkz },
  5150. { "vpmulhrsw", X86::VPMULHRSWrr128 },
  5151. { "vpmulhrsw", X86::VPMULHRSWrm128 },
  5152. { "vpmulhrsw", X86::VPMULHRSWrr256 },
  5153. { "vpmulhrsw", X86::VPMULHRSWrm256 },
  5154. { "vpmulhuw", X86::VPMULHUWrr },
  5155. { "vpmulhuw", X86::VPMULHUWrm },
  5156. { "vpmulhuw", X86::VPMULHUWYrr },
  5157. { "vpmulhuw", X86::VPMULHUWYrm },
  5158. { "vpmulhw", X86::VPMULHWrr },
  5159. { "vpmulhw", X86::VPMULHWrm },
  5160. { "vpmulhw", X86::VPMULHWYrr },
  5161. { "vpmulhw", X86::VPMULHWYrm },
  5162. { "vpmulld", X86::VPMULLDrr },
  5163. { "vpmulld", X86::VPMULLDrm },
  5164. { "vpmulld", X86::VPMULLDYrr },
  5165. { "vpmulld", X86::VPMULLDYrm },
  5166. { "vpmulld", X86::VPMULLDZrr },
  5167. { "vpmulld", X86::VPMULLDZrm },
  5168. { "vpmulld", X86::VPMULLDZrmb },
  5169. { "vpmulld", X86::VPMULLDZrrk },
  5170. { "vpmulld", X86::VPMULLDZrmk },
  5171. { "vpmulld", X86::VPMULLDZrrkz },
  5172. { "vpmulld", X86::VPMULLDZrmkz },
  5173. { "vpmulld", X86::VPMULLDZrmbk },
  5174. { "vpmulld", X86::VPMULLDZrmbkz },
  5175. { "vpmullw", X86::VPMULLWrr },
  5176. { "vpmullw", X86::VPMULLWrm },
  5177. { "vpmullw", X86::VPMULLWYrr },
  5178. { "vpmullw", X86::VPMULLWYrm },
  5179. { "vpmuludq", X86::VPMULUDQrr },
  5180. { "vpmuludq", X86::VPMULUDQrm },
  5181. { "vpmuludq", X86::VPMULUDQYrr },
  5182. { "vpmuludq", X86::VPMULUDQYrm },
  5183. { "vpmuludq", X86::VPMULUDQZrr },
  5184. { "vpmuludq", X86::VPMULUDQZrm },
  5185. { "vpmuludq", X86::VPMULUDQZrmb },
  5186. { "vpmuludq", X86::VPMULUDQZrrk },
  5187. { "vpmuludq", X86::VPMULUDQZrmk },
  5188. { "vpmuludq", X86::VPMULUDQZrrkz },
  5189. { "vpmuludq", X86::VPMULUDQZrmkz },
  5190. { "vpmuludq", X86::VPMULUDQZrmbk },
  5191. { "vpmuludq", X86::VPMULUDQZrmbkz },
  5192. { "vpor", X86::VPORrr },
  5193. { "vpor", X86::VPORrm },
  5194. { "vpor", X86::VPORYrr },
  5195. { "vpor", X86::VPORYrm },
  5196. { "vpord", X86::VPORDZrr },
  5197. { "vpord", X86::VPORDZrm },
  5198. { "vpord", X86::VPORDZrmb },
  5199. { "vpord", X86::VPORDZrrk },
  5200. { "vpord", X86::VPORDZrmk },
  5201. { "vpord", X86::VPORDZrrkz },
  5202. { "vpord", X86::VPORDZrmkz },
  5203. { "vpord", X86::VPORDZrmbk },
  5204. { "vpord", X86::VPORDZrmbkz },
  5205. { "vporq", X86::VPORQZrr },
  5206. { "vporq", X86::VPORQZrm },
  5207. { "vporq", X86::VPORQZrmb },
  5208. { "vporq", X86::VPORQZrrk },
  5209. { "vporq", X86::VPORQZrmk },
  5210. { "vporq", X86::VPORQZrrkz },
  5211. { "vporq", X86::VPORQZrmkz },
  5212. { "vporq", X86::VPORQZrmbk },
  5213. { "vporq", X86::VPORQZrmbkz },
  5214. { "vpperm", X86::VPPERMrr },
  5215. { "vpperm", X86::VPPERMrm },
  5216. { "vpperm", X86::VPPERMmr },
  5217. { "vprotb", X86::VPROTBrr },
  5218. { "vprotb", X86::VPROTBri },
  5219. { "vprotb", X86::VPROTBrm },
  5220. { "vprotb", X86::VPROTBmr },
  5221. { "vprotb", X86::VPROTBmi },
  5222. { "vprotd", X86::VPROTDrr },
  5223. { "vprotd", X86::VPROTDri },
  5224. { "vprotd", X86::VPROTDrm },
  5225. { "vprotd", X86::VPROTDmr },
  5226. { "vprotd", X86::VPROTDmi },
  5227. { "vprotq", X86::VPROTQrr },
  5228. { "vprotq", X86::VPROTQri },
  5229. { "vprotq", X86::VPROTQrm },
  5230. { "vprotq", X86::VPROTQmr },
  5231. { "vprotq", X86::VPROTQmi },
  5232. { "vprotw", X86::VPROTWrr },
  5233. { "vprotw", X86::VPROTWri },
  5234. { "vprotw", X86::VPROTWrm },
  5235. { "vprotw", X86::VPROTWmr },
  5236. { "vprotw", X86::VPROTWmi },
  5237. { "vpsadbw", X86::VPSADBWrr },
  5238. { "vpsadbw", X86::VPSADBWrm },
  5239. { "vpsadbw", X86::VPSADBWYrr },
  5240. { "vpsadbw", X86::VPSADBWYrm },
  5241. { "vpscatterdd", X86::VPSCATTERDDZmr },
  5242. { "vpscatterdq", X86::VPSCATTERDQZmr },
  5243. { "vpscatterqd", X86::VPSCATTERQDZmr },
  5244. { "vpscatterqq", X86::VPSCATTERQQZmr },
  5245. { "vpshab", X86::VPSHABrr },
  5246. { "vpshab", X86::VPSHABrm },
  5247. { "vpshab", X86::VPSHABmr },
  5248. { "vpshad", X86::VPSHADrr },
  5249. { "vpshad", X86::VPSHADrm },
  5250. { "vpshad", X86::VPSHADmr },
  5251. { "vpshaq", X86::VPSHAQrr },
  5252. { "vpshaq", X86::VPSHAQrm },
  5253. { "vpshaq", X86::VPSHAQmr },
  5254. { "vpshaw", X86::VPSHAWrr },
  5255. { "vpshaw", X86::VPSHAWrm },
  5256. { "vpshaw", X86::VPSHAWmr },
  5257. { "vpshlb", X86::VPSHLBrr },
  5258. { "vpshlb", X86::VPSHLBrm },
  5259. { "vpshlb", X86::VPSHLBmr },
  5260. { "vpshld", X86::VPSHLDrr },
  5261. { "vpshld", X86::VPSHLDrm },
  5262. { "vpshld", X86::VPSHLDmr },
  5263. { "vpshlq", X86::VPSHLQrr },
  5264. { "vpshlq", X86::VPSHLQrm },
  5265. { "vpshlq", X86::VPSHLQmr },
  5266. { "vpshlw", X86::VPSHLWrr },
  5267. { "vpshlw", X86::VPSHLWrm },
  5268. { "vpshlw", X86::VPSHLWmr },
  5269. { "vpshufb", X86::VPSHUFBrr },
  5270. { "vpshufb", X86::VPSHUFBrm },
  5271. { "vpshufb", X86::VPSHUFBYrr },
  5272. { "vpshufb", X86::VPSHUFBYrm },
  5273. { "vpshufd", X86::VPSHUFDri },
  5274. { "vpshufd", X86::VPSHUFDmi },
  5275. { "vpshufd", X86::VPSHUFDYri },
  5276. { "vpshufd", X86::VPSHUFDYmi },
  5277. { "vpshufd", X86::VPSHUFDZri },
  5278. { "vpshufd", X86::VPSHUFDZmi },
  5279. { "vpshufhw", X86::VPSHUFHWri },
  5280. { "vpshufhw", X86::VPSHUFHWmi },
  5281. { "vpshufhw", X86::VPSHUFHWYri },
  5282. { "vpshufhw", X86::VPSHUFHWYmi },
  5283. { "vpshuflw", X86::VPSHUFLWri },
  5284. { "vpshuflw", X86::VPSHUFLWmi },
  5285. { "vpshuflw", X86::VPSHUFLWYri },
  5286. { "vpshuflw", X86::VPSHUFLWYmi },
  5287. { "vpsignb", X86::VPSIGNBrr },
  5288. { "vpsignb", X86::VPSIGNBrm },
  5289. { "vpsignb", X86::VPSIGNBYrr },
  5290. { "vpsignb", X86::VPSIGNBYrm },
  5291. { "vpsignd", X86::VPSIGNDrr },
  5292. { "vpsignd", X86::VPSIGNDrm },
  5293. { "vpsignd", X86::VPSIGNDYrr },
  5294. { "vpsignd", X86::VPSIGNDYrm },
  5295. { "vpsignw", X86::VPSIGNWrr },
  5296. { "vpsignw", X86::VPSIGNWrm },
  5297. { "vpsignw", X86::VPSIGNWYrr },
  5298. { "vpsignw", X86::VPSIGNWYrm },
  5299. { "vpslld", X86::VPSLLDrr },
  5300. { "vpslld", X86::VPSLLDri },
  5301. { "vpslld", X86::VPSLLDrm },
  5302. { "vpslld", X86::VPSLLDYrr },
  5303. { "vpslld", X86::VPSLLDYri },
  5304. { "vpslld", X86::VPSLLDYrm },
  5305. { "vpslld", X86::VPSLLDZrr },
  5306. { "vpslld", X86::VPSLLDZri },
  5307. { "vpslld", X86::VPSLLDZrm },
  5308. { "vpslld", X86::VPSLLDZmi },
  5309. { "vpslld", X86::VPSLLDZrrk },
  5310. { "vpslld", X86::VPSLLDZrik },
  5311. { "vpslld", X86::VPSLLDZrmk },
  5312. { "vpslld", X86::VPSLLDZmik },
  5313. { "vpslldq", X86::VPSLLDQri },
  5314. { "vpslldq", X86::VPSLLDQYri },
  5315. { "vpsllq", X86::VPSLLQrr },
  5316. { "vpsllq", X86::VPSLLQri },
  5317. { "vpsllq", X86::VPSLLQrm },
  5318. { "vpsllq", X86::VPSLLQYrr },
  5319. { "vpsllq", X86::VPSLLQYri },
  5320. { "vpsllq", X86::VPSLLQYrm },
  5321. { "vpsllq", X86::VPSLLQZrr },
  5322. { "vpsllq", X86::VPSLLQZri },
  5323. { "vpsllq", X86::VPSLLQZrm },
  5324. { "vpsllq", X86::VPSLLQZmi },
  5325. { "vpsllq", X86::VPSLLQZrrk },
  5326. { "vpsllq", X86::VPSLLQZrik },
  5327. { "vpsllq", X86::VPSLLQZrmk },
  5328. { "vpsllq", X86::VPSLLQZmik },
  5329. { "vpsllvd", X86::VPSLLVDrr },
  5330. { "vpsllvd", X86::VPSLLVDrm },
  5331. { "vpsllvd", X86::VPSLLVDYrr },
  5332. { "vpsllvd", X86::VPSLLVDYrm },
  5333. { "vpsllvd", X86::VPSLLVDZrr },
  5334. { "vpsllvd", X86::VPSLLVDZrm },
  5335. { "vpsllvq", X86::VPSLLVQrr },
  5336. { "vpsllvq", X86::VPSLLVQrm },
  5337. { "vpsllvq", X86::VPSLLVQYrr },
  5338. { "vpsllvq", X86::VPSLLVQYrm },
  5339. { "vpsllvq", X86::VPSLLVQZrr },
  5340. { "vpsllvq", X86::VPSLLVQZrm },
  5341. { "vpsllw", X86::VPSLLWrr },
  5342. { "vpsllw", X86::VPSLLWri },
  5343. { "vpsllw", X86::VPSLLWrm },
  5344. { "vpsllw", X86::VPSLLWYrr },
  5345. { "vpsllw", X86::VPSLLWYri },
  5346. { "vpsllw", X86::VPSLLWYrm },
  5347. { "vpsrad", X86::VPSRADrr },
  5348. { "vpsrad", X86::VPSRADri },
  5349. { "vpsrad", X86::VPSRADrm },
  5350. { "vpsrad", X86::VPSRADYrr },
  5351. { "vpsrad", X86::VPSRADYri },
  5352. { "vpsrad", X86::VPSRADYrm },
  5353. { "vpsrad", X86::VPSRADZrr },
  5354. { "vpsrad", X86::VPSRADZri },
  5355. { "vpsrad", X86::VPSRADZrm },
  5356. { "vpsrad", X86::VPSRADZmi },
  5357. { "vpsrad", X86::VPSRADZrrk },
  5358. { "vpsrad", X86::VPSRADZrik },
  5359. { "vpsrad", X86::VPSRADZrmk },
  5360. { "vpsrad", X86::VPSRADZmik },
  5361. { "vpsraq", X86::VPSRAQZrr },
  5362. { "vpsraq", X86::VPSRAQZri },
  5363. { "vpsraq", X86::VPSRAQZrm },
  5364. { "vpsraq", X86::VPSRAQZmi },
  5365. { "vpsraq", X86::VPSRAQZrrk },
  5366. { "vpsraq", X86::VPSRAQZrik },
  5367. { "vpsraq", X86::VPSRAQZrmk },
  5368. { "vpsraq", X86::VPSRAQZmik },
  5369. { "vpsravd", X86::VPSRAVDrr },
  5370. { "vpsravd", X86::VPSRAVDrm },
  5371. { "vpsravd", X86::VPSRAVDYrr },
  5372. { "vpsravd", X86::VPSRAVDYrm },
  5373. { "vpsravd", X86::VPSRAVDZrr },
  5374. { "vpsravd", X86::VPSRAVDZrm },
  5375. { "vpsravq", X86::VPSRAVQZrr },
  5376. { "vpsravq", X86::VPSRAVQZrm },
  5377. { "vpsraw", X86::VPSRAWrr },
  5378. { "vpsraw", X86::VPSRAWri },
  5379. { "vpsraw", X86::VPSRAWrm },
  5380. { "vpsraw", X86::VPSRAWYrr },
  5381. { "vpsraw", X86::VPSRAWYri },
  5382. { "vpsraw", X86::VPSRAWYrm },
  5383. { "vpsrld", X86::VPSRLDrr },
  5384. { "vpsrld", X86::VPSRLDri },
  5385. { "vpsrld", X86::VPSRLDrm },
  5386. { "vpsrld", X86::VPSRLDYrr },
  5387. { "vpsrld", X86::VPSRLDYri },
  5388. { "vpsrld", X86::VPSRLDYrm },
  5389. { "vpsrld", X86::VPSRLDZrr },
  5390. { "vpsrld", X86::VPSRLDZri },
  5391. { "vpsrld", X86::VPSRLDZrm },
  5392. { "vpsrld", X86::VPSRLDZmi },
  5393. { "vpsrld", X86::VPSRLDZrrk },
  5394. { "vpsrld", X86::VPSRLDZrik },
  5395. { "vpsrld", X86::VPSRLDZrmk },
  5396. { "vpsrld", X86::VPSRLDZmik },
  5397. { "vpsrldq", X86::VPSRLDQri },
  5398. { "vpsrldq", X86::VPSRLDQYri },
  5399. { "vpsrlq", X86::VPSRLQrr },
  5400. { "vpsrlq", X86::VPSRLQri },
  5401. { "vpsrlq", X86::VPSRLQrm },
  5402. { "vpsrlq", X86::VPSRLQYrr },
  5403. { "vpsrlq", X86::VPSRLQYri },
  5404. { "vpsrlq", X86::VPSRLQYrm },
  5405. { "vpsrlq", X86::VPSRLQZrr },
  5406. { "vpsrlq", X86::VPSRLQZri },
  5407. { "vpsrlq", X86::VPSRLQZrm },
  5408. { "vpsrlq", X86::VPSRLQZmi },
  5409. { "vpsrlq", X86::VPSRLQZrrk },
  5410. { "vpsrlq", X86::VPSRLQZrik },
  5411. { "vpsrlq", X86::VPSRLQZrmk },
  5412. { "vpsrlq", X86::VPSRLQZmik },
  5413. { "vpsrlvd", X86::VPSRLVDrr },
  5414. { "vpsrlvd", X86::VPSRLVDrm },
  5415. { "vpsrlvd", X86::VPSRLVDYrr },
  5416. { "vpsrlvd", X86::VPSRLVDYrm },
  5417. { "vpsrlvd", X86::VPSRLVDZrr },
  5418. { "vpsrlvd", X86::VPSRLVDZrm },
  5419. { "vpsrlvq", X86::VPSRLVQrr },
  5420. { "vpsrlvq", X86::VPSRLVQrm },
  5421. { "vpsrlvq", X86::VPSRLVQYrr },
  5422. { "vpsrlvq", X86::VPSRLVQYrm },
  5423. { "vpsrlvq", X86::VPSRLVQZrr },
  5424. { "vpsrlvq", X86::VPSRLVQZrm },
  5425. { "vpsrlw", X86::VPSRLWrr },
  5426. { "vpsrlw", X86::VPSRLWri },
  5427. { "vpsrlw", X86::VPSRLWrm },
  5428. { "vpsrlw", X86::VPSRLWYrr },
  5429. { "vpsrlw", X86::VPSRLWYri },
  5430. { "vpsrlw", X86::VPSRLWYrm },
  5431. { "vpsubb", X86::VPSUBBrr },
  5432. { "vpsubb", X86::VPSUBBrm },
  5433. { "vpsubb", X86::VPSUBBYrr },
  5434. { "vpsubb", X86::VPSUBBYrm },
  5435. { "vpsubd", X86::VPSUBDrr },
  5436. { "vpsubd", X86::VPSUBDrm },
  5437. { "vpsubd", X86::VPSUBDYrr },
  5438. { "vpsubd", X86::VPSUBDYrm },
  5439. { "vpsubd", X86::VPSUBDZrr },
  5440. { "vpsubd", X86::VPSUBDZrm },
  5441. { "vpsubd", X86::VPSUBDZrmb },
  5442. { "vpsubd", X86::VPSUBDZrrk },
  5443. { "vpsubd", X86::VPSUBDZrmk },
  5444. { "vpsubd", X86::VPSUBDZrrkz },
  5445. { "vpsubd", X86::VPSUBDZrmkz },
  5446. { "vpsubd", X86::VPSUBDZrmbk },
  5447. { "vpsubd", X86::VPSUBDZrmbkz },
  5448. { "vpsubq", X86::VPSUBQrr },
  5449. { "vpsubq", X86::VPSUBQrm },
  5450. { "vpsubq", X86::VPSUBQYrr },
  5451. { "vpsubq", X86::VPSUBQYrm },
  5452. { "vpsubq", X86::VPSUBQZrr },
  5453. { "vpsubq", X86::VPSUBQZrm },
  5454. { "vpsubq", X86::VPSUBQZrmb },
  5455. { "vpsubq", X86::VPSUBQZrrk },
  5456. { "vpsubq", X86::VPSUBQZrmk },
  5457. { "vpsubq", X86::VPSUBQZrrkz },
  5458. { "vpsubq", X86::VPSUBQZrmkz },
  5459. { "vpsubq", X86::VPSUBQZrmbk },
  5460. { "vpsubq", X86::VPSUBQZrmbkz },
  5461. { "vpsubsb", X86::VPSUBSBrr },
  5462. { "vpsubsb", X86::VPSUBSBrm },
  5463. { "vpsubsb", X86::VPSUBSBYrr },
  5464. { "vpsubsb", X86::VPSUBSBYrm },
  5465. { "vpsubsw", X86::VPSUBSWrr },
  5466. { "vpsubsw", X86::VPSUBSWrm },
  5467. { "vpsubsw", X86::VPSUBSWYrr },
  5468. { "vpsubsw", X86::VPSUBSWYrm },
  5469. { "vpsubusb", X86::VPSUBUSBrr },
  5470. { "vpsubusb", X86::VPSUBUSBrm },
  5471. { "vpsubusb", X86::VPSUBUSBYrr },
  5472. { "vpsubusb", X86::VPSUBUSBYrm },
  5473. { "vpsubusw", X86::VPSUBUSWrr },
  5474. { "vpsubusw", X86::VPSUBUSWrm },
  5475. { "vpsubusw", X86::VPSUBUSWYrr },
  5476. { "vpsubusw", X86::VPSUBUSWYrm },
  5477. { "vpsubw", X86::VPSUBWrr },
  5478. { "vpsubw", X86::VPSUBWrm },
  5479. { "vpsubw", X86::VPSUBWYrr },
  5480. { "vpsubw", X86::VPSUBWYrm },
  5481. { "vptest", X86::VPTESTrr },
  5482. { "vptest", X86::VPTESTrm },
  5483. { "vptest", X86::VPTESTYrr },
  5484. { "vptest", X86::VPTESTYrm },
  5485. { "vptestmd", X86::VPTESTMDZrr },
  5486. { "vptestmd", X86::VPTESTMDZrm },
  5487. { "vptestmq", X86::VPTESTMQZrr },
  5488. { "vptestmq", X86::VPTESTMQZrm },
  5489. { "vptestnmd", X86::VPTESTNMDZrr },
  5490. { "vptestnmd", X86::VPTESTNMDZrm },
  5491. { "vptestnmq", X86::VPTESTNMQZrr },
  5492. { "vptestnmq", X86::VPTESTNMQZrm },
  5493. { "vpunpckhbw", X86::VPUNPCKHBWrr },
  5494. { "vpunpckhbw", X86::VPUNPCKHBWrm },
  5495. { "vpunpckhbw", X86::VPUNPCKHBWYrr },
  5496. { "vpunpckhbw", X86::VPUNPCKHBWYrm },
  5497. { "vpunpckhdq", X86::VPUNPCKHDQrr },
  5498. { "vpunpckhdq", X86::VPUNPCKHDQrm },
  5499. { "vpunpckhdq", X86::VPUNPCKHDQYrr },
  5500. { "vpunpckhdq", X86::VPUNPCKHDQYrm },
  5501. { "vpunpckhdq", X86::VPUNPCKHDQZrr },
  5502. { "vpunpckhdq", X86::VPUNPCKHDQZrm },
  5503. { "vpunpckhqdq", X86::VPUNPCKHQDQrr },
  5504. { "vpunpckhqdq", X86::VPUNPCKHQDQrm },
  5505. { "vpunpckhqdq", X86::VPUNPCKHQDQYrr },
  5506. { "vpunpckhqdq", X86::VPUNPCKHQDQYrm },
  5507. { "vpunpckhqdq", X86::VPUNPCKHQDQZrr },
  5508. { "vpunpckhqdq", X86::VPUNPCKHQDQZrm },
  5509. { "vpunpckhwd", X86::VPUNPCKHWDrr },
  5510. { "vpunpckhwd", X86::VPUNPCKHWDrm },
  5511. { "vpunpckhwd", X86::VPUNPCKHWDYrr },
  5512. { "vpunpckhwd", X86::VPUNPCKHWDYrm },
  5513. { "vpunpcklbw", X86::VPUNPCKLBWrr },
  5514. { "vpunpcklbw", X86::VPUNPCKLBWrm },
  5515. { "vpunpcklbw", X86::VPUNPCKLBWYrr },
  5516. { "vpunpcklbw", X86::VPUNPCKLBWYrm },
  5517. { "vpunpckldq", X86::VPUNPCKLDQrr },
  5518. { "vpunpckldq", X86::VPUNPCKLDQrm },
  5519. { "vpunpckldq", X86::VPUNPCKLDQYrr },
  5520. { "vpunpckldq", X86::VPUNPCKLDQYrm },
  5521. { "vpunpckldq", X86::VPUNPCKLDQZrr },
  5522. { "vpunpckldq", X86::VPUNPCKLDQZrm },
  5523. { "vpunpcklqdq", X86::VPUNPCKLQDQrr },
  5524. { "vpunpcklqdq", X86::VPUNPCKLQDQrm },
  5525. { "vpunpcklqdq", X86::VPUNPCKLQDQYrr },
  5526. { "vpunpcklqdq", X86::VPUNPCKLQDQYrm },
  5527. { "vpunpcklqdq", X86::VPUNPCKLQDQZrr },
  5528. { "vpunpcklqdq", X86::VPUNPCKLQDQZrm },
  5529. { "vpunpcklwd", X86::VPUNPCKLWDrr },
  5530. { "vpunpcklwd", X86::VPUNPCKLWDrm },
  5531. { "vpunpcklwd", X86::VPUNPCKLWDYrr },
  5532. { "vpunpcklwd", X86::VPUNPCKLWDYrm },
  5533. { "vpxor", X86::VPXORrr },
  5534. { "vpxor", X86::VPXORrm },
  5535. { "vpxor", X86::VPXORYrr },
  5536. { "vpxor", X86::VPXORYrm },
  5537. { "vpxord", X86::VPXORDZrr },
  5538. { "vpxord", X86::VPXORDZrm },
  5539. { "vpxord", X86::VPXORDZrmb },
  5540. { "vpxord", X86::VPXORDZrrk },
  5541. { "vpxord", X86::VPXORDZrmk },
  5542. { "vpxord", X86::VPXORDZrrkz },
  5543. { "vpxord", X86::VPXORDZrmkz },
  5544. { "vpxord", X86::VPXORDZrmbk },
  5545. { "vpxord", X86::VPXORDZrmbkz },
  5546. { "vpxorq", X86::VPXORQZrr },
  5547. { "vpxorq", X86::VPXORQZrm },
  5548. { "vpxorq", X86::VPXORQZrmb },
  5549. { "vpxorq", X86::VPXORQZrrk },
  5550. { "vpxorq", X86::VPXORQZrmk },
  5551. { "vpxorq", X86::VPXORQZrrkz },
  5552. { "vpxorq", X86::VPXORQZrmkz },
  5553. { "vpxorq", X86::VPXORQZrmbk },
  5554. { "vpxorq", X86::VPXORQZrmbkz },
  5555. { "vrcp14pd", X86::VRCP14PDZr },
  5556. { "vrcp14pd", X86::VRCP14PDZm },
  5557. { "vrcp14ps", X86::VRCP14PSZr },
  5558. { "vrcp14ps", X86::VRCP14PSZm },
  5559. { "vrcp14sd", X86::VRCP14SDrr },
  5560. { "vrcp14sd", X86::VRCP14SDrm },
  5561. { "vrcp14ss", X86::VRCP14SSrr },
  5562. { "vrcp14ss", X86::VRCP14SSrm },
  5563. { "vrcp28pd", X86::VRCP28PDZr },
  5564. { "vrcp28pd", X86::VRCP28PDZm },
  5565. { "vrcp28pd", X86::VRCP28PDZrb },
  5566. { "vrcp28ps", X86::VRCP28PSZr },
  5567. { "vrcp28ps", X86::VRCP28PSZm },
  5568. { "vrcp28ps", X86::VRCP28PSZrb },
  5569. { "vrcp28sd", X86::VRCP28SDrr },
  5570. { "vrcp28sd", X86::VRCP28SDrm },
  5571. { "vrcp28sd", X86::VRCP28SDrrb },
  5572. { "vrcp28ss", X86::VRCP28SSrr },
  5573. { "vrcp28ss", X86::VRCP28SSrm },
  5574. { "vrcp28ss", X86::VRCP28SSrrb },
  5575. { "vrcpps", X86::VRCPPSr },
  5576. { "vrcpps", X86::VRCPPSm },
  5577. { "vrcpps", X86::VRCPPSYr },
  5578. { "vrcpps", X86::VRCPPSYm },
  5579. { "vrcpss", X86::VRCPSSr },
  5580. { "vrcpss", X86::VRCPSSm },
  5581. { "vrndscalepd", X86::VRNDSCALEPDZr },
  5582. { "vrndscalepd", X86::VRNDSCALEPDZm },
  5583. { "vrndscaleps", X86::VRNDSCALEPSZr },
  5584. { "vrndscaleps", X86::VRNDSCALEPSZm },
  5585. { "vrndscalesd", X86::VRNDSCALESDr },
  5586. { "vrndscalesd", X86::VRNDSCALESDm },
  5587. { "vrndscaless", X86::VRNDSCALESSr },
  5588. { "vrndscaless", X86::VRNDSCALESSm },
  5589. { "vroundpd", X86::VROUNDPDr },
  5590. { "vroundpd", X86::VROUNDPDm },
  5591. { "vroundpd", X86::VROUNDYPDr },
  5592. { "vroundpd", X86::VROUNDYPDm },
  5593. { "vroundps", X86::VROUNDPSr },
  5594. { "vroundps", X86::VROUNDPSm },
  5595. { "vroundps", X86::VROUNDYPSr },
  5596. { "vroundps", X86::VROUNDYPSm },
  5597. { "vroundsd", X86::VROUNDSDr },
  5598. { "vroundsd", X86::VROUNDSDm },
  5599. { "vroundss", X86::VROUNDSSr },
  5600. { "vroundss", X86::VROUNDSSm },
  5601. { "vrsqrt14pd", X86::VRSQRT14PDZr },
  5602. { "vrsqrt14pd", X86::VRSQRT14PDZm },
  5603. { "vrsqrt14ps", X86::VRSQRT14PSZr },
  5604. { "vrsqrt14ps", X86::VRSQRT14PSZm },
  5605. { "vrsqrt14sd", X86::VRSQRT14SDrr },
  5606. { "vrsqrt14sd", X86::VRSQRT14SDrm },
  5607. { "vrsqrt14ss", X86::VRSQRT14SSrr },
  5608. { "vrsqrt14ss", X86::VRSQRT14SSrm },
  5609. { "vrsqrt28pd", X86::VRSQRT28PDZr },
  5610. { "vrsqrt28pd", X86::VRSQRT28PDZm },
  5611. { "vrsqrt28pd", X86::VRSQRT28PDZrb },
  5612. { "vrsqrt28ps", X86::VRSQRT28PSZr },
  5613. { "vrsqrt28ps", X86::VRSQRT28PSZm },
  5614. { "vrsqrt28ps", X86::VRSQRT28PSZrb },
  5615. { "vrsqrt28sd", X86::VRSQRT28SDrr },
  5616. { "vrsqrt28sd", X86::VRSQRT28SDrm },
  5617. { "vrsqrt28sd", X86::VRSQRT28SDrrb },
  5618. { "vrsqrt28ss", X86::VRSQRT28SSrr },
  5619. { "vrsqrt28ss", X86::VRSQRT28SSrm },
  5620. { "vrsqrt28ss", X86::VRSQRT28SSrrb },
  5621. { "vrsqrtps", X86::VRSQRTPSr },
  5622. { "vrsqrtps", X86::VRSQRTPSm },
  5623. { "vrsqrtps", X86::VRSQRTPSYr },
  5624. { "vrsqrtps", X86::VRSQRTPSYm },
  5625. { "vrsqrtss", X86::VRSQRTSSr },
  5626. { "vrsqrtss", X86::VRSQRTSSm },
  5627. { "vscatterdpd", X86::VSCATTERDPDZmr },
  5628. { "vscatterdps", X86::VSCATTERDPSZmr },
  5629. { "vscatterpf0dpd", X86::VSCATTERPF0DPDm },
  5630. { "vscatterpf0dps", X86::VSCATTERPF0DPSm },
  5631. { "vscatterpf0qpd", X86::VSCATTERPF0QPDm },
  5632. { "vscatterpf0qps", X86::VSCATTERPF0QPSm },
  5633. { "vscatterpf1dpd", X86::VSCATTERPF1DPDm },
  5634. { "vscatterpf1dps", X86::VSCATTERPF1DPSm },
  5635. { "vscatterpf1qpd", X86::VSCATTERPF1QPDm },
  5636. { "vscatterpf1qps", X86::VSCATTERPF1QPSm },
  5637. { "vscatterqpd", X86::VSCATTERQPDZmr },
  5638. { "vscatterqps", X86::VSCATTERQPSZmr },
  5639. { "vshufpd", X86::VSHUFPDrri },
  5640. { "vshufpd", X86::VSHUFPDrmi },
  5641. { "vshufpd", X86::VSHUFPDYrri },
  5642. { "vshufpd", X86::VSHUFPDYrmi },
  5643. { "vshufpd", X86::VSHUFPDZrri },
  5644. { "vshufpd", X86::VSHUFPDZrmi },
  5645. { "vshufps", X86::VSHUFPSrri },
  5646. { "vshufps", X86::VSHUFPSrmi },
  5647. { "vshufps", X86::VSHUFPSYrri },
  5648. { "vshufps", X86::VSHUFPSYrmi },
  5649. { "vshufps", X86::VSHUFPSZrri },
  5650. { "vshufps", X86::VSHUFPSZrmi },
  5651. { "vsqrtpd", X86::VSQRTPDr },
  5652. { "vsqrtpd", X86::VSQRTPDm },
  5653. { "vsqrtpd", X86::VSQRTPDYr },
  5654. { "vsqrtpd", X86::VSQRTPDYm },
  5655. { "vsqrtpd", X86::VSQRTPDZrr },
  5656. { "vsqrtpd", X86::VSQRTPDZrm },
  5657. { "vsqrtps", X86::VSQRTPSr },
  5658. { "vsqrtps", X86::VSQRTPSm },
  5659. { "vsqrtps", X86::VSQRTPSYr },
  5660. { "vsqrtps", X86::VSQRTPSYm },
  5661. { "vsqrtps", X86::VSQRTPSZrr },
  5662. { "vsqrtps", X86::VSQRTPSZrm },
  5663. { "vsqrtsd", X86::VSQRTSDr },
  5664. { "vsqrtsd", X86::VSQRTSDm },
  5665. { "vsqrtsd", X86::VSQRTSDZr },
  5666. { "vsqrtsd", X86::VSQRTSDZm },
  5667. { "vsqrtss", X86::VSQRTSSr },
  5668. { "vsqrtss", X86::VSQRTSSm },
  5669. { "vsqrtss", X86::VSQRTSSZr },
  5670. { "vsqrtss", X86::VSQRTSSZm },
  5671. { "vstmxcsr", X86::VSTMXCSR },
  5672. { "vsubpd", X86::VSUBPDrr },
  5673. { "vsubpd", X86::VSUBPDrm },
  5674. { "vsubpd", X86::VSUBPDYrr },
  5675. { "vsubpd", X86::VSUBPDYrm },
  5676. { "vsubpd", X86::VSUBPDZrr },
  5677. { "vsubpd", X86::VSUBPDZrm },
  5678. { "vsubpd", X86::VSUBPDZrmb },
  5679. { "vsubpd", X86::VSUBPDZrrk },
  5680. { "vsubpd", X86::VSUBPDZrmk },
  5681. { "vsubpd", X86::VSUBPDZrrkz },
  5682. { "vsubpd", X86::VSUBPDZrmkz },
  5683. { "vsubpd", X86::VSUBPDZrmbk },
  5684. { "vsubpd", X86::VSUBPDZrmbkz },
  5685. { "vsubps", X86::VSUBPSrr },
  5686. { "vsubps", X86::VSUBPSrm },
  5687. { "vsubps", X86::VSUBPSYrr },
  5688. { "vsubps", X86::VSUBPSYrm },
  5689. { "vsubps", X86::VSUBPSZrr },
  5690. { "vsubps", X86::VSUBPSZrm },
  5691. { "vsubps", X86::VSUBPSZrmb },
  5692. { "vsubps", X86::VSUBPSZrrk },
  5693. { "vsubps", X86::VSUBPSZrmk },
  5694. { "vsubps", X86::VSUBPSZrrkz },
  5695. { "vsubps", X86::VSUBPSZrmkz },
  5696. { "vsubps", X86::VSUBPSZrmbk },
  5697. { "vsubps", X86::VSUBPSZrmbkz },
  5698. { "vsubsd", X86::VSUBSDrr },
  5699. { "vsubsd", X86::VSUBSDrm },
  5700. { "vsubsd", X86::VSUBSDZrr },
  5701. { "vsubsd", X86::VSUBSDZrm },
  5702. { "vsubss", X86::VSUBSSrr },
  5703. { "vsubss", X86::VSUBSSrm },
  5704. { "vsubss", X86::VSUBSSZrr },
  5705. { "vsubss", X86::VSUBSSZrm },
  5706. { "vtestpd", X86::VTESTPDrr },
  5707. { "vtestpd", X86::VTESTPDrm },
  5708. { "vtestpd", X86::VTESTPDYrr },
  5709. { "vtestpd", X86::VTESTPDYrm },
  5710. { "vtestps", X86::VTESTPSrr },
  5711. { "vtestps", X86::VTESTPSrm },
  5712. { "vtestps", X86::VTESTPSYrr },
  5713. { "vtestps", X86::VTESTPSYrm },
  5714. { "vucomisd", X86::VUCOMISDrr },
  5715. { "vucomisd", X86::VUCOMISDrm },
  5716. { "vucomisd", X86::VUCOMISDZrr },
  5717. { "vucomisd", X86::VUCOMISDZrm },
  5718. { "vucomiss", X86::VUCOMISSrr },
  5719. { "vucomiss", X86::VUCOMISSrm },
  5720. { "vucomiss", X86::VUCOMISSZrr },
  5721. { "vucomiss", X86::VUCOMISSZrm },
  5722. { "vunpckhpd", X86::VUNPCKHPDrr },
  5723. { "vunpckhpd", X86::VUNPCKHPDrm },
  5724. { "vunpckhpd", X86::VUNPCKHPDYrr },
  5725. { "vunpckhpd", X86::VUNPCKHPDYrm },
  5726. { "vunpckhpd", X86::VUNPCKHPDZrr },
  5727. { "vunpckhpd", X86::VUNPCKHPDZrm },
  5728. { "vunpckhps", X86::VUNPCKHPSrr },
  5729. { "vunpckhps", X86::VUNPCKHPSrm },
  5730. { "vunpckhps", X86::VUNPCKHPSYrr },
  5731. { "vunpckhps", X86::VUNPCKHPSYrm },
  5732. { "vunpckhps", X86::VUNPCKHPSZrr },
  5733. { "vunpckhps", X86::VUNPCKHPSZrm },
  5734. { "vunpcklpd", X86::VUNPCKLPDrr },
  5735. { "vunpcklpd", X86::VUNPCKLPDrm },
  5736. { "vunpcklpd", X86::VUNPCKLPDYrr },
  5737. { "vunpcklpd", X86::VUNPCKLPDYrm },
  5738. { "vunpcklpd", X86::VUNPCKLPDZrr },
  5739. { "vunpcklpd", X86::VUNPCKLPDZrm },
  5740. { "vunpcklps", X86::VUNPCKLPSrr },
  5741. { "vunpcklps", X86::VUNPCKLPSrm },
  5742. { "vunpcklps", X86::VUNPCKLPSYrr },
  5743. { "vunpcklps", X86::VUNPCKLPSYrm },
  5744. { "vunpcklps", X86::VUNPCKLPSZrr },
  5745. { "vunpcklps", X86::VUNPCKLPSZrm },
  5746. { "vxorpd", X86::VXORPDrr },
  5747. { "vxorpd", X86::VXORPDrm },
  5748. { "vxorpd", X86::VXORPDYrr },
  5749. { "vxorpd", X86::VXORPDYrm },
  5750. { "vxorps", X86::VXORPSrr },
  5751. { "vxorps", X86::VXORPSrm },
  5752. { "vxorps", X86::VXORPSYrr },
  5753. { "vxorps", X86::VXORPSYrm },
  5754. { "vzeroall", X86::VZEROALL },
  5755. { "vzeroupper", X86::VZEROUPPER },
  5756. { "wait", X86::WAIT },
  5757. { "wbinvd", X86::WBINVD },
  5758. { "wrfsbase", X86::WRFSBASE },
  5759. { "wrfsbase", X86::WRFSBASE64 },
  5760. { "wrgsbase", X86::WRGSBASE },
  5761. { "wrgsbase", X86::WRGSBASE64 },
  5762. { "wrmsr", X86::WRMSR },
  5763. { "xabort", X86::XABORT },
  5764. { "xacquire", X86::XACQUIRE_PREFIX },
  5765. { "xadd", X86::XADD8rr },
  5766. { "xadd", X86::XADD16rr },
  5767. { "xadd", X86::XADD32rr },
  5768. { "xadd", X86::XADD64rr },
  5769. { "xadd", X86::XADD16rm },
  5770. { "xadd", X86::XADD32rm },
  5771. { "xadd", X86::XADD64rm },
  5772. { "xadd", X86::XADD8rm },
  5773. { "xbegin", X86::XBEGIN_4 },
  5774. { "xchg", X86::XCHG8rr },
  5775. { "xchg", X86::XCHG8rm },
  5776. { "xchg", X86::XCHG16ar },
  5777. { "xchg", X86::XCHG16ar },
  5778. { "xchg", X86::XCHG16rr },
  5779. { "xchg", X86::XCHG16rm },
  5780. { "xchg", X86::XCHG32ar64 },
  5781. { "xchg", X86::XCHG32ar },
  5782. { "xchg", X86::XCHG32ar64 },
  5783. { "xchg", X86::XCHG32ar },
  5784. { "xchg", X86::XCHG32rr },
  5785. { "xchg", X86::XCHG32rm },
  5786. { "xchg", X86::XCHG64ar },
  5787. { "xchg", X86::XCHG64ar },
  5788. { "xchg", X86::XCHG64rr },
  5789. { "xchg", X86::XCHG64rm },
  5790. { "xchg", X86::XCHG16rm },
  5791. { "xchg", X86::XCHG32rm },
  5792. { "xchg", X86::XCHG64rm },
  5793. { "xchg", X86::XCHG8rm },
  5794. { "xcryptcbc", X86::XCRYPTCBC },
  5795. { "xcryptcfb", X86::XCRYPTCFB },
  5796. { "xcryptctr", X86::XCRYPTCTR },
  5797. { "xcryptecb", X86::XCRYPTECB },
  5798. { "xcryptofb", X86::XCRYPTOFB },
  5799. { "xend", X86::XEND },
  5800. { "xgetbv", X86::XGETBV },
  5801. { "xlatb", X86::XLAT },
  5802. { "xor", X86::XOR8i8 },
  5803. { "xor", X86::XOR8rr },
  5804. { "xor", X86::XOR8ri },
  5805. { "xor", X86::XOR8rm },
  5806. { "xor", X86::XOR16i16 },
  5807. { "xor", X86::XOR16rr },
  5808. { "xor", X86::XOR16ri8 },
  5809. { "xor", X86::XOR16ri },
  5810. { "xor", X86::XOR16rm },
  5811. { "xor", X86::XOR32i32 },
  5812. { "xor", X86::XOR32rr },
  5813. { "xor", X86::XOR32ri8 },
  5814. { "xor", X86::XOR32ri },
  5815. { "xor", X86::XOR32rm },
  5816. { "xor", X86::XOR64i32 },
  5817. { "xor", X86::XOR64rr },
  5818. { "xor", X86::XOR64ri8 },
  5819. { "xor", X86::XOR64ri32 },
  5820. { "xor", X86::XOR64rm },
  5821. { "xor", X86::XOR16mr },
  5822. { "xor", X86::XOR16mi8 },
  5823. { "xor", X86::XOR16mi },
  5824. { "xor", X86::XOR32mr },
  5825. { "xor", X86::XOR32mi8 },
  5826. { "xor", X86::XOR32mi },
  5827. { "xor", X86::XOR64mr },
  5828. { "xor", X86::XOR64mi8 },
  5829. { "xor", X86::XOR64mi32 },
  5830. { "xor", X86::XOR8mr },
  5831. { "xor", X86::XOR8mi },
  5832. { "xorpd", X86::XORPDrr },
  5833. { "xorpd", X86::XORPDrm },
  5834. { "xorps", X86::XORPSrr },
  5835. { "xorps", X86::XORPSrm },
  5836. { "xrelease", X86::XRELEASE_PREFIX },
  5837. { "xrstor", X86::XRSTOR },
  5838. { "xrstor64", X86::XRSTOR64 },
  5839. { "xsave", X86::XSAVE },
  5840. { "xsave64", X86::XSAVE64 },
  5841. { "xsaveopt", X86::XSAVEOPT },
  5842. { "xsaveopt64", X86::XSAVEOPT64 },
  5843. { "xsetbv", X86::XSETBV },
  5844. { "xsha1", X86::XSHA1 },
  5845. { "xsha256", X86::XSHA256 },
  5846. { "xstore", X86::XSTORE },
  5847. { "xstorerng", X86::XSTORE },
  5848. { "xtest", X86::XTEST },*/
  5849. { nullptr, 0 }
  5850. };