x86ins.dat 109 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403
  1. ;
  2. ; Table of assembler instructions for Free Pascal
  3. ; adapted from Netwide Assembler by Peter Vreman
  4. ;
  5. ; The Netwide Assembler is copyright (C) 1996 Simon Tatham and
  6. ; Julian Hall. All rights reserved.
  7. ;
  8. ; Layout
  9. ; [OPCODE,attnameX] (X means suffix in att name)
  10. ; arguments bytes flags
  11. ;
  12. [NONE]
  13. (Ch_None, Ch_None, Ch_None)
  14. void void none
  15. [AAA]
  16. (Ch_MEAX, Ch_WFlags, Ch_None)
  17. void \1\x37 8086,NOX86_64
  18. [AAD,aadX]
  19. (Ch_MEAX, Ch_WFlags, Ch_None)
  20. void \2\xD5\x0A 8086,NOX86_64
  21. imm \1\xD5\24 8086,SB,NOX86_64
  22. [AAM,aamX]
  23. (Ch_MEAX, Ch_WFlags, Ch_None)
  24. void \2\xD4\x0A 8086,NOX86_64
  25. imm \1\xD4\24 8086,SB,NOX86_64
  26. [AAS]
  27. (Ch_MEAX, Ch_WFlags, Ch_None)
  28. void \1\x3F 8086,NOX86_64
  29. [ADC,adcX]
  30. (Ch_Mop2, Ch_Rop1, Ch_RWFlags)
  31. regmem,reg16|32|64 \320\1\x11\101 8086,SM
  32. reg16|32|64,regmem \320\1\x13\110 8086,SM
  33. rm8,reg8 \1\x10\101 8086
  34. reg8,rm8 \1\x12\110 8086
  35. rm16|32|64,imm8 \320\1\x83\202\15 8086
  36. reg_eax|64,imm \320\1\x15\41 386,SD
  37. rm32|64,imm \320\1\x81\202\41 386,SD
  38. reg_ax,imm \324\1\x15\31 8086,SW
  39. rm16,imm \324\1\x81\202\31 8086,SW
  40. reg_al,imm \1\x14\21 8086,SB
  41. rm8,imm \1\x80\202\21 8086,SB
  42. [ADD,addX]
  43. (Ch_Mop2, Ch_Rop1, Ch_WFlags)
  44. regmem,reg16|32|64 \320\1\x01\101 8086,SM
  45. reg16|32|64,regmem \320\1\x03\110 8086,SM
  46. rm8,reg8 \1\x00\101 8086
  47. reg8,rm8 \1\x02\110 8086,SM
  48. rm16|32|64,imm8 \320\1\x83\200\15 8086
  49. reg_eax|64,imm \320\1\x05\41 386,SD
  50. rm32|64,imm \320\1\x81\200\41 386,SD
  51. reg_ax,imm \324\1\x05\31 8086,SW
  52. rm16,imm \324\1\x81\200\31 8086,SW
  53. reg_al,imm \1\x04\21 8086,SB
  54. rm8,imm \1\x80\200\21 8086,SB
  55. [AND,andX]
  56. (Ch_Mop2, Ch_Rop1, Ch_WFlags)
  57. regmem,reg16|32|64 \320\1\x21\101 8086,SM
  58. reg16|32|64,regmem \320\1\x23\110 8086,SM
  59. rm8,reg8 \1\x20\101 8086
  60. reg8,rm8 \1\x22\110 8086
  61. rm16|32|64,imm8 \320\1\x83\204\15 8086
  62. reg_eax|64,imm \320\1\x25\41 386,SD
  63. rm32|64,imm \320\1\x81\204\41 386,SD
  64. reg_ax,imm \324\1\x25\31 8086,SW
  65. rm16,imm \324\1\x81\204\31 8086,SW
  66. reg_al,imm \1\x24\21 8086,SB
  67. rm8,imm \1\x80\204\21 8086,SB
  68. [ARPL,arplX]
  69. (Ch_WFlags, Ch_None, Ch_None)
  70. reg16,reg16 \1\x63\101 286,PROT,NOX86_64
  71. mem,reg16 \1\x63\101 286,PROT,SM,NOX86_64
  72. [BOUND,boundX]
  73. (Ch_Rop1, Ch_None, Ch_None)
  74. reg16|32,mem \320\1\x62\110 186,NOX86_64
  75. [BSF,bsfX]
  76. (Ch_Wop2, Ch_WFlags, Ch_Rop1)
  77. reg16|32|64,regmem \320\2\x0F\xBC\110 386,SM
  78. [BSR,bsrX]
  79. (Ch_Wop2, Ch_WFlags, Ch_Rop1)
  80. reg16|32|64,regmem \320\2\x0F\xBD\110 386,SM
  81. [BSWAP,bswapX]
  82. (Ch_MOp1, Ch_None, Ch_None)
  83. reg32|64 \320\1\x0F\10\xC8 486
  84. [BT,btX]
  85. (Ch_WFlags, Ch_Rop1, Ch_Rop2)
  86. regmem,reg16|32|64 \320\2\x0F\xA3\101 386,SM
  87. rm16|32|64,imm \320\2\x0F\xBA\204\25 386,SB
  88. [BTC,btcX]
  89. (Ch_Mop2, Ch_Rop1, Ch_WFlags)
  90. regmem,reg16|32|64 \320\2\x0F\xBB\101 386,SM
  91. rm16|32|64,imm \320\2\x0F\xBA\207\25 386,SB
  92. [BTR,btrX]
  93. (Ch_Mop2, Ch_Rop1, Ch_WFlags)
  94. regmem,reg16|32|64 \320\2\x0F\xB3\101 386,SM
  95. rm16|32|64,imm \320\2\x0F\xBA\206\25 386,SB
  96. [BTS,btsX]
  97. (Ch_Mop2, Ch_Rop1, Ch_WFlags)
  98. regmem,reg16|32|64 \320\2\x0F\xAB\101 386,SM
  99. rm16|32|64,imm \320\2\x0F\xBA\205\25 386,SB
  100. [CALL,call]
  101. ; don't know value of any register
  102. (Ch_ROp1, Ch_All, Ch_None)
  103. imm \320\1\xE8\64 8086
  104. rm16|32|64 \320\1\xFF\202 8086
  105. imm|near \320\1\xE8\64 8086
  106. imm|far \320\1\x9A\34\37 8086,ND,NOX86_64
  107. mem|near \320\1\xFF\202 8086
  108. mem|far \320\1\xFF\203 8086
  109. imm:imm \327\1\x9A\35\30 8086,NOX86_64
  110. imm16:imm \324\1\x9A\31\30 8086,NOX86_64
  111. imm:imm16 \324\1\x9A\31\30 8086,NOX86_64
  112. imm32:imm \325\1\x9A\41\30 386,NOX86_64
  113. imm:imm32 \325\1\x9A\41\30 386,NOX86_64
  114. [CBW,cbtw]
  115. (Ch_MEAX, Ch_None, Ch_None)
  116. void \324\1\x98 8086
  117. [CDQ,cltd]
  118. (Ch_MEAX, Ch_WEDX, Ch_None)
  119. void \325\1\x99 386
  120. [CLC]
  121. (Ch_WFlags, Ch_None, Ch_None)
  122. void \1\xF8 8086
  123. [CLD]
  124. (Ch_CDirFlag, Ch_None, Ch_None)
  125. void \1\xFC 8086
  126. [CLI]
  127. (Ch_WFlags, Ch_None, Ch_None)
  128. void \1\xFA 8086
  129. [CLTS]
  130. (Ch_None, Ch_None, Ch_None)
  131. void \2\x0F\x06 286,PRIV
  132. [CMC]
  133. (Ch_WFlags, Ch_None, Ch_None)
  134. void \1\xF5 8086
  135. [CMP,cmpX]
  136. (Ch_ROp1, Ch_ROp2, Ch_WFlags)
  137. regmem,reg16|32|64 \320\1\x39\101 8086,SM
  138. reg16|32|64,regmem \320\1\x3B\110 8086,SM
  139. rm8,reg8 \1\x38\101 8086
  140. reg8,rm8 \1\x3A\110 8086
  141. rm16|32|64,imm8 \320\1\x83\207\15 8086
  142. reg_eax|64,imm \320\1\x3D\41 386,SD
  143. rm32|64,imm \320\1\x81\207\41 386,SD
  144. reg_ax,imm \324\1\x3D\31 8086,SW
  145. rm16,imm \324\1\x81\207\31 8086,SW
  146. reg_al,imm \1\x3C\21 8086,SB
  147. rm8,imm \1\x80\207\21 8086,SB
  148. mem,imm32 \325\1\x81\207\41 386,SD
  149. mem,imm16 \324\1\x81\207\31 8086,SW
  150. mem,imm8 \1\x80\207\21 8086,SB
  151. [CMPSB]
  152. (Ch_All, Ch_None, Ch_None)
  153. void \332\1\xA6 8086
  154. [CMPSD,cmpsl]
  155. (Ch_All, Ch_None, Ch_None)
  156. void \332\325\1\xA7 386
  157. xmmreg,xmmrm,imm \334\2\x0F\xC2\110\26 WILLAMETTE,SSE2,SM2,SB,AR2
  158. [CMPSW]
  159. (Ch_All, Ch_None, Ch_None)
  160. void \332\324\1\xA7 8086
  161. [CMPXCHG,cmpxchgX]
  162. (Ch_All, Ch_None, Ch_None)
  163. regmem,reg16|32|64 \320\2\x0F\xB1\101 PENT,SM
  164. rm8,reg8 \2\x0F\xB0\101 PENT
  165. [CMPXCHG486,cmpxchg486X]
  166. (Ch_All, Ch_None, Ch_None)
  167. regmem,reg16|32|64 \320\2\x0F\xA7\101 486,SM
  168. rm8,reg8 \2\x0F\xA6\101 486,UNDOC
  169. [CMPXCHG8B,cmpxchg8b]
  170. (Ch_All, Ch_None, Ch_None)
  171. mem \2\x0F\xC7\201 PENT
  172. [CPUID]
  173. (Ch_All, Ch_None, Ch_none)
  174. void \2\x0F\xA2 PENT
  175. [CWD]
  176. (Ch_MEAX, Ch_WEDX, Ch_None)
  177. void \324\1\x99 8086
  178. [CWDE,cwtl]
  179. (Ch_MEAX, Ch_None, Ch_None)
  180. void \325\1\x98 386
  181. [DAA]
  182. (Ch_MEAX, Ch_None, Ch_None)
  183. void \1\x27 8086,NOX86_64
  184. [DAS]
  185. (Ch_MEAX, Ch_None, Ch_None)
  186. void \1\x2F 8086,NOX86_64
  187. [DEC,decX]
  188. (Ch_Mop1, Ch_WFlags, Ch_None)
  189. reg16|32 \320\10\x48 8086,NOX86_64
  190. rm16|32|64 \320\1\xFF\201 8086
  191. rm8 \1\xFE\201 8086
  192. [DIV,divX]
  193. (Ch_RWEAX, Ch_WEDX, Ch_WFlags)
  194. rm16|32|64 \320\1\xF7\206 8086
  195. rm8 \1\xF6\206 8086
  196. [EMMS]
  197. (Ch_FPU, Ch_None, Ch_None)
  198. void \2\x0F\x77 PENT,MMX
  199. [ENTER,enterX]
  200. (Ch_RWESP, Ch_None, Ch_None)
  201. imm,imm \1\xC8\30\25 186
  202. [F2XM1]
  203. (Ch_FPU, Ch_None, Ch_None)
  204. void \2\xD9\xF0 8086,FPU
  205. [FABS]
  206. (Ch_FPU, Ch_None, Ch_None)
  207. void \2\xD9\xE1 8086,FPU
  208. [FADD,faddF]
  209. (Ch_FPU, Ch_ROp1, Ch_None)
  210. mem32 \1\xD8\200 8086,FPU
  211. mem64 \1\xDC\200 8086,FPU
  212. void \2\xDE\xC1 8086,FPU
  213. fpureg|to \1\xDC\10\xC0 8086,FPU
  214. fpureg,fpu0 \1\xDC\10\xC0 8086,FPU
  215. fpureg \1\xD8\10\xC0 8086,FPU
  216. fpu0,fpureg \1\xD8\11\xC0 8086,FPU
  217. [FADDP,faddpF]
  218. (Ch_FPU, Ch_ROp1, Ch_None)
  219. void \2\xDE\xC1 8086,FPU
  220. fpureg \1\xDE\10\xC0 8086,FPU
  221. fpureg,fpu0 \1\xDE\10\xC0 8086,FPU
  222. [FBLD,fbldF]
  223. (Ch_Rop1, Ch_FPU, Ch_None)
  224. mem80 \1\xDF\204 8086,FPU
  225. mem \1\xDF\204 8086,FPU
  226. [FBSTP,fbstpF]
  227. (Ch_Wop1, Ch_FPU, Ch_None)
  228. mem80 \1\xDF\206 8086,FPU
  229. mem \1\xDF\206 8086,FPU
  230. [FCHS]
  231. (Ch_FPU, Ch_None, Ch_None)
  232. void \2\xD9\xE0 8086,FPU
  233. [FCLEX]
  234. (Ch_FPU, Ch_None, Ch_None)
  235. void \3\x9B\xDB\xE2 8086,FPU
  236. [FCMOVB,fcmovbF]
  237. (Ch_FPU, Ch_RFLAGS, Ch_None)
  238. void \2\xDA\xC1 P6,FPU
  239. fpureg \1\xDA\10\xC0 P6,FPU
  240. fpu0,fpureg \1\xDA\11\xC0 P6,FPU
  241. [FCMOVBE,fcmovbeF]
  242. (Ch_FPU, Ch_RFLAGS, Ch_None)
  243. void \2\xDA\xD1 P6,FPU
  244. fpureg \1\xDA\10\xD0 P6,FPU
  245. fpu0,fpureg \1\xDA\11\xD0 P6,FPU
  246. [FCMOVE,fcmoveF]
  247. (Ch_FPU, Ch_RFLAGS, Ch_None)
  248. void \2\xDA\xC9 P6,FPU
  249. fpureg \1\xDA\10\xC8 P6,FPU
  250. fpu0,fpureg \1\xDA\11\xC8 P6,FPU
  251. [FCMOVNB,fcmovnbF]
  252. (Ch_FPU, Ch_RFLAGS, Ch_None)
  253. void \2\xDB\xC1 P6,FPU
  254. fpureg \1\xDB\10\xC0 P6,FPU
  255. fpu0,fpureg \1\xDB\11\xC0 P6,FPU
  256. [FCMOVNBE,fcmovnbeF]
  257. (Ch_FPU, Ch_RFLAGS, Ch_None)
  258. void \2\xDB\xD1 P6,FPU
  259. fpureg \1\xDB\10\xD0 P6,FPU
  260. fpu0,fpureg \1\xDB\11\xD0 P6,FPU
  261. [FCMOVNE,fcmovneF]
  262. (Ch_FPU, Ch_RFLAGS, Ch_None)
  263. void \2\xDB\xC9 P6,FPU
  264. fpureg \1\xDB\10\xC8 P6,FPU
  265. fpu0,fpureg \1\xDB\11\xC8 P6,FPU
  266. [FCMOVNU,fcmovnuF]
  267. (Ch_FPU, Ch_RFLAGS, Ch_None)
  268. void \2\xDB\xD9 P6,FPU
  269. fpureg \1\xDB\10\xD8 P6,FPU
  270. fpu0,fpureg \1\xDB\11\xD8 P6,FPU
  271. [FCMOVU,fcmovuF]
  272. (Ch_FPU, Ch_RFLAGS, Ch_None)
  273. void \2\xDA\xD9 P6,FPU
  274. fpureg \1\xDA\10\xD8 P6,FPU
  275. fpu0,fpureg \1\xDA\11\xD8 P6,FPU
  276. [FCOM,fcomF]
  277. (Ch_FPU, Ch_None, Ch_None)
  278. mem32 \1\xD8\202 8086,FPU
  279. mem64 \1\xDC\202 8086,FPU
  280. void \2\xD8\xD1 8086,FPU
  281. fpureg \1\xD8\10\xD0 8086,FPU
  282. fpu0,fpureg \1\xD8\11\xD0 8086,FPU
  283. [FCOMI,fcomiF]
  284. (Ch_WFLAGS, Ch_None, Ch_None)
  285. void \2\xDB\xF1 P6,FPU
  286. fpureg \1\xDB\10\xF0 P6,FPU
  287. fpu0,fpureg \1\xDB\11\xF0 P6,FPU
  288. [FCOMIP,fcomipF]
  289. (Ch_FPU, Ch_WFLAGS, Ch_None)
  290. void \2\xDF\xF1 P6,FPU
  291. fpureg \1\xDF\10\xF0 P6,FPU
  292. fpu0,fpureg \1\xDF\11\xF0 P6,FPU
  293. [FCOMP,fcompF]
  294. (Ch_FPU, Ch_None, Ch_None)
  295. mem32 \1\xD8\203 8086,FPU
  296. mem64 \1\xDC\203 8086,FPU
  297. void \2\xD8\xD9 8086,FPU
  298. fpureg \1\xD8\10\xD8 8086,FPU
  299. fpu0,fpureg \1\xD8\11\xD8 8086,FPU
  300. [FCOMPP]
  301. (Ch_FPU, Ch_None, Ch_None)
  302. void \2\xDE\xD9 8086,FPU
  303. [FCOS]
  304. (Ch_FPU, Ch_None, Ch_None)
  305. void \2\xD9\xFF 386,FPU
  306. [FDECSTP]
  307. (Ch_FPU, Ch_None, Ch_None)
  308. void \2\xD9\xF6 8086,FPU
  309. [FDISI]
  310. (Ch_FPU, Ch_None, Ch_None)
  311. void \3\x9B\xDB\xE1 8086,FPU
  312. [FDIV,fdivF]
  313. (Ch_FPU, Ch_ROp1, Ch_None)
  314. mem32 \1\xD8\206 8086,FPU
  315. mem64 \1\xDC\206 8086,FPU
  316. void \2\xDC\xF1 8086,FPU
  317. fpureg|to \1\xDC\10\xF0 8086,FPU
  318. fpureg,fpu0 \1\xDC\10\xF0 8086,FPU
  319. fpureg \1\xD8\10\xF0 8086,FPU
  320. fpu0,fpureg \1\xD8\11\xF0 8086,FPU
  321. [FDIVP,fdivpF]
  322. (Ch_FPU, Ch_ROp1, Ch_None)
  323. void \2\xDE\xF1 8086,FPU
  324. fpureg,fpu0 \1\xDE\10\xF0 8086,FPU
  325. fpureg \1\xDE\10\xF0 8086,FPU
  326. [FDIVR,fdivrF]
  327. (Ch_FPU, Ch_ROp1, Ch_None)
  328. mem32 \1\xD8\207 8086,FPU
  329. mem64 \1\xDC\207 8086,FPU
  330. void \2\xDC\xF9 8086,FPU
  331. fpureg|to \1\xDC\10\xF8 8086,FPU
  332. fpureg,fpu0 \1\xDC\10\xF8 8086,FPU
  333. fpureg \1\xD8\10\xF8 8086,FPU
  334. fpu0,fpureg \1\xD8\11\xF8 8086,FPU
  335. [FDIVRP,fdivrpF]
  336. (Ch_FPU, Ch_ROp1, Ch_None)
  337. void \2\xDE\xF9 8086,FPU
  338. fpureg \1\xDE\10\xF8 8086,FPU
  339. fpureg,fpu0 \1\xDE\10\xF8 8086,FPU
  340. [FEMMS]
  341. (Ch_All, Ch_None, Ch_None)
  342. void \2\x0F\x0E PENT,3DNOW
  343. [FENI]
  344. (Ch_FPU, Ch_None, Ch_None)
  345. void \3\x9B\xDB\xE0 8086,FPU
  346. [FFREE]
  347. (Ch_FPU, Ch_None, Ch_None)
  348. fpureg \1\xDD\10\xC0 8086,FPU
  349. [FIADD,fiaddR]
  350. (Ch_FPU, Ch_ROp1, Ch_None)
  351. mem16 \1\xDE\200 8086,FPU
  352. mem32 \1\xDA\200 8086,FPU
  353. [FICOM,ficomR]
  354. (Ch_FPU, Ch_None, Ch_None)
  355. mem16 \1\xDE\202 8086,FPU
  356. mem32 \1\xDA\202 8086,FPU
  357. [FICOMP,ficompR]
  358. (Ch_FPU, Ch_None, Ch_None)
  359. mem16 \1\xDE\203 8086,FPU
  360. mem32 \1\xDA\203 8086,FPU
  361. [FIDIV,fidivR]
  362. (Ch_FPU, Ch_ROp1, Ch_None)
  363. mem16 \1\xDE\206 8086,FPU
  364. mem32 \1\xDA\206 8086,FPU
  365. [FIDIVR,fidivrR]
  366. (Ch_FPU, Ch_ROp1, Ch_None)
  367. mem16 \1\xDE\207 8086,FPU
  368. mem32 \1\xDA\207 8086,FPU
  369. [FILD,fildR]
  370. (Ch_FPU, Ch_ROp1, Ch_None)
  371. mem32 \1\xDB\200 8086,FPU
  372. mem16 \1\xDF\200 8086,FPU
  373. mem64 \1\xDF\205 8086,FPU
  374. [FIMUL,fimulR]
  375. (Ch_FPU, Ch_ROp1, Ch_None)
  376. mem16 \1\xDE\201 8086,FPU
  377. mem32 \1\xDA\201 8086,FPU
  378. [FINCSTP]
  379. (Ch_FPU, Ch_None, Ch_None)
  380. void \2\xD9\xF7 8086,FPU
  381. [FINIT]
  382. (Ch_FPU, Ch_None, Ch_None)
  383. void \3\x9B\xDB\xE3 8086,FPU
  384. [FIST,fistR]
  385. (Ch_Wop1, Ch_None, Ch_None)
  386. mem32 \1\xDB\202 8086,FPU
  387. mem16 \324\1\xDF\202 8086,FPU
  388. [FISTP,fistpR]
  389. (Ch_Wop1, Ch_None, Ch_None)
  390. mem32 \1\xDB\203 8086,FPU
  391. mem16 \324\1\xDF\203 8086,FPU
  392. mem64 \1\xDF\207 8086,FPU
  393. [FISTTP,fisttpR]
  394. (Ch_Wop1, Ch_None, Ch_None)
  395. mem32 \1\xDB\201 PRESCOTT,FPU
  396. mem16 \1\xDF\201 PRESCOTT,FPU
  397. mem64 \1\xDD\201 PRESCOTT,FPU
  398. [FISUB,fisubR]
  399. (Ch_FPU, Ch_ROp1, Ch_None)
  400. mem16 \1\xDE\204 8086,FPU
  401. mem32 \1\xDA\204 8086,FPU
  402. [FISUBR,fisubrR]
  403. (Ch_FPU, Ch_ROp1, Ch_None)
  404. mem16 \1\xDE\205 8086,FPU
  405. mem32 \1\xDA\205 8086,FPU
  406. [FLD,fldF]
  407. (Ch_Rop1, Ch_FPU, Ch_None)
  408. mem32 \1\xD9\200 8086,FPU
  409. mem64 \1\xDD\200 8086,FPU
  410. mem80 \1\xDB\205 8086,FPU
  411. fpureg \1\xD9\10\xC0 8086,FPU
  412. [FLD1]
  413. (Ch_FPU, Ch_None, Ch_None)
  414. void \2\xD9\xE8 8086,FPU
  415. [FLDCW,fldcwX]
  416. (Ch_FPU, Ch_None, Ch_None)
  417. mem \1\xD9\205 8086,FPU,SW
  418. [FLDENV,fldenv]
  419. (Ch_FPU, Ch_None, Ch_None)
  420. mem \1\xD9\204 8086,FPU
  421. [FLDL2E]
  422. (Ch_FPU, Ch_None, Ch_None)
  423. void \2\xD9\xEA 8086,FPU
  424. [FLDL2T]
  425. (Ch_FPU, Ch_None, Ch_None)
  426. void \2\xD9\xE9 8086,FPU
  427. [FLDLG2]
  428. (Ch_FPU, Ch_None, Ch_None)
  429. void \2\xD9\xEC 8086,FPU
  430. [FLDLN2]
  431. (Ch_FPU, Ch_None, Ch_None)
  432. void \2\xD9\xED 8086,FPU
  433. [FLDPI]
  434. (Ch_FPU, Ch_None, Ch_None)
  435. void \2\xD9\xEB 8086,FPU
  436. [FLDZ]
  437. (Ch_FPU, Ch_None, Ch_None)
  438. void \2\xD9\xEE 8086,FPU
  439. [FMUL,fmulF]
  440. (Ch_ROp1, Ch_FPU, Ch_None)
  441. mem32 \1\xD8\201 8086,FPU
  442. mem64 \1\xDC\201 8086,FPU
  443. void \2\xDC\xC9 8086,FPU
  444. fpureg|to \1\xDC\10\xC8 8086,FPU
  445. fpureg,fpu0 \1\xDC\10\xC8 8086,FPU
  446. fpureg \1\xD8\10\xC8 8086,FPU
  447. fpu0,fpureg \1\xD8\11\xC8 8086,FPU
  448. [FMULP,fmulpF]
  449. (Ch_ROp1, Ch_FPU, Ch_None)
  450. void \2\xDE\xC9 8086,FPU
  451. fpureg \1\xDE\10\xC8 8086,FPU
  452. fpureg,fpu0 \1\xDE\10\xC8 8086,FPU
  453. [FNCLEX]
  454. (Ch_FPU, Ch_None, Ch_None)
  455. void \2\xDB\xE2 8086,FPU
  456. [FNDISI]
  457. (Ch_FPU, Ch_None, Ch_None)
  458. void \2\xDB\xE1 8086,FPU
  459. [FNENI]
  460. (Ch_FPU, Ch_None, Ch_None)
  461. void \2\xDB\xE0 8086,FPU
  462. [FNINIT]
  463. (Ch_FPU, Ch_None, Ch_None)
  464. void \2\xDB\xE3 8086,FPU
  465. [FNOP]
  466. (Ch_FPU, Ch_None, Ch_None)
  467. void \2\xD9\xD0 8086,FPU
  468. [FNSAVE,fnsave]
  469. (Ch_FPU, Ch_None, Ch_None)
  470. mem \1\xDD\206 8086,FPU
  471. [FNSTCW,fnstcwX]
  472. (Ch_Wop1, Ch_None, Ch_None)
  473. mem \1\xD9\207 8086,FPU,SW
  474. [FNSTENV,fnstenv]
  475. (Ch_Wop1, Ch_None, Ch_None)
  476. mem \1\xD9\206 8086,FPU
  477. [FNSTSW,fnstswX]
  478. (Ch_Wop1, Ch_None, Ch_None)
  479. mem \1\xDD\207 8086,FPU,SW
  480. reg_ax \2\xDF\xE0 286,FPU
  481. [FPATAN]
  482. (Ch_FPU, Ch_None, Ch_None)
  483. void \2\xD9\xF3 8086,FPU
  484. [FPREM]
  485. (Ch_FPU, Ch_None, Ch_None)
  486. void \2\xD9\xF8 8086,FPU
  487. [FPREM1]
  488. (Ch_FPU, Ch_None, Ch_None)
  489. void \2\xD9\xF5 386,FPU
  490. [FPTAN]
  491. (Ch_FPU, Ch_None, Ch_None)
  492. void \2\xD9\xF2 8086,FPU
  493. [FRNDINT]
  494. (Ch_FPU, Ch_None, Ch_None)
  495. void \2\xD9\xFC 8086,FPU
  496. [FRSTOR,frstor]
  497. (Ch_FPU, Ch_None, Ch_None)
  498. mem \1\xDD\204 8086,FPU
  499. [FSAVE,fsave]
  500. (Ch_Wop1, Ch_None, Ch_None)
  501. mem \2\x9B\xDD\206 8086,FPU
  502. [FSCALE]
  503. (Ch_FPU, Ch_None, Ch_None)
  504. void \2\xD9\xFD 8086,FPU
  505. [FSETPM]
  506. (Ch_FPU, Ch_None, Ch_None)
  507. void \2\xDB\xE4 286,FPU
  508. [FSIN]
  509. (Ch_FPU, Ch_None, Ch_None)
  510. void \2\xD9\xFE 386,FPU
  511. [FSINCOS]
  512. (Ch_FPU, Ch_None, Ch_None)
  513. void \2\xD9\xFB 386,FPU
  514. [FSQRT]
  515. (Ch_FPU, Ch_None, Ch_None)
  516. void \2\xD9\xFA 8086,FPU
  517. [FST,fstF]
  518. (Ch_Wop1, Ch_None, Ch_None)
  519. mem32 \1\xD9\202 8086,FPU
  520. mem64 \1\xDD\202 8086,FPU
  521. fpureg \1\xDD\10\xD0 8086,FPU
  522. [FSTCW,fstcwX]
  523. (Ch_Wop1, Ch_None, Ch_None)
  524. mem \2\x9B\xD9\207 8086,FPU,SW
  525. [FSTENV,fstenv]
  526. (Ch_Wop1, Ch_None, Ch_None)
  527. mem \2\x9B\xD9\206 8086,FPU
  528. [FSTP,fstpF]
  529. (Ch_Wop1, Ch_FPU, Ch_None)
  530. mem32 \1\xD9\203 8086,FPU
  531. mem64 \1\xDD\203 8086,FPU
  532. mem80 \1\xDB\207 8086,FPU
  533. fpureg \1\xDD\10\xD8 8086,FPU
  534. [FSTSW,fstswX]
  535. (Ch_Wop1, Ch_None, Ch_None)
  536. mem \2\x9B\xDD\207 8086,FPU,SW
  537. void \3\x9B\xDF\xE0 286,FPU
  538. reg_ax \3\x9B\xDF\xE0 286,FPU
  539. [FSUB,fsubF]
  540. (Ch_ROp1, Ch_FPU, Ch_None)
  541. mem32 \1\xD8\204 8086,FPU
  542. mem64 \1\xDC\204 8086,FPU
  543. void \2\xDC\xE1 8086,FPU
  544. fpureg|to \1\xDC\10\xE0 8086,FPU
  545. fpureg,fpu0 \1\xDC\10\xE0 8086,FPU
  546. fpureg \1\xD8\10\xE0 8086,FPU
  547. fpu0,fpureg \1\xD8\11\xE0 8086,FPU
  548. [FSUBP,fsubpF]
  549. (Ch_ROp1, Ch_FPU, Ch_None)
  550. void \2\xDE\xE1 8086,FPU
  551. fpureg \1\xDE\10\xE0 8086,FPU
  552. fpureg,fpu0 \1\xDE\10\xE0 8086,FPU
  553. [FSUBR,fsubrF]
  554. (Ch_ROp1, Ch_FPU, Ch_None)
  555. mem32 \1\xD8\205 8086,FPU
  556. mem64 \1\xDC\205 8086,FPU
  557. void \2\xDC\xE9 8086,FPU
  558. fpureg|to \1\xDC\10\xE8 8086,FPU
  559. fpureg,fpu0 \1\xDC\10\xE8 8086,FPU
  560. fpureg \1\xD8\10\xE8 8086,FPU
  561. fpu0,fpureg \1\xD8\11\xE8 8086,FPU
  562. [FSUBRP,fsubrpF]
  563. (Ch_ROp1, Ch_FPU, Ch_None)
  564. void \2\xDE\xE9 8086,FPU
  565. fpureg \1\xDE\10\xE8 8086,FPU
  566. fpureg,fpu0 \1\xDE\10\xE8 8086,FPU
  567. [FTST]
  568. (Ch_FPU, Ch_None, Ch_None)
  569. void \2\xD9\xE4 8086,FPU
  570. [FUCOM,fucomF]
  571. (Ch_None, Ch_None, Ch_None)
  572. void \2\xDD\xE1 386,FPU
  573. fpureg \1\xDD\10\xE0 386,FPU
  574. fpu0,fpureg \1\xDD\11\xE0 386,FPU
  575. [FUCOMI,fucomiF]
  576. (Ch_WFLAGS, Ch_None, Ch_None)
  577. void \2\xDB\xE9 P6,FPU
  578. fpureg \1\xDB\10\xE8 P6,FPU
  579. fpu0,fpureg \1\xDB\11\xE8 P6,FPU
  580. [FUCOMIP,fucomipF]
  581. (Ch_FPU, Ch_WFLAGS, Ch_None)
  582. void \2\xDF\xE9 P6,FPU
  583. fpureg \1\xDF\10\xE8 P6,FPU
  584. fpu0,fpureg \1\xDF\11\xE8 P6,FPU
  585. [FUCOMP,fucompF]
  586. (Ch_FPU, Ch_None, Ch_None)
  587. void \2\xDD\xE9 386,FPU
  588. fpureg \1\xDD\10\xE8 386,FPU
  589. fpu0,fpureg \1\xDD\11\xE8 386,FPU
  590. [FUCOMPP]
  591. (Ch_FPU, Ch_None, Ch_None)
  592. void \2\xDA\xE9 386,FPU
  593. [FWAIT]
  594. (Ch_FPU, Ch_None, Ch_None)
  595. void \1\x9B 8086,FPU
  596. [FXAM]
  597. (Ch_FPU, Ch_None, Ch_None)
  598. void \2\xD9\xE5 8086,FPU
  599. [FXCH,fxchF]
  600. (Ch_FPU, Ch_None, Ch_None)
  601. void \2\xD9\xC9 8086,FPU
  602. fpureg \1\xD9\10\xC8 8086,FPU
  603. fpureg,fpu0 \1\xD9\10\xC8 8086,FPU
  604. fpu0,fpureg \1\xD9\11\xC8 8086,FPU
  605. [FXTRACT]
  606. (Ch_FPU, Ch_None, Ch_None)
  607. void \2\xD9\xF4 8086,FPU
  608. [FYL2X]
  609. (Ch_FPU, Ch_None, Ch_None)
  610. void \2\xD9\xF1 8086,FPU
  611. [FYL2XP1]
  612. (Ch_FPU, Ch_None, Ch_None)
  613. void \2\xD9\xF9 8086,FPU
  614. [HLT]
  615. (Ch_None, Ch_None, Ch_None)
  616. void \1\xF4 8086,PRIV
  617. [IBTS,ibtsX]
  618. (Ch_All, Ch_None, Ch_None)
  619. regmem,reg16|32|64 \320\2\x0F\xA7\101 386,SM,UNDOC,ND
  620. [ICEBP]
  621. (Ch_All, Ch_None, Ch_None)
  622. void \1\xF1 386,ND
  623. [IDIV,idivX]
  624. (Ch_RWEAX, Ch_WEDX, Ch_WFlags)
  625. rm16|32|64 \320\1\xF7\207 8086
  626. rm8 \1\xF6\207 8086
  627. [IMUL,imulX]
  628. (Ch_RWEAX, Ch_WEDX, Ch_WFlags)
  629. reg16|32|64,regmem \320\2\x0F\xAF\110 386,SM
  630. rm16|32|64 \320\1\xF7\205 8086
  631. reg32|64,regmem,imm8 \320\1\x6B\110\16 286,SM
  632. reg32|64,regmem,imm \320\1\x69\110\42 286,SM,SD,AR2
  633. reg32|64,imm8 \320\1\x6B\100\15 286
  634. reg32|64,imm \320\1\x69\100\41 286,SD
  635. reg16,regmem,imm8 \324\1\x6B\110\16 286,SM
  636. reg16,regmem,imm \324\1\x69\110\32 286,SM,SW,AR2
  637. reg16,imm8 \324\1\x6B\100\15 286
  638. reg16,imm \324\1\x69\100\31 286,SW
  639. rm8 \1\xF6\205 8086
  640. [IN,inX]
  641. (Ch_Wop2, Ch_Rop1, Ch_None)
  642. reg_al,imm \1\xE4\25 8086,SB
  643. reg_ax|32|64,imm \320\1\xE5\25 8086,SB
  644. reg_al,reg_dx \1\xEC 8086
  645. reg_ax|32|64,reg_dx \320\1\xED 8086
  646. [INC,incX]
  647. (Ch_Mop1, Ch_WFlags, Ch_None)
  648. reg16|32 \320\10\x40 8086,NOX86_64
  649. rm16|32|64 \320\1\xFF\200 8086
  650. rm8 \1\xFE\200 8086
  651. [INSB]
  652. (Ch_WMemEDI, Ch_RWEDI, Ch_REDX)
  653. void \1\x6C 186
  654. [INSD,insl]
  655. (Ch_WMemEDI, Ch_RWEDI, Ch_REDX)
  656. void \325\1\x6D 386
  657. [INSW]
  658. (Ch_WMemEDI, Ch_RWEDI, Ch_REDX)
  659. void \324\1\x6D 186
  660. [INT]
  661. (Ch_All, Ch_None, Ch_None)
  662. imm \1\xCD\24 8086,SB
  663. [INT01]
  664. (Ch_All, Ch_None, Ch_None)
  665. void \1\xF1 386,ND
  666. [INT1]
  667. (Ch_All, Ch_None, Ch_None)
  668. void \1\xF1 386
  669. [INT03]
  670. (Ch_None, Ch_None, Ch_None)
  671. void \1\xCC 8086,ND
  672. [INT3]
  673. (Ch_None, Ch_None, Ch_None)
  674. void \1\xCC 8086
  675. [INTO]
  676. (Ch_All, Ch_None, Ch_None)
  677. void \1\xCE 8086,NOX86_64
  678. [INVD]
  679. (Ch_All, Ch_None, Ch_None)
  680. void \2\x0F\x08 486,PRIV
  681. [INVLPG,invlpgX]
  682. (Ch_All, Ch_None, Ch_None)
  683. mem \2\x0F\x01\207 486,PRIV
  684. [IRET]
  685. (Ch_All, Ch_None, Ch_None)
  686. void \327\1\xCF 8086
  687. [IRETD,iret]
  688. (Ch_All, Ch_None, Ch_None)
  689. void \325\1\xCF 386
  690. [IRETW]
  691. (Ch_All, Ch_None, Ch_None)
  692. void \324\1\xCF 8086
  693. [JCXZ]
  694. (Ch_RECX, Ch_None, Ch_None)
  695. imm \310\1\xE3\50 8086,NOX86_64
  696. [JECXZ]
  697. (Ch_RECX, Ch_None, Ch_None)
  698. imm \311\1\xE3\50 386
  699. [JRCXZ]
  700. (Ch_RECX, Ch_None, Ch_None)
  701. imm \1\xE3\50 X86_64
  702. [JMP,jmpX]
  703. (Ch_ROp1, Ch_None, Ch_None)
  704. imm8 \1\xEB\50 8086,PASS2
  705. imm16|32|64 \320\1\xE9\64 8086,PASS2
  706. rm16|32|64 \320\1\xFF\204 8086
  707. imm|short \1\xEB\50 8086,PASS2
  708. imm|near \320\1\xE9\64 8086,ND,PASS2
  709. imm|far \320\1\xEA\34\37 8086,ND,PASS2,NOX86_64
  710. mem|near \320\1\xFF\204 8086
  711. mem|far \320\1\xFF\205 8086
  712. imm:imm \327\1\xEA\35\30 8086,NOX86_64
  713. imm:imm16 \324\1\xEA\31\30 8086,NOX86_64
  714. imm:imm32 \325\1\xEA\41\30 386,NOX86_64
  715. ; SAHF/LAHF are valid in x86_64 only if CPUID.80000001h:ECX.0=1
  716. [LAHF]
  717. (Ch_WEAX, Ch_RFlags, Ch_None)
  718. void \1\x9F 8086
  719. [LAR,larX]
  720. (Ch_Wop2, Ch_None, Ch_None)
  721. reg16|32|64,regmem \320\2\x0F\x02\110 286,PROT,SM
  722. [LCALL,lcall]
  723. ; don't know value of any register
  724. (Ch_All, Ch_None, Ch_None)
  725. rm16|32|64 \320\1\xFF\202 8086
  726. mem|near \320\1\xFF\202 8086
  727. mem|far \320\1\xFF\203 8086
  728. [LDS,ldsX]
  729. (Ch_Wop2, Ch_Rop1, Ch_None)
  730. reg16|32,mem \320\1\xC5\110 8086,NOX86_64
  731. [LEA,leaX]
  732. (Ch_Wop2, Ch_Rop1, Ch_None)
  733. reg32|64,mem \320\1\x8D\110 8086
  734. reg32|64,imm \320\1\x8D\110 8086,SD
  735. [LEAVE]
  736. (Ch_RWESP, Ch_WEBP, Ch_None)
  737. void \1\xC9 186
  738. [LES,lesX]
  739. (Ch_Wop2, Ch_Rop1, Ch_None)
  740. reg16|32,mem \320\1\xC4\110 8086,NOX86_64
  741. [LFS,lfsX]
  742. (Ch_Wop2, Ch_Rop1, Ch_None)
  743. reg16|32,mem \320\2\x0F\xB4\110 386
  744. [LGDT,lgdtX]
  745. (Ch_None, Ch_None, Ch_None)
  746. mem \2\x0F\x01\202 286,PRIV
  747. [LGS,lgsX]
  748. (Ch_Wop2, Ch_Rop1, Ch_None)
  749. reg16|32,mem \320\2\x0F\xB5\110 386
  750. [LIDT,lidtX]
  751. (Ch_None, Ch_None, Ch_None)
  752. mem \2\x0F\x01\203 286,PRIV
  753. [LJMP,ljmp]
  754. (Ch_ROp1, Ch_None, Ch_None)
  755. rm16|32|64 \320\1\xFF\205 8086
  756. mem|far \320\1\xFF\205 8086
  757. mem|near \320\1\xFF\204 8086
  758. [LLDT,lldtX]
  759. (Ch_None, Ch_None, Ch_None)
  760. rm16 \2\x0F\x00\202 286,PROT,PRIV
  761. [LMSW,lmswX]
  762. (Ch_None, Ch_None, Ch_None)
  763. rm16 \2\x0F\x01\206 286,PRIV
  764. [LOADALL]
  765. (Ch_All, Ch_None, Ch_None)
  766. void \2\x0F\x07 386,UNDOC
  767. [LOADALL286]
  768. (Ch_All, Ch_None, Ch_None)
  769. void \2\x0F\x05 286,UNDOC
  770. [LOCK]
  771. (Ch_None, Ch_None, Ch_None)
  772. void \1\xF0 8086,PRE
  773. [LODSB]
  774. (Ch_WEAX, Ch_RWESI, Ch_None)
  775. void \1\xAC 8086
  776. [LODSD,lodsl]
  777. (Ch_WEAX, Ch_RWESI, Ch_None)
  778. void \325\1\xAD 386
  779. [LODSW]
  780. (Ch_WEAX, Ch_RWESI, Ch_None)
  781. void \324\1\xAD 8086
  782. [LOOP]
  783. (Ch_RWECX, Ch_None, Ch_None)
  784. imm \312\1\xE2\50 8086
  785. imm,reg_cx \310\1\xE2\50 8086,NOX86_64
  786. imm,reg_ecx|64 \311\1\xE2\50 386
  787. [LOOPE]
  788. (Ch_RWECX, Ch_RFlags, Ch_None)
  789. imm \312\1\xE1\50 8086
  790. imm,reg_cx \310\1\xE1\50 8086,NOX86_64
  791. imm,reg_ecx|64 \311\1\xE1\50 386
  792. [LOOPNE]
  793. (Ch_RWECX, Ch_RFlags, Ch_None)
  794. imm \312\1\xE0\50 8086
  795. imm,reg_cx \310\1\xE0\50 8086,NOX86_64
  796. imm,reg_ecx|64 \311\1\xE0\50 386
  797. [LOOPNZ]
  798. (Ch_RWECX, Ch_RFlags, Ch_None)
  799. imm \312\1\xE0\50 8086
  800. imm,reg_cx \310\1\xE0\50 8086,NOX86_64
  801. imm,reg_ecx|64 \311\1\xE0\50 386
  802. [LOOPZ]
  803. (Ch_RWECX, Ch_RFlags, Ch_None)
  804. imm \312\1\xE1\50 8086
  805. imm,reg_cx \310\1\xE1\50 8086,NOX86_64
  806. imm,reg_ecx|64 \311\1\xE1\50 386
  807. [LSL,lslX]
  808. (Ch_Wop2, Ch_WFlags, Ch_None)
  809. reg16|32|64,regmem \320\2\x0F\x03\110 286,PROT,SM
  810. [LSS,lssX]
  811. (Ch_Wop2, Ch_ROP1, Ch_None)
  812. reg16|32|64,mem \320\2\x0F\xB2\110 386
  813. [LTR,ltrX]
  814. (Ch_None, Ch_None, Ch_None)
  815. rm16 \2\x0F\x00\203 286,PROT,PRIV
  816. [MONITOR]
  817. (Ch_None, Ch_None, Ch_None)
  818. void \3\x0F\x01\xC8 PRESCOTT
  819. reg_eax,reg_ecx,reg_edx \3\x0F\x01\xC8 PRESCOTT,ND
  820. [MOV,movX]
  821. (Ch_Wop2, Ch_Rop1, Ch_None)
  822. mem_offs,reg_ax|32 \320\1\xA3\34 8086,SM,NOX86_64
  823. regmem,reg16|32|64 \320\1\x89\101 8086,SM
  824. reg_ax,mem_offs \324\1\xA1\35 8086,SM,NOX86_64
  825. reg_eax,mem_offs \325\1\xA1\35 386,SM,NOX86_64
  826. reg16|32|64,regmem \320\1\x8B\110 8086,SM
  827. reg32|64,imm \320\10\xB8\35 386,SD
  828. rm32|64,imm \320\1\xC7\200\41 386,SD
  829. reg16,imm \324\10\xB8\31 8086,SW
  830. rm16,imm \324\1\xC7\200\31 8086,SW
  831. mem_offs,reg_al \1\xA2\34 8086,SM,NOX86_64
  832. rm8,reg8 \1\x88\101 8086
  833. reg_al,mem_offs \1\xA0\35 8086,SM,NOX86_64
  834. reg8,rm8 \1\x8A\110 8086,SM
  835. reg8,imm \10\xB0\21 8086,SB
  836. rm8,imm \1\xC6\200\21 8086,SB
  837. rm16|32,reg_cs \320\1\x8C\201 8086
  838. rm16|32,reg_dess \320\1\x8C\101 8086
  839. rm16|32,reg_fsgs \320\1\x8C\101 386
  840. reg_dess,rm16|32 \321\1\x8E\110 8086,SM
  841. reg_fsgs,rm16|32 \321\1\x8E\110 386,SM
  842. reg32,reg_cr4 \2\x0F\x20\204 PENT,PRIV,NOX86_64
  843. reg32,reg_creg \2\x0F\x20\101 386,PRIV,NOX86_64
  844. reg32,reg_dreg \2\x0F\x21\101 386,PRIV,NOX86_64
  845. reg32,reg_treg \2\x0F\x24\101 386,PRIV,NOX86_64
  846. reg64,reg_cr4 \2\x0F\x20\204 PENT,PRIV,X86_64
  847. reg64,reg_creg \2\x0F\x20\101 386,PRIV,X86_64
  848. reg64,reg_dreg \2\x0F\x21\101 386,PRIV,X86_64
  849. reg64,reg_treg \2\x0F\x24\101 386,PRIV,X86_64
  850. reg_cr4,reg32 \2\x0F\x22\214 PENT,PRIV,NOX86_64
  851. reg_creg,reg32 \2\x0F\x22\110 386,PRIV,NOX86_64
  852. reg_dreg,reg32 \2\x0F\x23\110 386,PRIV,NOX86_64
  853. reg_treg,reg32 \2\x0F\x26\110 386,PRIV,NOX86_64
  854. reg_cr4,reg64 \2\x0F\x22\214 PENT,PRIV,X86_64
  855. reg_creg,reg64 \2\x0F\x22\110 386,PRIV,X86_64
  856. reg_dreg,reg64 \2\x0F\x23\110 386,PRIV,X86_64
  857. reg_treg,reg64 \2\x0F\x26\110 386,PRIV,X86_64
  858. [MOVD,movd]
  859. (Ch_Rop1, Ch_Wop2, Ch_None)
  860. mmxreg,mem \2\x0F\x6E\110 PENT,MMX,SD
  861. mmxreg,reg32 \2\x0F\x6E\110 PENT,MMX
  862. mem,mmxreg \2\x0F\x7E\101 PENT,MMX,SD
  863. reg32,mmxreg \2\x0F\x7E\101 PENT,MMX
  864. xmmreg,reg32 \361\2\x0F\x6E\110 WILLAMETTE,SSE2
  865. reg32,xmmreg \361\2\x0F\x7E\101 WILLAMETTE,SSE2
  866. mem,xmmreg \361\325\2\x0F\x7E\101 WILLAMETTE,SSE2
  867. xmmreg,mem \361\325\2\x0F\x6E\110 WILLAMETTE,SSE2
  868. [MOVQ,movq]
  869. (Ch_Rop1, Ch_Wop2, Ch_None)
  870. mmxreg,mem \2\x0F\x6F\110 PENT,MMX,SM
  871. mmxreg,mmxreg \2\x0F\x6F\110 PENT,MMX
  872. mem,mmxreg \2\x0F\x7F\101 PENT,MMX,SM
  873. mmxreg,mmxreg \2\x0F\x7F\101 PENT,MMX
  874. xmmreg,xmmreg \333\2\x0F\x7E\110 WILLAMETTE,SSE2
  875. xmmreg,xmmreg \361\2\x0F\xD6\110 WILLAMETTE,SSE2
  876. mem,xmmreg \361\2\x0F\xD6\101 WILLAMETTE,SSE2
  877. xmmreg,mem \333\2\x0F\x7E\110 WILLAMETTE,SSE2
  878. xmmreg,reg64 \361\326\2\x0F\x6E\110 WILLAMETTE,SSE2
  879. reg64,xmmreg \361\326\2\x0F\x7E\101 WILLAMETTE,SSE2
  880. [MOVSB]
  881. (Ch_All, Ch_None, Ch_None)
  882. void \1\xA4 8086
  883. [MOVSD,movsl]
  884. ; Ch_All isn't correct for the sse move, but how can it be solved? (FK)
  885. (Ch_All, Ch_None, Ch_None)
  886. void \325\1\xA5 386
  887. xmmreg,xmmreg \334\2\x0F\x10\110 WILLAMETTE,SSE2
  888. xmmreg,xmmreg \334\2\x0F\x11\110 WILLAMETTE,SSE2
  889. mem,xmmreg \334\2\x0F\x11\101 WILLAMETTE,SSE2
  890. xmmreg,mem \334\2\x0F\x10\110 WILLAMETTE,SSE2
  891. [MOVSQ]
  892. (Ch_All, Ch_None, Ch_None)
  893. void \326\1\xA5 X86_64
  894. [MOVSW]
  895. (Ch_All, Ch_None, Ch_None)
  896. void \324\1\xA5 8086
  897. [MOVSX,movsY]
  898. (Ch_Wop2, Ch_Rop1, Ch_None)
  899. reg32|64,rm16 \320\2\x0F\xBF\110 386
  900. reg16|32|64,rm8 \320\2\x0F\xBE\110 386
  901. [MOVZX,movzY]
  902. (Ch_Wop2, Ch_Rop1, Ch_None)
  903. reg32|64,rm16 \320\2\x0F\xB7\110 386
  904. reg16|32|64,rm8 \320\2\x0F\xB6\110 386
  905. [MUL,mulX]
  906. (Ch_RWEAX, Ch_WEDX, Ch_WFlags)
  907. rm16|32|64 \320\1\xF7\204 8086
  908. rm8 \1\xF6\204 8086
  909. [MWAIT]
  910. (Ch_None, Ch_None, Ch_None)
  911. void \3\x0F\x01\xC9 PRESCOTT
  912. reg_eax,reg_ecx \3\x0F\x01\xC9 PRESCOTT,ND
  913. [NEG,negX]
  914. (Ch_Mop1, Ch_None, Ch_None)
  915. rm16|32|64 \320\1\xF7\203 8086
  916. rm8 \1\xF6\203 8086
  917. [NOP]
  918. (Ch_None, Ch_None, Ch_None)
  919. void \1\x90 8086
  920. [NOT,notX]
  921. (Ch_Mop1, Ch_WFlags, Ch_None)
  922. rm16|32|64 \320\1\xF7\202 8086
  923. rm8 \1\xF6\202 8086
  924. [OR,orX]
  925. (Ch_Mop2, Ch_Rop1, Ch_WFlags)
  926. regmem,reg16|32|64 \320\1\x09\101 8086,SM
  927. reg16|32|64,regmem \320\1\x0B\110 8086,SM
  928. rm8,reg8 \1\x08\101 8086
  929. reg8,rm8 \1\x0A\110 8086,SM
  930. rm16|32|64,imm8 \320\1\x83\201\15 8086
  931. reg_eax|64,imm \320\1\x0D\41 386,SD
  932. rm32|64,imm \320\1\x81\201\41 386,SD
  933. reg_ax,imm \324\1\x0D\31 8086,SW
  934. rm16,imm \324\1\x81\201\31 8086,SW
  935. reg_al,imm \1\x0C\21 8086,SB
  936. rm8,imm \1\x80\201\21 8086,SB
  937. [OUT,outX]
  938. (Ch_Rop1, Ch_Rop2, Ch_None)
  939. imm,reg_al \1\xE6\24 8086,SB
  940. imm,reg_ax \324\1\xE7\24 8086,SB
  941. imm,reg_eax \325\1\xE7\24 386,SB
  942. reg_dx,reg_al \1\xEE 8086
  943. reg_dx,reg_ax \324\1\xEF 8086
  944. reg_dx,reg_eax \325\1\xEF 386
  945. [OUTSB]
  946. (Ch_All, Ch_None, Ch_None)
  947. void \1\x6E 186
  948. [OUTSD,outsl]
  949. (Ch_All, Ch_None, Ch_None)
  950. void \325\1\x6F 386
  951. [OUTSW]
  952. (Ch_All, Ch_None, Ch_None)
  953. void \324\1\x6F 186
  954. [PACKSSDW]
  955. (Ch_All, Ch_None, Ch_None)
  956. mmxreg,mmxrm \2\x0F\x6B\110 PENT,MMX,SM
  957. xmmreg,xmmrm \361\2\x0F\x6B\110 WILLAMETTE,SSE2,SM
  958. [PACKSSWB]
  959. (Ch_All, Ch_None, Ch_None)
  960. mmxreg,mmxrm \2\x0F\x63\110 PENT,MMX,SM
  961. xmmreg,xmmrm \361\2\x0F\x63\110 WILLAMETTE,SSE2,SM
  962. [PACKUSWB]
  963. (Ch_All, Ch_None, Ch_None)
  964. mmxreg,mmxrm \2\x0F\x67\110 PENT,MMX,SM
  965. xmmreg,xmmrm \361\2\x0F\x67\110 WILLAMETTE,SSE2,SM
  966. [PADDB]
  967. (Ch_Mop2, Ch_Rop1, Ch_None)
  968. mmxreg,mmxrm \2\x0F\xFC\110 PENT,MMX,SM
  969. xmmreg,xmmrm \361\2\x0F\xFC\110 WILLAMETTE,SSE2,SM
  970. [PADDD]
  971. (Ch_Mop2, Ch_Rop1, Ch_None)
  972. mmxreg,mmxrm \2\x0F\xFE\110 PENT,MMX,SM
  973. xmmreg,xmmrm \361\2\x0F\xFE\110 WILLAMETTE,SSE2,SM
  974. [PADDSB]
  975. (Ch_Mop2, Ch_Rop1, Ch_None)
  976. mmxreg,mmxrm \2\x0F\xEC\110 PENT,MMX,SM
  977. xmmreg,xmmrm \361\2\x0F\xEC\110 WILLAMETTE,SSE2,SM
  978. [PADDSIW]
  979. (Ch_Mop2, Ch_Rop1, Ch_None)
  980. mmxreg,mmxrm \2\x0F\x51\110 PENT,MMX,SM,CYRIX
  981. [PADDSW]
  982. (Ch_Mop2, Ch_Rop1, Ch_None)
  983. mmxreg,mmxrm \2\x0F\xED\110 PENT,MMX,SM
  984. xmmreg,xmmrm \361\2\x0F\xED\110 WILLAMETTE,SSE2,SM
  985. [PADDUSB]
  986. (Ch_All, Ch_None, Ch_None)
  987. mmxreg,mmxrm \2\x0F\xDC\110 PENT,MMX,SM
  988. xmmreg,xmmrm \361\2\x0F\xDC\110 WILLAMETTE,SSE2,SM
  989. [PADDUSW]
  990. (Ch_All, Ch_None, Ch_None)
  991. mmxreg,mmxrm \2\x0F\xDD\110 PENT,MMX,SM
  992. xmmreg,xmmrm \361\2\x0F\xDD\110 WILLAMETTE,SSE2,SM
  993. [PADDW]
  994. (Ch_All, Ch_None, Ch_None)
  995. mmxreg,mmxrm \2\x0F\xFD\110 PENT,MMX,SM
  996. xmmreg,xmmrm \361\2\x0F\xFD\110 WILLAMETTE,SSE2,SM
  997. [PAND]
  998. (Ch_All, Ch_None, Ch_None)
  999. mmxreg,mmxrm \2\x0F\xDB\110 PENT,MMX,SM
  1000. xmmreg,xmmrm \361\2\x0F\xDB\110 WILLAMETTE,SSE2,SM
  1001. [PANDN]
  1002. (Ch_All, Ch_None, Ch_None)
  1003. mmxreg,mmxrm \2\x0F\xDF\110 PENT,MMX,SM
  1004. xmmreg,xmmrm \361\2\x0F\xDF\110 WILLAMETTE,SSE2,SM
  1005. [PAVEB]
  1006. (Ch_All, Ch_None, Ch_None)
  1007. mmxreg,mmxrm \2\x0F\x50\110 PENT,MMX,SM,CYRIX
  1008. [PAVGUSB]
  1009. (Ch_All, Ch_None, Ch_None)
  1010. mmxreg,mmxrm \2\x0F\x0F\110\01\xBF PENT,3DNOW,SM
  1011. [PCMPEQB]
  1012. (Ch_All, Ch_None, Ch_None)
  1013. mmxreg,mmxrm \2\x0F\x74\110 PENT,MMX,SM
  1014. xmmreg,xmmrm \361\2\x0F\x74\110 WILLAMETTE,SSE2,SM
  1015. [PCMPEQD]
  1016. (Ch_All, Ch_None, Ch_None)
  1017. mmxreg,mmxrm \2\x0F\x76\110 PENT,MMX,SM
  1018. xmmreg,xmmrm \361\2\x0F\x76\110 WILLAMETTE,SSE2,SM
  1019. [PCMPEQW]
  1020. (Ch_All, Ch_None, Ch_None)
  1021. mmxreg,mmxrm \2\x0F\x75\110 PENT,MMX,SM
  1022. xmmreg,xmmrm \361\2\x0F\x75\110 WILLAMETTE,SSE2,SM
  1023. [PCMPGTB]
  1024. (Ch_All, Ch_None, Ch_None)
  1025. mmxreg,mmxrm \2\x0F\x64\110 PENT,MMX,SM
  1026. xmmreg,xmmrm \361\2\x0F\x64\110 WILLAMETTE,SSE2,SM
  1027. [PCMPGTD]
  1028. (Ch_All, Ch_None, Ch_None)
  1029. mmxreg,mmxrm \2\x0F\x66\110 PENT,MMX,SM
  1030. xmmreg,xmmrm \361\2\x0F\x66\110 WILLAMETTE,SSE2,SM
  1031. [PCMPGTW]
  1032. (Ch_All, Ch_None, Ch_None)
  1033. mmxreg,mmxrm \2\x0F\x65\110 PENT,MMX,SM
  1034. xmmreg,xmmrm \361\2\x0F\x65\110 WILLAMETTE,SSE2,SM
  1035. [PDISTIB]
  1036. (Ch_All, Ch_None, Ch_None)
  1037. mmxreg,mem \2\x0F\x54\110 PENT,MMX,SM,CYRIX
  1038. [PF2ID]
  1039. (Ch_All, Ch_None, Ch_None)
  1040. mmxreg,mmxrm \2\x0F\x0F\110\01\x1D PENT,3DNOW,SM
  1041. [PFACC]
  1042. (Ch_All, Ch_None, Ch_None)
  1043. mmxreg,mmxrm \2\x0F\x0F\110\01\xAE PENT,3DNOW,SM
  1044. [PFADD]
  1045. (Ch_All, Ch_None, Ch_None)
  1046. mmxreg,mmxrm \2\x0F\x0F\110\01\x9E PENT,3DNOW,SM
  1047. [PFCMPEQ]
  1048. (Ch_All, Ch_None, Ch_None)
  1049. mmxreg,mmxrm \2\x0F\x0F\110\01\xB0 PENT,3DNOW,SM
  1050. [PFCMPGE]
  1051. (Ch_All, Ch_None, Ch_None)
  1052. mmxreg,mmxrm \2\x0F\x0F\110\01\x90 PENT,3DNOW,SM
  1053. [PFCMPGT]
  1054. (Ch_All, Ch_None, Ch_None)
  1055. mmxreg,mmxrm \2\x0F\x0F\110\01\xA0 PENT,3DNOW,SM
  1056. [PFMAX]
  1057. (Ch_All, Ch_None, Ch_None)
  1058. mmxreg,mmxrm \2\x0F\x0F\110\01\xA4 PENT,3DNOW,SM
  1059. [PFMIN]
  1060. (Ch_All, Ch_None, Ch_None)
  1061. mmxreg,mmxrm \2\x0F\x0F\110\01\x94 PENT,3DNOW,SM
  1062. [PFMUL]
  1063. (Ch_All, Ch_None, Ch_None)
  1064. mmxreg,mmxrm \2\x0F\x0F\110\01\xB4 PENT,3DNOW,SM
  1065. [PFRCP]
  1066. (Ch_All, Ch_None, Ch_None)
  1067. mmxreg,mmxrm \2\x0F\x0F\110\01\x96 PENT,3DNOW,SM
  1068. [PFRCPIT1]
  1069. (Ch_All, Ch_None, Ch_None)
  1070. mmxreg,mmxrm \2\x0F\x0F\110\01\xA6 PENT,3DNOW,SM
  1071. [PFRCPIT2]
  1072. (Ch_All, Ch_None, Ch_None)
  1073. mmxreg,mmxrm \2\x0F\x0F\110\01\xB6 PENT,3DNOW,SM
  1074. [PFRSQIT1]
  1075. (Ch_All, Ch_None, Ch_None)
  1076. mmxreg,mmxrm \2\x0F\x0F\110\01\xA7 PENT,3DNOW,SM
  1077. [PFRSQRT]
  1078. (Ch_All, Ch_None, Ch_None)
  1079. mmxreg,mmxrm \2\x0F\x0F\110\01\x97 PENT,3DNOW,SM
  1080. [PFSUB]
  1081. (Ch_All, Ch_None, Ch_None)
  1082. mmxreg,mmxrm \2\x0F\x0F\110\01\x9A PENT,3DNOW,SM
  1083. [PFSUBR]
  1084. (Ch_All, Ch_None, Ch_None)
  1085. mmxreg,mmxrm \2\x0F\x0F\110\01\xAA PENT,3DNOW,SM
  1086. [PI2FD]
  1087. (Ch_All, Ch_None, Ch_None)
  1088. mmxreg,mmxrm \2\x0F\x0F\110\01\x0D PENT,3DNOW,SM
  1089. [PMACHRIW]
  1090. (Ch_All, Ch_None, Ch_None)
  1091. mmxreg,mem \2\x0F\x5E\110 PENT,MMX,SM,CYRIX
  1092. [PMADDWD]
  1093. (Ch_All, Ch_None, Ch_None)
  1094. mmxreg,mmxrm \2\x0F\xF5\110 PENT,MMX,SM
  1095. xmmreg,xmmrm \361\2\x0F\xF5\110 WILLAMETTE,SM,SSE2
  1096. [PMAGW]
  1097. (Ch_All, Ch_None, Ch_None)
  1098. mmxreg,mmxrm \2\x0F\x52\110 PENT,MMX,SM,CYRIX
  1099. [PMULHRIW]
  1100. (Ch_All, Ch_None, Ch_None)
  1101. mmxreg,mmxrm \2\x0F\x5D\110 PENT,MMX,SM,CYRIX
  1102. [PMULHRWA]
  1103. (Ch_All, Ch_None, Ch_None)
  1104. mmxreg,mmxrm \2\x0F\x0F\110\1\xB7 PENT,3DNOW,SM
  1105. [PMULHRWC]
  1106. (Ch_All, Ch_None, Ch_None)
  1107. mmxreg,mmxrm \2\x0F\x59\110 PENT,MMX,SM,CYRIX
  1108. [PMULHW]
  1109. (Ch_All, Ch_None, Ch_None)
  1110. mmxreg,mmxrm \2\x0F\xE5\110 PENT,MMX,SM
  1111. xmmreg,xmmrm \361\2\x0F\xE5\110 WILLAMETTE,SSE2,SM
  1112. [PMULLW]
  1113. (Ch_All, Ch_None, Ch_None)
  1114. mmxreg,mmxrm \2\x0F\xD5\110 PENT,MMX,SM
  1115. xmmreg,xmmrm \361\2\x0F\xD5\110 WILLAMETTE,SSE2,SM
  1116. [PMVGEZB]
  1117. (Ch_All, Ch_None, Ch_None)
  1118. mmxreg,mem \2\x0F\x5C\110 PENT,MMX,SM,CYRIX
  1119. [PMVLZB]
  1120. (Ch_All, Ch_None, Ch_None)
  1121. mmxreg,mem \2\x0F\x5B\110 PENT,MMX,SM,CYRIX
  1122. [PMVNZB]
  1123. (Ch_All, Ch_None, Ch_None)
  1124. mmxreg,mem \2\x0F\x5A\110 PENT,MMX,SM,CYRIX
  1125. [PMVZB]
  1126. (Ch_All, Ch_None, Ch_None)
  1127. mmxreg,mem \2\x0F\x58\110 PENT,MMX,SM,CYRIX
  1128. [POP,popX]
  1129. (Ch_Wop1, Ch_RWESP, Ch_None)
  1130. reg16|32|64 \320\10\x58\335 8086
  1131. rm16|32|64 \300\320\1\x8F\200\335 8086
  1132. reg_cs \1\x0F 8086,UNDOC,ND
  1133. reg_dess \4 8086,NOX86_64
  1134. reg_fsgs \1\x0F\5\335 386
  1135. [POPA,popaX]
  1136. (Ch_All, Ch_None, Ch_None)
  1137. void \327\1\x61 186,NOX86_64
  1138. [POPAD,popal]
  1139. (Ch_All, Ch_None, Ch_None)
  1140. void \325\1\x61 386,NOX86_64
  1141. [POPAW]
  1142. (Ch_All, Ch_None, Ch_None)
  1143. void \324\1\x61 186,NOX86_64
  1144. [POPF]
  1145. (Ch_RWESP, Ch_WFlags, Ch_None)
  1146. void \327\1\x9D 186,NOX86_64
  1147. void \326\1\x9D X86_64
  1148. [POPFD,popfl]
  1149. (Ch_RWESP, Ch_WFlags, Ch_None)
  1150. void \325\1\x9D 386,NOX86_64
  1151. [POPFW]
  1152. (Ch_RWESP, Ch_WFLAGS, Ch_None)
  1153. void \324\1\x9D 186,NOX86_64
  1154. void \1\x9D X86_64
  1155. [POPFQ]
  1156. (Ch_RWESP, Ch_WFlags, Ch_None)
  1157. void \326\1\x9D X86_64
  1158. [POR]
  1159. (Ch_All, Ch_None, Ch_None)
  1160. mmxreg,mmxrm \2\x0F\xEB\110 PENT,MMX,SM
  1161. xmmreg,xmmreg \361\2\x0F\xEB\110 WILLAMETTE,SSE2,SM
  1162. [PREFETCH,prefetchX]
  1163. (Ch_All, Ch_None, Ch_None)
  1164. mem \2\x0F\x0D\200 PENT,3DNOW,SM
  1165. [PREFETCHW,prefetchwX]
  1166. (Ch_All, Ch_None, Ch_None)
  1167. mem \2\x0F\x0D\201 PENT,3DNOW,SM
  1168. [PSLLD]
  1169. (Ch_All, Ch_None, Ch_None)
  1170. mmxreg,mmxrm \2\x0F\xF2\110 PENT,MMX,SM
  1171. mmxreg,imm \2\x0F\x72\206\25 PENT,MMX,SB,AR1
  1172. xmmreg,xmmrm \361\2\x0F\xF2\110 WILLAMETTE,SSE2,SM
  1173. xmmreg,imm \361\2\x0F\x72\206\25 WILLAMETTE,SSE2,SB,AR1
  1174. [PSLLDQ]
  1175. (Ch_All, Ch_None, Ch_None)
  1176. xmmreg,imm \361\2\x0F\x73\207\25 WILLAMETTE,SSE2,SB,AR1
  1177. [PSLLQ]
  1178. (Ch_All, Ch_None, Ch_None)
  1179. mmxreg,mmxrm \2\x0F\xF3\110 PENT,MMX,SM
  1180. mmxreg,imm \2\x0F\x73\206\25 PENT,MMX,SB,AR1
  1181. xmmreg,xmmrm \361\2\x0F\xF3\110 WILLAMETTE,SSE2,SM
  1182. xmmreg,imm \361\2\x0F\x73\206\25 WILLAMETTE,SSE2,SB,AR1
  1183. [PSLLW]
  1184. (Ch_All, Ch_None, Ch_None)
  1185. mmxreg,mmxrm \2\x0F\xF1\110 PENT,MMX,SM
  1186. mmxreg,imm \2\x0F\x71\206\25 PENT,MMX,SB,AR1
  1187. xmmreg,xmmrm \361\2\x0F\xF1\110 WILLAMETTE,SSE2,SM
  1188. xmmreg,imm \361\2\x0F\x71\206\25 WILLAMETTE,SSE2,SB,AR1
  1189. [PSRAD]
  1190. (Ch_All, Ch_None, Ch_None)
  1191. mmxreg,mmxrm \2\x0F\xE2\110 PENT,MMX,SM
  1192. mmxreg,imm \2\x0F\x72\204\25 PENT,MMX,SB,AR1
  1193. xmmreg,xmmrm \361\2\x0F\xE2\110 WILLAMETTE,SSE2,SM
  1194. xmmreg,imm \361\2\x0F\x72\204\25 WILLAMETTE,SSE2,SB,AR1
  1195. [PSRAW]
  1196. (Ch_All, Ch_None, Ch_None)
  1197. mmxreg,mmxrm \2\x0F\xE1\110 PENT,MMX,SM
  1198. mmxreg,imm \2\x0F\x71\204\25 PENT,MMX,SB,AR1
  1199. xmmreg,xmmrm \361\2\x0F\xE1\110 WILLAMETTE,SSE2,SM
  1200. xmmreg,imm \361\2\x0F\x71\204\25 WILLAMETTE,SSE2,SB,AR1
  1201. [PSRLD]
  1202. (Ch_All, Ch_None, Ch_None)
  1203. mmxreg,mmxrm \2\x0F\xD2\110 PENT,MMX,SM
  1204. mmxreg,imm \2\x0F\x72\202\25 PENT,MMX,SB,AR1
  1205. xmmreg,xmmrm \361\2\x0F\xD2\110 WILLAMETTE,SSE2,SM
  1206. xmmreg,imm \361\2\x0F\x72\202\25 WILLAMETTE,SSE2,SB,AR1
  1207. [PSRLQ]
  1208. (Ch_All, Ch_None, Ch_None)
  1209. mmxreg,mmxrm \2\x0F\xD3\110 PENT,MMX,SM
  1210. mmxreg,imm \2\x0F\x73\202\25 PENT,MMX,SB,AR1
  1211. xmmreg,xmmrm \361\2\x0F\xD3\110 WILLAMETTE,SSE2,SM
  1212. xmmreg,imm \361\2\x0F\x73\202\25 WILLAMETTE,SSE2,SB,AR1
  1213. [PSRLW]
  1214. (Ch_All, Ch_None, Ch_None)
  1215. mmxreg,mmxrm \2\x0F\xD1\110 PENT,MMX,SM
  1216. mmxreg,imm \2\x0F\x71\202\25 PENT,MMX,SB,AR1
  1217. xmmreg,xmmrm \361\2\x0F\xD1\110 WILLAMETTE,SSE2,SM
  1218. xmmreg,imm \361\2\x0F\x71\202\25 WILLAMETTE,SSE2,SB,AR1
  1219. [PSUBB]
  1220. (Ch_All, Ch_None, Ch_None)
  1221. mmxreg,mmxrm \2\x0F\xF8\110 PENT,MMX,SM
  1222. xmmreg,xmmrm \361\2\x0F\xF8\110 WILLAMETTE,SSE2,SM
  1223. [PSUBD]
  1224. (Ch_All, Ch_None, Ch_None)
  1225. mmxreg,mmxrm \2\x0F\xFA\110 PENT,MMX,SM
  1226. xmmreg,xmmrm \361\2\x0F\xFA\110 WILLAMETTE,SSE2,SM
  1227. [PSUBSB]
  1228. (Ch_All, Ch_None, Ch_None)
  1229. mmxreg,mmxrm \2\x0F\xE8\110 PENT,MMX,SM
  1230. xmmreg,xmmrm \361\2\x0F\xE8\110 WILLAMETTE,SSE2,SM
  1231. [PSUBSIW]
  1232. (Ch_All, Ch_None, Ch_None)
  1233. mmxreg,mem \2\x0F\x55\110 PENT,MMX,SM,CYRIX
  1234. mmxreg,mmxreg \2\x0F\x55\110 PENT,MMX,CYRIX
  1235. [PSUBSW]
  1236. (Ch_All, Ch_None, Ch_None)
  1237. mmxreg,mmxrm \2\x0F\xE9\110 PENT,MMX,SM
  1238. xmmreg,xmmrm \361\2\x0F\xE9\110 WILLAMETTE,SSE2,SM
  1239. [PSUBUSB]
  1240. (Ch_All, Ch_None, Ch_None)
  1241. mmxreg,mmxrm \2\x0F\xD8\110 PENT,MMX,SM
  1242. xmmreg,xmmrm \361\2\x0F\xD8\110 WILLAMETTE,SSE2,SM
  1243. [PSUBUSW]
  1244. (Ch_All, Ch_None, Ch_None)
  1245. mmxreg,mmxrm \2\x0F\xD9\110 PENT,MMX,SM
  1246. xmmreg,xmmrm \361\2\x0F\xD9\110 WILLAMETTE,SSE2,SM
  1247. [PSUBW]
  1248. (Ch_All, Ch_None, Ch_None)
  1249. mmxreg,mmxrm \2\x0F\xF9\110 PENT,MMX,SM
  1250. xmmreg,xmmrm \361\2\x0F\xF9\110 WILLAMETTE,SSE2,SM
  1251. [PUNPCKHBW]
  1252. (Ch_All, Ch_None, Ch_None)
  1253. mmxreg,mmxrm \2\x0F\x68\110 PENT,MMX,SM
  1254. xmmreg,xmmrm \361\2\x0F\x68\110 WILLAMETTE,SSE2,SM
  1255. [PUNPCKHDQ]
  1256. (Ch_All, Ch_None, Ch_None)
  1257. mmxreg,mmxrm \2\x0F\x6A\110 PENT,MMX,SM
  1258. xmmreg,xmmrm \361\2\x0F\x6A\110 WILLAMETTE,SSE2,SM
  1259. [PUNPCKHWD]
  1260. (Ch_All, Ch_None, Ch_None)
  1261. mmxreg,mmxrm \2\x0F\x69\110 PENT,MMX,SM
  1262. xmmreg,xmmrm \361\2\x0F\x69\110 WILLAMETTE,SSE2,SM
  1263. [PUNPCKLBW]
  1264. (Ch_All, Ch_None, Ch_None)
  1265. mmxreg,mmxrm \2\x0F\x60\110 PENT,MMX,SM
  1266. xmmreg,xmmrm \361\2\x0F\x60\110 WILLAMETTE,SSE2,SM
  1267. [PUNPCKLDQ]
  1268. (Ch_All, Ch_None, Ch_None)
  1269. mmxreg,mmxrm \2\x0F\x62\110 PENT,MMX,SM
  1270. xmmreg,xmmrm \361\2\x0F\x62\110 WILLAMETTE,SSE2,SM
  1271. [PUNPCKLWD]
  1272. (Ch_All, Ch_None, Ch_None)
  1273. mmxreg,mmxrm \2\x0F\x61\110 PENT,MMX,SM
  1274. xmmreg,xmmrm \361\2\x0F\x61\110 WILLAMETTE,SSE2,SM
  1275. [PUSH,pushX]
  1276. (Ch_Rop1, Ch_RWESP, Ch_None)
  1277. reg16|32|64 \320\10\x50\335 8086
  1278. rm16|32|64 \300\320\1\xFF\206\335 8086
  1279. imm32 \325\1\x68\40\335 386
  1280. imm16 \324\1\x68\30\335 286
  1281. imm8 \1\x6A\14\335 286
  1282. reg_fsgs \1\x0F\7\335 386,NOX86_64
  1283. reg_sreg \6 8086,NOX86_64
  1284. [PUSHA,pushaX]
  1285. (Ch_All, Ch_None, Ch_None)
  1286. void \327\1\x60 186,NOX86_64
  1287. [PUSHAD,pushal]
  1288. (Ch_All, Ch_None, Ch_None)
  1289. void \325\1\x60 386,NOX86_64
  1290. [PUSHAW]
  1291. (Ch_All, Ch_None, Ch_None)
  1292. void \324\1\x60 186,NOX86_64
  1293. [PUSHF]
  1294. (Ch_RWESP, Ch_RFlags, Ch_None)
  1295. void \327\1\x9C 186
  1296. [PUSHFD,pushfl]
  1297. (Ch_RWESP, Ch_RFlags, Ch_None)
  1298. void \325\1\x9C 386,NOX86_64
  1299. [PUSHFW]
  1300. (Ch_RWESP, Ch_RFLAGS, Ch_None)
  1301. void \324\1\x9C 186
  1302. [PUSHFQ]
  1303. (Ch_RWESP, Ch_RFlags, Ch_None)
  1304. void \326\1\x9C X86_64
  1305. [PXOR]
  1306. (Ch_Mop2, Ch_Rop1, Ch_None)
  1307. mmxreg,mmxrm \2\x0F\xEF\110 PENT,MMX,SM
  1308. xmmreg,xmmrm \361\2\x0F\xEF\110 WILLAMETTE,SSE2,SM
  1309. [RCL,rclX]
  1310. (Ch_Mop2, Ch_Rop1, Ch_RWFlags)
  1311. rm16|32|64,unity \320\1\xD1\202 8086
  1312. rm16|32|64,reg_cl \320\1\xD3\202 8086
  1313. rm16|32|64,imm \320\1\xC1\202\25 8086,SB
  1314. rm8,unity \1\xD0\202 8086
  1315. rm8,reg_cl \1\xD2\202 8086
  1316. rm8,imm \1\xC0\202\25 186,SB
  1317. [RCR,rcrX]
  1318. (Ch_Mop2, Ch_Rop1, Ch_RWFlags)
  1319. rm16|32|64,unity \320\1\xD1\203 8086
  1320. rm16|32|64,reg_cl \320\1\xD3\203 8086
  1321. rm16|32|64,imm \320\1\xC1\203\25 8086,SB
  1322. rm8,unity \1\xD0\203 8086
  1323. rm8,reg_cl \1\xD2\203 8086
  1324. rm8,imm \1\xC0\203\25 186,SB
  1325. [RDSHR]
  1326. (Ch_All, Ch_None, Ch_None)
  1327. void \2\x0F\x36 P6,CYRIX,SMM
  1328. [RDMSR]
  1329. (Ch_WEAX, Ch_WEDX, Ch_None)
  1330. void \2\x0F\x32 PENT,PRIV
  1331. [RDPMC]
  1332. (Ch_WEAX, Ch_WEDX, Ch_None)
  1333. void \2\x0F\x33 P6
  1334. [RDTSC]
  1335. (Ch_WEAX, Ch_WEDX, Ch_None)
  1336. void \2\x0F\x31 PENT
  1337. [REP]
  1338. (Ch_RWECX, Ch_RWFlags, Ch_None)
  1339. void \1\xF3 8086,PRE
  1340. [REPE]
  1341. (Ch_RWECX, Ch_RWFlags, Ch_None)
  1342. void \1\xF3 8086,PRE
  1343. [REPNE]
  1344. (Ch_RWECX, Ch_RWFlags, Ch_None)
  1345. void \1\xF2 8086,PRE
  1346. [REPNZ]
  1347. (Ch_RWECX, Ch_RWFLAGS, Ch_None)
  1348. void \1\xF2 8086,PRE
  1349. [REPZ]
  1350. (Ch_RWECX, Ch_RWFLAGS, Ch_None)
  1351. void \1\xF3 8086,PRE
  1352. [RET]
  1353. (Ch_All, Ch_None, Ch_None)
  1354. void \1\xC3 8086
  1355. imm \1\xC2\30 8086,SW
  1356. [RETF,lret]
  1357. (Ch_All, Ch_None, Ch_None)
  1358. void \1\xCB 8086
  1359. imm \1\xCA\30 8086,SW
  1360. [RETN,ret]
  1361. (Ch_All, Ch_None, Ch_None)
  1362. void \1\xC3 8086
  1363. imm \1\xC2\30 8086,SW
  1364. [ROL,rolX]
  1365. (Ch_Mop2, Ch_Rop1, Ch_RWFlags)
  1366. rm16|32|64,unity \320\1\xD1\200 8086
  1367. rm16|32|64,reg_cl \320\1\xD3\200 8086
  1368. rm16|32|64,imm \320\1\xC1\200\25 8086,SB
  1369. rm8,unity \1\xD0\200 8086
  1370. rm8,reg_cl \1\xD2\200 8086
  1371. rm8,imm \1\xC0\200\25 186,SB
  1372. [ROR,rorX]
  1373. (Ch_Mop2, Ch_Rop1, Ch_RWFlags)
  1374. rm16|32|64,unity \320\1\xD1\201 8086
  1375. rm16|32|64,reg_cl \320\1\xD3\201 8086
  1376. rm16|32|64,imm \320\1\xC1\201\25 8086,SB
  1377. rm8,unity \1\xD0\201 8086
  1378. rm8,reg_cl \1\xD2\201 8086
  1379. rm8,imm \1\xC0\201\25 186,SB
  1380. [RSDC]
  1381. (Ch_All, Ch_None, Ch_None)
  1382. reg_sreg,mem80 \2\x0F\x79\101 486,CYRIX,SMM
  1383. [RSLDT]
  1384. (Ch_All, Ch_None, Ch_None)
  1385. mem80 \2\x0F\x7B\200 486,CYRIX,SMM
  1386. [RSM]
  1387. (Ch_All, Ch_None, Ch_None)
  1388. void \2\x0F\xAA PENT,SMM
  1389. ; SAHF/LAHF are valid in x86_64 only if CPUID.80000001h:ECX.0=1
  1390. [SAHF]
  1391. (Ch_WFlags, Ch_REAX, Ch_None)
  1392. void \1\x9E 8086
  1393. [SAL,salX]
  1394. (Ch_Mop2, Ch_Rop1, Ch_RWFlags)
  1395. rm16|32|64,unity \320\1\xD1\204 8086,ND
  1396. rm16|32|64,reg_cl \320\1\xD3\204 8086,ND
  1397. rm16|32|64,imm \320\1\xC1\204\25 8086,ND,SB
  1398. rm8,unity \1\xD0\204 8086,ND
  1399. rm8,reg_cl \1\xD2\204 8086,ND
  1400. rm8,imm \1\xC0\204\25 186,ND,SB
  1401. [SALC]
  1402. (Ch_WEAX, Ch_RFLAGS, Ch_None)
  1403. void \1\xD6 8086,UNDOC,NOX86_64
  1404. [SAR,sarX]
  1405. (Ch_Mop2, Ch_Rop1, Ch_WFlags)
  1406. rm16|32|64,unity \320\1\xD1\207 8086
  1407. rm16|32|64,reg_cl \320\1\xD3\207 8086
  1408. rm16|32|64,imm \320\1\xC1\207\25 8086,SB
  1409. rm8,unity \1\xD0\207 8086
  1410. rm8,reg_cl \1\xD2\207 8086
  1411. rm8,imm \1\xC0\207\25 186,SB
  1412. [SBB,sbbX]
  1413. (Ch_Mop2, Ch_Rop1, Ch_RWFlags)
  1414. regmem,reg16|32|64 \320\1\x19\101 8086,SM
  1415. reg16|32|64,regmem \320\1\x1B\110 8086,SM
  1416. rm16|32|64,imm8 \320\1\x83\203\15 8086
  1417. rm8,reg8 \1\x18\101 8086
  1418. reg8,rm8 \1\x1A\110 8086,SM
  1419. reg_eax|64,imm \320\1\x1D\41 386,SD
  1420. rm32|64,imm \320\1\x81\203\41 386,SD
  1421. reg_ax,imm \324\1\x1D\31 8086,SW
  1422. rm16,imm \320\1\x81\203\31 8086,SW
  1423. reg_al,imm \1\x1C\21 8086,SB
  1424. rm8,imm \1\x80\203\21 8086,SB
  1425. [SCASB]
  1426. (Ch_All, Ch_None, Ch_None)
  1427. void \332\1\xAE 8086
  1428. [SCASD,scasl]
  1429. (Ch_All, Ch_None, Ch_None)
  1430. void \332\325\1\xAF 386
  1431. [SCASQ]
  1432. (Ch_All, Ch_None, Ch_None)
  1433. void \332\326\1\xAF X86_64
  1434. [SCASW]
  1435. (Ch_All, Ch_None, Ch_None)
  1436. void \332\324\1\xAF 8086
  1437. [SEGCS,cs]
  1438. (Ch_None, Ch_None, Ch_None)
  1439. void \1\x2E 8086,PRE
  1440. [SEGDS,ds]
  1441. (Ch_None, Ch_None, Ch_None)
  1442. void \1\x3E 8086,PRE
  1443. [SEGES,es]
  1444. (Ch_None, Ch_None, Ch_None)
  1445. void \1\x26 8086,PRE
  1446. [SEGFS,fs]
  1447. (Ch_None, Ch_None, Ch_None)
  1448. void \1\x64 8086,PRE
  1449. [SEGGS,gs]
  1450. (Ch_None, Ch_None, Ch_None)
  1451. void \1\x65 8086,PRE
  1452. [SEGSS,ss]
  1453. (Ch_None, Ch_None, Ch_None)
  1454. void \1\x36 8086,PRE
  1455. [SGDT]
  1456. (Ch_Wop1, Ch_None, Ch_None)
  1457. mem \2\x0F\x01\200 286
  1458. [SHL,shlX]
  1459. (Ch_Mop2, Ch_Rop1, Ch_WFlags)
  1460. rm16|32|64,unity \320\1\xD1\204 8086
  1461. rm16|32|64,reg_cl \320\1\xD3\204 8086
  1462. rm16|32|64,imm \320\1\xC1\204\25 186,SW
  1463. rm8,unity \1\xD0\204 8086
  1464. rm8,reg_cl \1\xD2\204 8086
  1465. rm8,imm \1\xC0\204\25 186,SB
  1466. [SHLD,shldX]
  1467. (Ch_MOp3, Ch_RWFlags, Ch_Rop2)
  1468. rm16|32|64,reg16|32|64,imm \321\2\x0F\xA4\101\26 386,SM2,SB,AR2
  1469. rm16|32|64,reg16|32|64,reg_cl \321\2\x0F\xA5\101 386,SM
  1470. [SHR,shrX]
  1471. (Ch_Mop2, Ch_Rop1, Ch_WFlags)
  1472. rm16|32|64,unity \320\1\xD1\205 8086
  1473. rm16|32|64,reg_cl \320\1\xD3\205 8086
  1474. rm16|32|64,imm \320\1\xC1\205\25 186,SW
  1475. rm8,unity \1\xD0\205 8086
  1476. rm8,reg_cl \1\xD2\205 8086
  1477. rm8,imm \1\xC0\205\25 186,SB
  1478. [SHRD,shrdX]
  1479. (Ch_MOp3, Ch_RWFlags, Ch_Rop2)
  1480. rm16|32|64,reg16|32|64,imm \321\2\x0F\xAC\101\26 386,SM2,SB,AR2
  1481. rm16|32|64,reg16|32|64,reg_cl \321\2\x0F\xAD\101 386,SM
  1482. [SIDT,sidtX]
  1483. (Ch_Wop1, Ch_None, Ch_None)
  1484. mem \2\x0F\x01\201 286
  1485. [SLDT,sldtX]
  1486. (Ch_Wop1, Ch_None, Ch_None)
  1487. mem \2\x0F\x00\200 286
  1488. reg16|32|64 \320\2\x0F\x00\200 286
  1489. [SMI]
  1490. (Ch_All, Ch_None, Ch_None)
  1491. void \1\xF1 386,UNDOC
  1492. [SMINT]
  1493. (Ch_All, Ch_None, Ch_None)
  1494. void \2\x0F\x38 P6,CYRIX
  1495. [SMINTOLD]
  1496. (Ch_All, Ch_None, Ch_None)
  1497. void \2\x0F\x7E 486,CYRIX,ND
  1498. [SMSW,smswX]
  1499. (Ch_Wop1, Ch_None, Ch_None)
  1500. rm16|32|64 \320\2\x0F\x01\204 286
  1501. [STC]
  1502. (Ch_WFlags, Ch_None, Ch_None)
  1503. void \1\xF9 8086
  1504. [STD]
  1505. (Ch_SDirFlag, Ch_None, Ch_None)
  1506. void \1\xFD 8086
  1507. [STI]
  1508. (Ch_WFlags, Ch_None, Ch_None)
  1509. void \1\xFB 8086
  1510. [STOSB]
  1511. (Ch_REAX, Ch_WMemEDI, Ch_RWEDI)
  1512. void \1\xAA 8086
  1513. [STOSD,stosl]
  1514. (Ch_REAX, Ch_WMemEDI, Ch_RWEDI)
  1515. void \325\1\xAB 386
  1516. [STOSW]
  1517. (Ch_REAX, Ch_WMemEDI, Ch_RWEDI)
  1518. void \324\1\xAB 8086
  1519. [STR,strX]
  1520. (Ch_Wop1, Ch_None, Ch_None)
  1521. mem \2\x0F\x00\201 286,PROT
  1522. reg16|32|64 \320\2\x0F\x00\201 286,PROT
  1523. [SUB,subX]
  1524. (Ch_Mop2, Ch_Rop1, Ch_WFlags)
  1525. regmem,reg16|32|64 \320\1\x29\101 8086,SM
  1526. reg16|32|64,regmem \320\1\x2B\110 8086,SM
  1527. rm8,reg8 \1\x28\101 8086
  1528. reg8,rm8 \1\x2A\110 8086,SM
  1529. rm16|32|64,imm8 \320\1\x83\205\15 8086
  1530. reg_eax|64,imm \320\1\x2D\41 386,SD
  1531. rm32|64,imm \320\1\x81\205\41 8086,SD
  1532. reg_ax,imm \324\1\x2D\31 8086,SW
  1533. rm16,imm \324\1\x81\205\31 8086,SW
  1534. reg_al,imm \1\x2C\21 8086,SB
  1535. rm8,imm \1\x80\205\21 8086,SB
  1536. [SVDC,svdcX]
  1537. (Ch_All, Ch_None, Ch_None)
  1538. mem80,reg_sreg \2\x0F\x78\101 486,CYRIX,SMM
  1539. [SVLDT,svldtX]
  1540. (Ch_All, Ch_None, Ch_None)
  1541. mem80 \2\x0F\x7A\200 486,CYRIX,SMM
  1542. [SVTS,svtsX]
  1543. (Ch_All, Ch_None, Ch_None)
  1544. mem80 \2\x0F\x7C\200 486,CYRIX,SMM
  1545. [SYSCALL]
  1546. (Ch_All, Ch_None, Ch_None)
  1547. void \2\x0F\x05 P6,AMD
  1548. [SYSENTER]
  1549. (Ch_All, Ch_None, Ch_None)
  1550. void \2\x0F\x34 P6
  1551. [SYSEXIT]
  1552. (Ch_All, Ch_None, Ch_None)
  1553. void \2\x0F\x35 P6,PRIV
  1554. [SYSRET]
  1555. (Ch_All, Ch_None, Ch_None)
  1556. void \2\x0F\x07 P6,PRIV,AMD
  1557. [TEST,testX]
  1558. (Ch_WFlags, Ch_Rop1, Ch_Rop2)
  1559. regmem,reg16|32|64 \320\1\x85\101 8086,SM
  1560. reg16|32|64,mem \320\1\x85\110 8086,SM
  1561. reg8,reg8 \1\x84\101 8086
  1562. rm8,reg8 \1\x84\101 8086,SM
  1563. reg_eax,imm \325\1\xA9\41 386,SM
  1564. reg_ax,imm \324\1\xA9\31 8086,SM
  1565. reg_al,imm \1\xA8\21 8086,SM
  1566. rm32,imm \325\1\xF7\200\41 386,SM
  1567. rm16,imm \324\1\xF7\200\31 8086,SM
  1568. rm8,imm \1\xF6\200\21 8086,SM
  1569. mem,imm32 \325\1\xF7\200\41 386,SM
  1570. mem,imm16 \324\1\xF7\200\31 8086,SM
  1571. mem,imm8 \1\xF6\200\21 8086,SM
  1572. [UD1]
  1573. (Ch_All, Ch_None, Ch_None)
  1574. void \2\x0F\xB9 286,UNDOC
  1575. [UD2]
  1576. (Ch_All, Ch_None, Ch_None)
  1577. void \2\x0F\x0B 286
  1578. [UMOV,umovX]
  1579. (Ch_All, Ch_None, Ch_None)
  1580. regmem,reg16|32|64 \320\2\x0F\x11\101 386,UNDOC,SM
  1581. reg16|32|64,mem \320\2\x0F\x13\110 386,UNDOC,SM
  1582. rm8,reg8 \2\x0F\x10\101 386,UNDOC
  1583. reg8,rm8 \2\x0F\x12\110 386,UNDOC
  1584. [VERR,verrX]
  1585. (Ch_WFlags, Ch_None, Ch_None)
  1586. mem \2\x0F\x00\204 286,PROT
  1587. mem16 \2\x0F\x00\204 286,PROT
  1588. reg16 \2\x0F\x00\204 286,PROT
  1589. [VERW]
  1590. (Ch_WFlags, Ch_None, Ch_None)
  1591. mem \2\x0F\x00\205 286,PROT
  1592. mem16 \2\x0F\x00\205 286,PROT
  1593. reg16 \2\x0F\x00\205 286,PROT
  1594. [WAIT]
  1595. (Ch_None, Ch_None, Ch_None)
  1596. void \1\x9B 8086
  1597. [WBINVD]
  1598. (Ch_None, Ch_None, Ch_None)
  1599. void \2\x0F\x09 486,PRIV
  1600. [WRSHR]
  1601. (Ch_All, Ch_None, Ch_None)
  1602. void \2\x0F\x37 P6,CYRIX,SMM
  1603. [WRMSR]
  1604. (Ch_All, Ch_None, Ch_None)
  1605. void \2\x0F\x30 PENT,PRIV
  1606. [XADD,xaddX]
  1607. (Ch_All, Ch_None, Ch_None)
  1608. mem,reg16|32|64 \320\2\x0F\xC1\101 486,SM
  1609. rm8,reg8 \2\x0F\xC0\101 486
  1610. [XBTS,xbtsX]
  1611. (Ch_All, Ch_None, Ch_None)
  1612. reg16,mem \324\2\x0F\xA6\110 386,SW,UNDOC,ND
  1613. reg16,reg16 \324\2\x0F\xA6\110 386,UNDOC,ND
  1614. reg32,mem \325\2\x0F\xA6\110 386,SD,UNDOC,ND
  1615. reg32,reg32 \325\2\x0F\xA6\110 386,UNDOC,ND
  1616. [XCHG,xchgX]
  1617. (Ch_RWop1, Ch_RWop2, Ch_None)
  1618. reg_ax,reg16 \324\11\x90 8086
  1619. reg_eax,reg32 \325\11\x90 386
  1620. reg_rax,reg64 \326\11\x90 X86_64
  1621. reg16,reg_ax \324\10\x90 8086
  1622. reg32,reg_eax \325\10\x90 386
  1623. reg64,reg_rax \326\10\x90 X86_64
  1624. reg16|32|64,regmem \320\1\x87\110 8086,SM
  1625. mem,reg16|32|64 \320\1\x87\101 8086,SM
  1626. reg8,rm8 \1\x86\110 8086
  1627. mem8,reg8 \1\x86\101 8086
  1628. [XLAT]
  1629. (Ch_WEAX, Ch_REBX, Ch_None)
  1630. void \1\xD7 8086
  1631. [XLATB]
  1632. (Ch_WEAX, Ch_REBX, Ch_None)
  1633. void \1\xD7 8086
  1634. [XOR,xorX]
  1635. (Ch_Mop2, Ch_Rop1, Ch_WFlags)
  1636. regmem,reg16|32|64 \320\1\x31\101 8086,SM
  1637. reg16|32|64,regmem \320\1\x33\110 8086,SM
  1638. rm8,reg8 \1\x30\101 8086
  1639. reg8,rm8 \1\x32\110 8086
  1640. rm16|32|64,imm8 \320\1\x83\206\15 8086
  1641. reg_eax|64,imm \320\1\x35\41 386,SD
  1642. rm32|64,imm \320\1\x81\206\41 386,SD
  1643. reg_ax,imm \324\1\x35\31 8086,SW
  1644. rm16,imm \324\1\x81\206\31 8086,SW
  1645. reg_al,imm \1\x34\21 8086,SB
  1646. rm8,imm \1\x80\206\21 8086,SB
  1647. [XSTORE]
  1648. (Ch_All, Ch_None, Ch_None)
  1649. void \3\x0F\xA7\xC0 P6,CYRIX
  1650. [XCRYPTECB]
  1651. (Ch_All, Ch_None, Ch_None)
  1652. void \333\3\x0F\xA7\xC8 P6,CYRIX
  1653. [XCRYPTCBC]
  1654. (Ch_All, Ch_None, Ch_None)
  1655. void \333\3\x0F\xA7\xD0 P6,CYRIX
  1656. [XCRYPTCFB]
  1657. (Ch_All, Ch_None, Ch_None)
  1658. void \333\3\x0F\xA7\xE0 P6,CYRIX
  1659. [XCRYPTOFB]
  1660. (Ch_All, Ch_None, Ch_None)
  1661. void \333\3\x0F\xA7\xE8 P6,CYRIX
  1662. [CMOVcc,cmovCCX]
  1663. (Ch_ROp1, Ch_WOp2, Ch_RFLAGS)
  1664. reg16|32|64,regmem \320\1\x0F\13\x40\110 P6,SM
  1665. [Jcc]
  1666. (Ch_RFLAGS, Ch_None, Ch_None)
  1667. imm8 \13\x70\50 8086
  1668. imm16|32 \320\1\x0F\13\x80\64 386,PASS2
  1669. imm|short \13\x70\50 8086
  1670. imm|near \320\1\x0F\13\x80\64 386,PASS2
  1671. [SETcc,setCCX]
  1672. (Ch_RFLAGS, Ch_WOp1, Ch_None)
  1673. rm8 \1\x0F\13\x90\200 386
  1674. ;
  1675. ; Katmai Streaming SIMD instructions (SSE -- a.k.a. KNI, XMM, MMX2)
  1676. ;
  1677. [ADDPS]
  1678. (Ch_Mop2, Ch_Rop1, Ch_None)
  1679. xmmreg,xmmrm \331\2\x0F\x58\110 KATMAI,SSE
  1680. [ADDSS]
  1681. (Ch_Mop2, Ch_Rop1, Ch_None)
  1682. xmmreg,xmmrm \333\2\x0F\x58\110 KATMAI,SSE
  1683. [ANDNPS]
  1684. (Ch_Mop2, Ch_Rop1, Ch_None)
  1685. xmmreg,xmmrm \2\x0F\x55\110 KATMAI,SSE
  1686. [ANDPS]
  1687. (Ch_Mop2, Ch_Rop1, Ch_None)
  1688. xmmreg,xmmrm \2\x0F\x54\110 KATMAI,SSE
  1689. [CMPEQPS]
  1690. (Ch_All, Ch_None, Ch_None)
  1691. xmmreg,xmmrm \331\2\x0F\xC2\110\1\x00 KATMAI,SSE
  1692. [CMPEQSS]
  1693. (Ch_All, Ch_None, Ch_None)
  1694. xmmreg,xmmrm \333\2\x0F\xC2\110\1\x00 KATMAI,SSE
  1695. [CMPLEPS]
  1696. (Ch_All, Ch_None, Ch_None)
  1697. xmmreg,xmmrm \331\2\x0F\xC2\110\1\x02 KATMAI,SSE
  1698. [CMPLESS]
  1699. (Ch_All, Ch_None, Ch_None)
  1700. xmmreg,xmmrm \333\2\x0F\xC2\110\1\x02 KATMAI,SSE
  1701. [CMPLTPS]
  1702. (Ch_All, Ch_None, Ch_None)
  1703. xmmreg,xmmrm \331\2\x0F\xC2\110\1\x01 KATMAI,SSE
  1704. [CMPLTSS]
  1705. (Ch_All, Ch_None, Ch_None)
  1706. xmmreg,xmmrm \333\2\x0F\xC2\110\1\x01 KATMAI,SSE
  1707. [CMPNEQPS]
  1708. (Ch_All, Ch_None, Ch_None)
  1709. xmmreg,xmmrm \331\2\x0F\xC2\110\1\x04 KATMAI,SSE
  1710. [CMPNEQSS]
  1711. (Ch_All, Ch_None, Ch_None)
  1712. xmmreg,xmmrm \333\2\x0F\xC2\110\1\x04 KATMAI,SSE
  1713. [CMPNLEPS]
  1714. (Ch_All, Ch_None, Ch_None)
  1715. xmmreg,xmmrm \331\2\x0F\xC2\110\1\x06 KATMAI,SSE
  1716. [CMPNLESS]
  1717. (Ch_All, Ch_None, Ch_None)
  1718. xmmreg,xmmrm \333\2\x0F\xC2\110\1\x06 KATMAI,SSE
  1719. [CMPNLTPS]
  1720. (Ch_All, Ch_None, Ch_None)
  1721. xmmreg,xmmrm \331\2\x0F\xC2\110\1\x05 KATMAI,SSE
  1722. [CMPNLTSS]
  1723. (Ch_All, Ch_None, Ch_None)
  1724. xmmreg,xmmrm \333\2\x0F\xC2\110\1\x05 KATMAI,SSE
  1725. [CMPORDPS]
  1726. (Ch_All, Ch_None, Ch_None)
  1727. xmmreg,xmmrm \331\2\x0F\xC2\110\1\x07 KATMAI,SSE
  1728. [CMPORDSS]
  1729. (Ch_All, Ch_None, Ch_None)
  1730. xmmreg,xmmrm \333\2\x0F\xC2\110\1\x07 KATMAI,SSE
  1731. [CMPUNORDPS]
  1732. (Ch_All, Ch_None, Ch_None)
  1733. xmmreg,xmmrm \331\2\x0F\xC2\110\1\x03 KATMAI,SSE
  1734. [CMPUNORDSS]
  1735. (Ch_All, Ch_None, Ch_None)
  1736. xmmreg,xmmrm \333\2\x0F\xC2\110\1\x03 KATMAI,SSE
  1737. ;
  1738. ; CMPPS/CMPSS must come after the specific ops; that way the disassembler will find the
  1739. ; specific ops first and only disassemble illegal ones as cmpps.
  1740. ;
  1741. [CMPPS]
  1742. (Ch_All, Ch_None, Ch_None)
  1743. xmmreg,xmmrm,imm \331\2\x0F\xC2\110\22 KATMAI,SSE,SB,AR2
  1744. [CMPSS]
  1745. (Ch_All, Ch_None, Ch_None)
  1746. xmmreg,xmmrm,imm \333\2\x0F\xC2\110\22 KATMAI,SSE,SB,AR2
  1747. [COMISS]
  1748. (Ch_All, Ch_None, Ch_None)
  1749. xmmreg,xmmrm \2\x0F\x2F\110 KATMAI,SSE
  1750. [CVTPI2PS]
  1751. (Ch_Wop2, Ch_Rop1, Ch_None)
  1752. xmmreg,mem \331\2\x0F\x2A\110 KATMAI,SSE,MMX
  1753. xmmreg,mmxreg \331\2\x0F\x2A\110 KATMAI,SSE,MMX
  1754. [CVTPS2PI]
  1755. (Ch_Wop2, Ch_Rop1, Ch_None)
  1756. mmxreg,mem \331\2\x0F\x2D\110 KATMAI,SSE,MMX
  1757. mmxreg,xmmreg \331\2\x0F\x2D\110 KATMAI,SSE,MMX
  1758. [CVTSI2SS,cvtsi2ssX]
  1759. (Ch_Wop2, Ch_Rop1, Ch_None)
  1760. xmmreg,mem \333\321\2\x0F\x2A\110 KATMAI,SSE
  1761. xmmreg,reg32|64 \333\321\2\x0F\x2A\110 KATMAI,SSE
  1762. [CVTSS2SI,cvtss2siX]
  1763. (Ch_Wop2, Ch_Rop1, Ch_None)
  1764. reg32|64,mem \333\320\2\x0F\x2D\110 KATMAI,SSE
  1765. reg32|64,xmmreg \333\320\2\x0F\x2D\110 KATMAI,SSE
  1766. [CVTTPS2PI]
  1767. (Ch_Wop2, Ch_Rop1, Ch_None)
  1768. mmxreg,mem \331\2\x0F\x2C\110 KATMAI,SSE,MMX
  1769. mmxreg,xmmreg \331\2\x0F\x2C\110 KATMAI,SSE,MMX
  1770. [CVTTSS2SI,cvttss2siX]
  1771. (Ch_Wop2, Ch_Rop1, Ch_None)
  1772. reg32|64,mem \333\320\2\x0F\x2C\110 KATMAI,SSE
  1773. reg32|64,xmmreg \333\320\2\x0F\x2C\110 KATMAI,SSE
  1774. [DIVPS]
  1775. (Ch_Mop2, Ch_Rop1, Ch_None)
  1776. xmmreg,xmmrm \331\2\x0F\x5E\110 KATMAI,SSE
  1777. [DIVSS]
  1778. (Ch_Mop2, Ch_Rop1, Ch_None)
  1779. xmmreg,xmmrm \333\2\x0F\x5E\110 KATMAI,SSE
  1780. [LDMXCSR]
  1781. (Ch_All, Ch_None, Ch_None)
  1782. mem \2\x0F\xAE\202 KATMAI,SSE,SD
  1783. [MAXPS]
  1784. (Ch_All, Ch_None, Ch_None)
  1785. xmmreg,xmmrm \331\2\x0F\x5F\110 KATMAI,SSE
  1786. [MAXSS]
  1787. (Ch_All, Ch_None, Ch_None)
  1788. xmmreg,xmmrm \333\2\x0F\x5F\110 KATMAI,SSE
  1789. [MINPS]
  1790. (Ch_All, Ch_None, Ch_None)
  1791. xmmreg,xmmrm \331\2\x0F\x5D\110 KATMAI,SSE
  1792. [MINSS]
  1793. (Ch_All, Ch_None, Ch_None)
  1794. xmmreg,xmmrm \333\2\x0F\x5D\110 KATMAI,SSE
  1795. [MOVAPS]
  1796. (Ch_ROp1, Ch_WOp2, Ch_None)
  1797. xmmreg,xmmrm \2\x0F\x28\110 KATMAI,SSE
  1798. xmmrm,xmmreg \2\x0F\x29\101 KATMAI,SSE
  1799. [MOVHPS]
  1800. (Ch_All, Ch_None, Ch_None)
  1801. xmmreg,mem \2\x0F\x16\110 KATMAI,SSE
  1802. mem,xmmreg \2\x0F\x17\101 KATMAI,SSE
  1803. [MOVLHPS]
  1804. (Ch_All, Ch_None, Ch_None)
  1805. xmmreg,xmmreg \2\x0F\x16\110 KATMAI,SSE
  1806. [MOVLPS]
  1807. (Ch_All, Ch_None, Ch_None)
  1808. xmmreg,mem \2\x0F\x12\110 KATMAI,SSE
  1809. mem,xmmreg \2\x0F\x13\101 KATMAI,SSE
  1810. [MOVHLPS]
  1811. (Ch_All, Ch_None, Ch_None)
  1812. xmmreg,xmmreg \2\x0F\x12\110 KATMAI,SSE
  1813. [MOVMSKPS]
  1814. (Ch_All, Ch_None, Ch_None)
  1815. reg32,xmmreg \2\x0F\x50\110 KATMAI,SSE
  1816. [MOVNTPS]
  1817. (Ch_All, Ch_None, Ch_None)
  1818. mem,xmmreg \2\x0F\x2B\101 KATMAI,SSE
  1819. [MOVSS]
  1820. (Ch_Wop2, Ch_Rop1, Ch_None)
  1821. xmmreg,xmmrm \333\2\x0F\x10\110 KATMAI,SSE
  1822. xmmrm,xmmreg \333\2\x0F\x11\101 KATMAI,SSE
  1823. [MOVUPS]
  1824. (Ch_All, Ch_None, Ch_None)
  1825. xmmreg,xmmrm \331\2\x0F\x10\110 KATMAI,SSE
  1826. xmmrm,xmmreg \331\2\x0F\x11\101 KATMAI,SSE
  1827. [MULPS]
  1828. (Ch_Mop2, Ch_Rop1, Ch_None)
  1829. xmmreg,xmmrm \2\x0F\x59\110 KATMAI,SSE
  1830. [MULSS]
  1831. (Ch_Mop2, Ch_Rop1, Ch_None)
  1832. xmmreg,xmmrm \333\2\x0F\x59\110 KATMAI,SSE
  1833. [ORPS]
  1834. (Ch_Mop2, Ch_Rop1, Ch_None)
  1835. xmmreg,xmmrm \2\x0F\x56\110 KATMAI,SSE
  1836. [RCPPS]
  1837. (Ch_All, Ch_None, Ch_None)
  1838. xmmreg,xmmrm \331\2\x0F\x53\110 KATMAI,SSE
  1839. [RCPSS]
  1840. (Ch_All, Ch_None, Ch_None)
  1841. xmmreg,xmmrm \333\2\x0F\x53\110 KATMAI,SSE
  1842. [RSQRTPS]
  1843. (Ch_All, Ch_None, Ch_None)
  1844. xmmreg,xmmrm \331\2\x0F\x52\110 KATMAI,SSE
  1845. [RSQRTSS]
  1846. (Ch_All, Ch_None, Ch_None)
  1847. xmmreg,xmmrm \333\2\x0F\x52\110 KATMAI,SSE
  1848. [SHUFPS]
  1849. (Ch_All, Ch_None, Ch_None)
  1850. xmmreg,xmmrm,imm \2\x0F\xC6\110\22 KATMAI,SSE,SB,AR2
  1851. [SQRTPS]
  1852. (Ch_Mop2, Ch_Rop1, Ch_None)
  1853. xmmreg,xmmrm \331\2\x0F\x51\110 KATMAI,SSE
  1854. [SQRTSS]
  1855. (Ch_Mop2, Ch_Rop1, Ch_None)
  1856. xmmreg,xmmrm \333\2\x0F\x51\110 KATMAI,SSE
  1857. [STMXCSR]
  1858. (Ch_All, Ch_None, Ch_None)
  1859. mem \2\x0F\xAE\203 KATMAI,SSE,SD
  1860. [SUBPS]
  1861. (Ch_Mop2, Ch_Rop1, Ch_None)
  1862. xmmreg,xmmrm \331\2\x0F\x5C\110 KATMAI,SSE
  1863. [SUBSS]
  1864. (Ch_Mop2, Ch_Rop1, Ch_None)
  1865. xmmreg,xmmrm \333\2\x0F\x5C\110 KATMAI,SSE
  1866. [UCOMISS]
  1867. (Ch_All, Ch_None, Ch_None)
  1868. xmmreg,xmmrm \2\x0F\x2E\110 KATMAI,SSE
  1869. [UNPCKHPS]
  1870. (Ch_All, Ch_None, Ch_None)
  1871. xmmreg,xmmrm \2\x0F\x15\110 KATMAI,SSE
  1872. [UNPCKLPS]
  1873. (Ch_All, Ch_None, Ch_None)
  1874. xmmreg,xmmrm \2\x0F\x14\110 KATMAI,SSE
  1875. [XORPS]
  1876. (Ch_Mop2, Ch_Rop1, Ch_None)
  1877. xmmreg,xmmrm \2\x0F\x57\110 KATMAI,SSE
  1878. ;
  1879. ; Introduced in Dechutes but necessary for SSE support
  1880. ;
  1881. [FXRSTOR]
  1882. (Ch_All, Ch_None, Ch_None)
  1883. mem \2\x0F\xAE\201 P6,SSE,FPU
  1884. [FXSAVE]
  1885. (Ch_All, Ch_None, Ch_None)
  1886. mem \2\x0F\xAE\200 P6,SSE,FPU
  1887. ;
  1888. ; These instructions aren't SSE-specific; they are generic memory operations
  1889. ; and work even if CR4.OSFXFR == 0
  1890. ;
  1891. [PREFETCHNTA]
  1892. (Ch_All, Ch_None, Ch_None)
  1893. mem \2\x0F\x18\200 KATMAI
  1894. [PREFETCHT0]
  1895. (Ch_All, Ch_None, Ch_None)
  1896. mem \2\x0F\x18\201 KATMAI
  1897. [PREFETCHT1]
  1898. (Ch_All, Ch_None, Ch_None)
  1899. mem \2\x0F\x18\202 KATMAI
  1900. [PREFETCHT2]
  1901. (Ch_All, Ch_None, Ch_None)
  1902. mem \2\x0F\x18\203 KATMAI
  1903. [SFENCE]
  1904. (Ch_All, Ch_None, Ch_None)
  1905. void \3\x0F\xAE\xF8 KATMAI
  1906. ;
  1907. ; New MMX instructions introduced in Katmai
  1908. ;
  1909. [MASKMOVQ]
  1910. (Ch_All, Ch_None, Ch_None)
  1911. mmxreg,mmxreg \2\x0F\xF7\110 KATMAI,MMX
  1912. [MOVNTQ]
  1913. (Ch_All, Ch_None, Ch_None)
  1914. mem,mmxreg \2\x0F\xE7\101 KATMAI,MMX,SM
  1915. [PAVGB]
  1916. (Ch_All, Ch_None, Ch_None)
  1917. mmxreg,mmxrm \2\x0F\xE0\110 KATMAI,MMX,SM
  1918. xmmreg,xmmrm \361\2\x0F\xE0\110 WILLAMETTE,SSE2,SM
  1919. [PAVGW]
  1920. (Ch_All, Ch_None, Ch_None)
  1921. mmxreg,mmxrm \2\x0F\xE3\110 KATMAI,MMX,SM
  1922. xmmreg,xmmrm \361\2\x0F\xE3\110 WILLAMETTE,SSE2,SM
  1923. [PEXTRW]
  1924. (Ch_All, Ch_None, Ch_None)
  1925. reg32,mmxreg,imm \2\x0F\xC5\110\22 KATMAI,MMX,SB,AR2
  1926. reg32,xmmreg,imm \361\2\x0F\xC5\110\26 SSE41
  1927. mem32,xmmreg,imm \361\3\x0F\x3A\x15\101\26 SSE41
  1928. [PINSRW]
  1929. (Ch_All, Ch_None, Ch_None)
  1930. ; PINSRW is documented as using a reg32, but it's really using only 16 bit
  1931. ; -- accept either, but be truthful in disassembly
  1932. mmxreg,reg16,imm \2\x0F\xC4\110\22 KATMAI,MMX,SB,AR2
  1933. mmxreg,reg32,imm \2\x0F\xC4\110\22 KATMAI,MMX,SB,AR2,ND
  1934. mmxreg,mem,imm \2\x0F\xC4\110\22 KATMAI,MMX,SB,AR2
  1935. mmxreg,mem16,imm \2\x0F\xC4\110\22 KATMAI,MMX,SB,AR2,ND
  1936. xmmreg,reg16,imm \361\2\x0F\xC4\110\26 WILLAMETTE,SSE2,SB,AR2
  1937. xmmreg,reg32,imm \361\2\x0F\xC4\110\26 WILLAMETTE,SSE2,SB,AR2,ND
  1938. xmmreg,mem,imm \361\2\x0F\xC4\110\26 WILLAMETTE,SSE2,SB,AR2
  1939. xmmreg,mem16,imm \361\2\x0F\xC4\110\26 WILLAMETTE,SSE2,SB,AR2,ND
  1940. [PMAXSW]
  1941. (Ch_All, Ch_None, Ch_None)
  1942. mmxreg,mmxrm \2\x0F\xEE\110 KATMAI,MMX,SM
  1943. xmmreg,xmmrm \361\2\x0F\xEE\110 WILLAMETTE,SSE2,SM
  1944. [PMAXUB]
  1945. (Ch_All, Ch_None, Ch_None)
  1946. mmxreg,mmxrm \2\x0F\xDE\110 KATMAI,MMX,SM
  1947. xmmreg,xmmrm \361\2\x0F\xDE\110 WILLAMETTE,SSE2,SM
  1948. [PMINSW]
  1949. (Ch_All, Ch_None, Ch_None)
  1950. mmxreg,mmxrm \2\x0F\xEA\110 KATMAI,MMX,SM
  1951. xmmreg,xmmrm \361\2\x0F\xEA\110 WILLAMETTE,SSE2,SM
  1952. [PMINUB]
  1953. (Ch_All, Ch_None, Ch_None)
  1954. mmxreg,mmxrm \2\x0F\xDA\110 KATMAI,MMX,SM
  1955. xmmreg,xmmrm \361\2\x0F\xDA\110 WILLAMETTE,SSE2,SM
  1956. [PMOVMSKB]
  1957. (Ch_All, Ch_None, Ch_None)
  1958. reg32,mmxreg \2\x0F\xD7\110 KATMAI,MMX
  1959. reg32,xmmreg \361\2\x0F\xD7\110 WILLAMETTE,SSE2
  1960. [PMULHUW]
  1961. (Ch_All, Ch_None, Ch_None)
  1962. mmxreg,mmxrm \2\x0F\xE4\110 KATMAI,MMX,SM
  1963. xmmreg,xmmrm \361\2\x0F\xE4\110 WILLAMETTE,SSE2,SM
  1964. [PSADBW]
  1965. (Ch_All, Ch_None, Ch_None)
  1966. mmxreg,mmxrm \2\x0F\xF6\110 KATMAI,MMX,SM
  1967. xmmreg,xmmrm \361\2\x0F\xF6\110 WILLAMETTE,SSE2,SM
  1968. [PSHUFW]
  1969. (Ch_All, Ch_None, Ch_None)
  1970. mmxreg,mmxrm,imm \2\x0F\x70\110\22 KATMAI,MMX,SM2,SB,AR2
  1971. ;
  1972. ; New Athlon Instructions
  1973. ;
  1974. [PFNACC]
  1975. (Ch_All, Ch_None, Ch_None)
  1976. mmxreg,mem \2\x0F\x0F\110\01\x8A PENT,3DNOW,SM
  1977. mmxreg,mmxreg \2\x0F\x0F\110\01\x8A PENT,3DNOW
  1978. [PFPNACC]
  1979. (Ch_All, Ch_None, Ch_None)
  1980. mmxreg,mem \2\x0F\x0F\110\01\x8E PENT,3DNOW,SM
  1981. mmxreg,mmxreg \2\x0F\x0F\110\01\x8E PENT,3DNOW
  1982. [PI2FW]
  1983. (Ch_All, Ch_None, Ch_None)
  1984. mmxreg,mem \2\x0F\x0F\110\01\x0C PENT,3DNOW,SM
  1985. mmxreg,mmxreg \2\x0F\x0F\110\01\x0C PENT,3DNOW
  1986. [PF2IW]
  1987. (Ch_All, Ch_None, Ch_None)
  1988. mmxreg,mem \2\x0F\x0F\110\01\x1C PENT,3DNOW,SM
  1989. mmxreg,mmxreg \2\x0F\x0F\110\01\x1C PENT,3DNOW
  1990. [PSWAPD]
  1991. (Ch_All, Ch_None, Ch_None)
  1992. mmxreg,mem \2\x0F\x0F\110\01\xBB PENT,3DNOW,SM
  1993. mmxreg,mmxreg \2\x0F\x0F\110\01\xBB PENT,3DNOW,SM
  1994. [FFREEP]
  1995. (Ch_All, Ch_None, Ch_None)
  1996. fpureg \1\xDF\10\xC0 PENT,3DNOW,FPU
  1997. ; Willamette SSE2 Cacheability Instructions
  1998. [MASKMOVDQU]
  1999. (Ch_All, Ch_None, Ch_None)
  2000. xmmreg,xmmreg \361\2\x0F\xF7\110 WILLAMETTE,SSE2
  2001. ; CLFLUSH needs its own feature flag implemented one day
  2002. [CLFLUSH]
  2003. (Ch_All, Ch_None, Ch_None)
  2004. mem \2\x0F\xAE\207 WILLAMETTE,SSE2
  2005. [MOVNTDQ]
  2006. (Ch_All, Ch_None, Ch_None)
  2007. mem,xmmreg \361\2\x0F\xE7\101 WILLAMETTE,SSE2,SM
  2008. [MOVNTI,movntiX]
  2009. (Ch_All, Ch_None, Ch_None)
  2010. mem,reg32|64 \320\2\x0F\xC3\101 WILLAMETTE,SSE2,SM
  2011. [MOVNTPD]
  2012. (Ch_All, Ch_None, Ch_None)
  2013. mem,xmmreg \361\2\x0F\x2B\101 WILLAMETTE,SSE2,SM
  2014. [PAUSE]
  2015. (Ch_All, Ch_None, Ch_None)
  2016. void \333\1\x90 WILLAMETTE,SSE2
  2017. [LFENCE]
  2018. (Ch_All, Ch_None, Ch_None)
  2019. void \3\x0F\xAE\xE8 WILLAMETTE,SSE2
  2020. [MFENCE]
  2021. (Ch_All, Ch_None, Ch_None)
  2022. void \3\x0F\xAE\xF0 WILLAMETTE,SSE2
  2023. ;
  2024. ; Willamette MMX instructions (SSE2 SIMD Integer Instructions)
  2025. ;
  2026. [MOVDQA]
  2027. (Ch_All, Ch_None, Ch_None)
  2028. xmmrm,xmmreg \361\2\x0F\x7F\101 WILLAMETTE,SSE2,SM
  2029. xmmreg,xmmrm \361\2\x0F\x6F\110 WILLAMETTE,SSE2,SM
  2030. [MOVDQU]
  2031. (Ch_All, Ch_None, Ch_None)
  2032. xmmrm,xmmreg \333\2\x0F\x7F\101 WILLAMETTE,SSE2,SM
  2033. xmmreg,xmmrm \333\2\x0F\x6F\110 WILLAMETTE,SSE2,SM
  2034. [MOVDQ2Q]
  2035. (Ch_All, Ch_None, Ch_None)
  2036. mmxreg,xmmreg \334\2\x0F\xD6\110 WILLAMETTE,SSE2
  2037. [MOVQ2DQ]
  2038. (Ch_All, Ch_None, Ch_None)
  2039. xmmreg,mmxreg \333\2\x0F\xD6\110 WILLAMETTE,SSE2
  2040. [PADDQ]
  2041. (Ch_All, Ch_None, Ch_None)
  2042. mmxreg,mmxrm \2\x0F\xD4\110 WILLAMETTE,SSE2,SM
  2043. xmmreg,xmmrm \361\2\x0F\xD4\110 WILLAMETTE,SSE2,SM
  2044. [PMULUDQ]
  2045. (Ch_All, Ch_None, Ch_None)
  2046. mmxreg,mmxrm \2\x0F\xF4\110 WILLAMETTE,SSE2,SM
  2047. xmmreg,xmmrm \361\2\x0F\xF4\110 WILLAMETTE,SSE2,SM
  2048. [PSHUFD]
  2049. (Ch_All, Ch_None, Ch_None)
  2050. xmmreg,xmmrm,imm \361\2\x0F\x70\110\22 WILLAMETTE,SSE2,SM2,SB,AR2
  2051. [PSHUFHW]
  2052. (Ch_All, Ch_None, Ch_None)
  2053. xmmreg,xmmrm,imm \333\2\x0F\x70\110\22 WILLAMETTE,SSE2,SM2,SB,AR2
  2054. [PSHUFLW]
  2055. (Ch_All, Ch_None, Ch_None)
  2056. xmmreg,xmmrm,imm \334\2\x0F\x70\110\22 WILLAMETTE,SSE2,SM2,SB,AR2
  2057. [PSRLDQ]
  2058. (Ch_All, Ch_None, Ch_None)
  2059. xmmreg,imm \361\2\x0F\x73\203\25 WILLAMETTE,SSE2,SB,AR1
  2060. [PSUBQ]
  2061. (Ch_All, Ch_None, Ch_None)
  2062. mmxreg,mmxrm \2\x0F\xFB\110 WILLAMETTE,SSE2,SM
  2063. xmmreg,xmmrm \361\2\x0F\xFB\110 WILLAMETTE,SSE2,SM
  2064. [PUNPCKHQDQ]
  2065. (Ch_All, Ch_None, Ch_None)
  2066. xmmreg,xmmrm \361\2\x0F\x6D\110 WILLAMETTE,SSE2,SM
  2067. [PUNPCKLQDQ]
  2068. (Ch_All, Ch_None, Ch_None)
  2069. xmmreg,xmmrm \361\2\x0F\x6C\110 WILLAMETTE,SSE2,SM
  2070. ;
  2071. ; Willamette Streaming SIMD instructions (SSE2)
  2072. ;
  2073. [ADDPD]
  2074. (Ch_Mop2, Ch_Rop1, Ch_None)
  2075. xmmreg,xmmrm \361\2\x0F\x58\110 WILLAMETTE,SSE2,SM
  2076. [ADDSD]
  2077. (Ch_Mop2, Ch_Rop1, Ch_None)
  2078. xmmreg,xmmrm \334\2\x0F\x58\110 WILLAMETTE,SSE2
  2079. [ANDNPD]
  2080. (Ch_Mop2, Ch_Rop1, Ch_None)
  2081. xmmreg,xmmrm \361\2\x0F\x55\110 WILLAMETTE,SSE2,SM
  2082. [ANDPD]
  2083. (Ch_Mop2, Ch_Rop1, Ch_None)
  2084. xmmreg,xmmrm \361\2\x0F\x54\110 WILLAMETTE,SSE2,SM
  2085. [CMPEQPD]
  2086. (Ch_All, Ch_None, Ch_None)
  2087. xmmreg,xmmrm \361\2\x0F\xC2\110\1\x00 WILLAMETTE,SSE2,SM
  2088. ; note: no SM flag on CMPxxSD, they use 64-bit memory location, not 128-bit
  2089. [CMPEQSD]
  2090. (Ch_All, Ch_None, Ch_None)
  2091. xmmreg,xmmrm \334\2\x0F\xC2\110\1\x00 WILLAMETTE,SSE2
  2092. [CMPLEPD]
  2093. (Ch_All, Ch_None, Ch_None)
  2094. xmmreg,xmmrm \361\2\x0F\xC2\110\1\x02 WILLAMETTE,SSE2,SM
  2095. [CMPLESD]
  2096. (Ch_All, Ch_None, Ch_None)
  2097. xmmreg,xmmrm \334\2\x0F\xC2\110\1\x02 WILLAMETTE,SSE2
  2098. [CMPLTPD]
  2099. (Ch_All, Ch_None, Ch_None)
  2100. xmmreg,xmmrm \361\2\x0F\xC2\110\1\x01 WILLAMETTE,SSE2,SM
  2101. [CMPLTSD]
  2102. (Ch_All, Ch_None, Ch_None)
  2103. xmmreg,xmmrm \334\2\x0F\xC2\110\1\x01 WILLAMETTE,SSE2
  2104. [CMPNEQPD]
  2105. (Ch_All, Ch_None, Ch_None)
  2106. xmmreg,xmmrm \361\2\x0F\xC2\110\1\x04 WILLAMETTE,SSE2,SM
  2107. [CMPNEQSD]
  2108. (Ch_All, Ch_None, Ch_None)
  2109. xmmreg,xmmrm \334\2\x0F\xC2\110\1\x04 WILLAMETTE,SSE2
  2110. [CMPNLEPD]
  2111. (Ch_All, Ch_None, Ch_None)
  2112. xmmreg,xmmrm \361\2\x0F\xC2\110\1\x06 WILLAMETTE,SSE2,SM
  2113. [CMPNLESD]
  2114. (Ch_All, Ch_None, Ch_None)
  2115. xmmreg,xmmrm \334\2\x0F\xC2\110\1\x06 WILLAMETTE,SSE2
  2116. [CMPNLTPD]
  2117. (Ch_All, Ch_None, Ch_None)
  2118. xmmreg,xmmrm \361\2\x0F\xC2\110\1\x05 WILLAMETTE,SSE2,SM
  2119. [CMPNLTSD]
  2120. (Ch_All, Ch_None, Ch_None)
  2121. xmmreg,xmmrm \334\2\x0F\xC2\110\1\x05 WILLAMETTE,SSE2
  2122. [CMPORDPD]
  2123. (Ch_All, Ch_None, Ch_None)
  2124. xmmreg,xmmrm \361\2\x0F\xC2\110\1\x07 WILLAMETTE,SSE2,SM
  2125. [CMPORDSD]
  2126. (Ch_All, Ch_None, Ch_None)
  2127. xmmreg,xmmrm \334\2\x0F\xC2\110\1\x07 WILLAMETTE,SSE2
  2128. [CMPUNORDPD]
  2129. (Ch_All, Ch_None, Ch_None)
  2130. xmmreg,xmmrm \361\2\x0F\xC2\110\1\x03 WILLAMETTE,SSE2,SM
  2131. [CMPUNORDSD]
  2132. (Ch_All, Ch_None, Ch_None)
  2133. xmmreg,xmmrm \334\2\x0F\xC2\110\1\x03 WILLAMETTE,SSE2
  2134. ; CMPPD/CMPSD must come after the specific ops; that way the disassembler will find the
  2135. ; specific ops first and only disassemble illegal ones as cmppd/cmpsd.
  2136. [CMPPD]
  2137. (Ch_All, Ch_None, Ch_None)
  2138. xmmreg,xmmrm,imm \361\2\x0F\xC2\110\26 WILLAMETTE,SSE2,SM2,SB,AR2
  2139. [COMISD]
  2140. (Ch_All, Ch_None, Ch_None)
  2141. xmmreg,xmmrm \361\2\x0F\x2F\110 WILLAMETTE,SSE2
  2142. [CVTDQ2PD]
  2143. (Ch_Wop2, Ch_Rop1, Ch_None)
  2144. xmmreg,xmmrm \333\2\x0F\xE6\110 WILLAMETTE,SSE2
  2145. [CVTDQ2PS]
  2146. (Ch_Wop2, Ch_Rop1, Ch_None)
  2147. xmmreg,xmmrm \2\x0F\x5B\110 WILLAMETTE,SSE2,SM
  2148. [CVTPD2DQ]
  2149. (Ch_Wop2, Ch_Rop1, Ch_None)
  2150. xmmreg,xmmrm \334\2\x0F\xE6\110 WILLAMETTE,SSE2,SM
  2151. [CVTPD2PI]
  2152. (Ch_Wop2, Ch_Rop1, Ch_None)
  2153. mmxreg,xmmrm \361\2\x0F\x2D\110 WILLAMETTE,SSE2 ;,SO
  2154. [CVTPD2PS]
  2155. (Ch_Wop2, Ch_Rop1, Ch_None)
  2156. xmmreg,xmmrm \361\2\x0F\x5A\110 WILLAMETTE,SSE2,SM
  2157. [CVTPI2PD]
  2158. (Ch_Wop2, Ch_Rop1, Ch_None)
  2159. xmmreg,mmxrm \361\2\x0F\x2A\110 WILLAMETTE,SSE2 ;,SO
  2160. [CVTPS2DQ]
  2161. (Ch_Wop2, Ch_Rop1, Ch_None)
  2162. xmmreg,xmmrm \361\2\x0F\x5B\110 WILLAMETTE,SSE2,SM
  2163. [CVTPS2PD]
  2164. (Ch_Wop2, Ch_Rop1, Ch_None)
  2165. xmmreg,xmmrm \2\x0F\x5A\110 WILLAMETTE,SSE2 ;,SQ
  2166. [CVTSD2SI,cvtsd2siX]
  2167. (Ch_Wop2, Ch_Rop1, Ch_None)
  2168. reg32|64,xmmreg \334\320\2\x0F\x2D\110 WILLAMETTE,SSE2
  2169. reg32|64,mem \334\320\2\x0F\x2D\110 WILLAMETTE,SSE2
  2170. [CVTSD2SS]
  2171. (Ch_Wop2, Ch_Rop1, Ch_None)
  2172. xmmreg,xmmrm \334\2\x0F\x5A\110 WILLAMETTE,SSE2 ;,SQ
  2173. [CVTSI2SD,cvtsi2sdX]
  2174. (Ch_Wop2, Ch_Rop1, Ch_None)
  2175. xmmreg,reg32|64 \334\321\2\x0F\x2A\110 WILLAMETTE,SSE2
  2176. xmmreg,mem \334\321\2\x0F\x2A\110 WILLAMETTE,SSE2
  2177. [CVTSS2SD]
  2178. (Ch_Wop2, Ch_Rop1, Ch_None)
  2179. xmmreg,xmmrm \333\2\x0F\x5A\110 WILLAMETTE,SSE2 ;,SD
  2180. [CVTTPD2PI]
  2181. (Ch_Wop2, Ch_Rop1, Ch_None)
  2182. mmxreg,xmmreg \361\2\x0F\x2C\110 WILLAMETTE,SSE2
  2183. mmxreg,mem \361\2\x0F\x2C\110 WILLAMETTE,SSE2
  2184. [CVTTPD2DQ]
  2185. (Ch_Wop2, Ch_Rop1, Ch_None)
  2186. xmmreg,xmmrm \361\2\x0F\xE6\110 WILLAMETTE,SSE2,SM
  2187. [CVTTPS2DQ]
  2188. (Ch_Wop2, Ch_Rop1, Ch_None)
  2189. xmmreg,xmmrm \333\2\x0F\x5B\110 WILLAMETTE,SSE2,SM
  2190. [CVTTSD2SI,cvttsd2siX]
  2191. (Ch_Wop2, Ch_Rop1, Ch_None)
  2192. reg32|64,xmmreg \334\320\2\x0F\x2C\110 WILLAMETTE,SSE2
  2193. reg32|64,mem \334\320\2\x0F\x2C\110 WILLAMETTE,SSE2
  2194. [DIVPD]
  2195. (Ch_Mop2, Ch_Rop1, Ch_None)
  2196. xmmreg,xmmrm \361\2\x0F\x5E\110 WILLAMETTE,SSE2,SM
  2197. [DIVSD]
  2198. (Ch_Mop2, Ch_Rop1, Ch_None)
  2199. xmmreg,xmmrm \334\2\x0F\x5E\110 WILLAMETTE,SSE2
  2200. [MAXPD]
  2201. (Ch_All, Ch_None, Ch_None)
  2202. xmmreg,xmmrm \361\2\x0F\x5F\110 WILLAMETTE,SSE2,SM
  2203. [MAXSD]
  2204. (Ch_All, Ch_None, Ch_None)
  2205. xmmreg,xmmrm \334\2\x0F\x5F\110 WILLAMETTE,SSE2
  2206. [MINPD]
  2207. (Ch_All, Ch_None, Ch_None)
  2208. xmmreg,xmmrm \361\2\x0F\x5D\110 WILLAMETTE,SSE2,SM
  2209. [MINSD]
  2210. (Ch_All, Ch_None, Ch_None)
  2211. xmmreg,xmmrm \334\2\x0F\x5D\110 WILLAMETTE,SSE2
  2212. [MOVAPD]
  2213. (Ch_ROp1, Ch_WOp2, Ch_None)
  2214. xmmrm,xmmreg \361\2\x0F\x29\101 WILLAMETTE,SSE2,SM
  2215. xmmreg,xmmrm \361\2\x0F\x28\110 WILLAMETTE,SSE2,SM
  2216. [MOVHPD]
  2217. (Ch_All, Ch_None, Ch_None)
  2218. mem,xmmreg \361\2\x0F\x17\101 WILLAMETTE,SSE2
  2219. xmmreg,mem \361\2\x0F\x16\110 WILLAMETTE,SSE2
  2220. [MOVLPD]
  2221. (Ch_All, Ch_None, Ch_None)
  2222. mem,xmmreg \361\2\x0F\x13\101 WILLAMETTE,SSE2
  2223. xmmreg,mem \361\2\x0F\x12\110 WILLAMETTE,SSE2
  2224. [MOVMSKPD]
  2225. (Ch_All, Ch_None, Ch_None)
  2226. reg32,xmmreg \361\2\x0F\x50\110 WILLAMETTE,SSE2
  2227. [MOVUPD]
  2228. (Ch_All, Ch_None, Ch_None)
  2229. xmmrm,xmmreg \361\2\x0F\x11\101 WILLAMETTE,SSE2,SM
  2230. xmmreg,xmmrm \361\2\x0F\x10\110 WILLAMETTE,SSE2,SM
  2231. [MULPD]
  2232. (Ch_Mop2, Ch_Rop1, Ch_None)
  2233. xmmreg,xmmrm \361\2\x0F\x59\110 WILLAMETTE,SSE2,SM
  2234. [MULSD]
  2235. (Ch_Mop2, Ch_Rop1, Ch_None)
  2236. xmmreg,xmmrm \334\2\x0F\x59\110 WILLAMETTE,SSE2
  2237. [ORPD]
  2238. (Ch_Mop2, Ch_Rop1, Ch_None)
  2239. xmmreg,xmmrm \361\2\x0F\x56\110 WILLAMETTE,SSE2,SM
  2240. [SHUFPD]
  2241. (Ch_All, Ch_None, Ch_None)
  2242. xmmreg,xmmrm,imm \361\2\x0F\xC6\110\26 WILLAMETTE,SSE2,SM2,SB,AR2
  2243. [SQRTPD]
  2244. (Ch_Mop2, Ch_Rop1, Ch_None)
  2245. xmmreg,xmmrm \361\2\x0F\x51\110 WILLAMETTE,SSE2,SM
  2246. [SQRTSD]
  2247. (Ch_Mop2, Ch_Rop1, Ch_None)
  2248. xmmreg,xmmrm \334\2\x0F\x51\110 WILLAMETTE,SSE2
  2249. [SUBPD]
  2250. (Ch_Mop2, Ch_Rop1, Ch_None)
  2251. xmmreg,xmmrm \361\2\x0F\x5C\110 WILLAMETTE,SSE2,SM
  2252. [SUBSD]
  2253. (Ch_Mop2, Ch_Rop1, Ch_None)
  2254. xmmreg,xmmrm \334\2\x0F\x5C\110 WILLAMETTE,SSE2
  2255. [UCOMISD]
  2256. (Ch_All, Ch_None, Ch_None)
  2257. xmmreg,xmmrm \361\2\x0F\x2E\110 WILLAMETTE,SSE2
  2258. [UNPCKHPD]
  2259. (Ch_All, Ch_None, Ch_None)
  2260. xmmreg,xmmrm \361\2\x0F\x15\110 WILLAMETTE,SSE2,SM
  2261. [UNPCKLPD]
  2262. (Ch_All, Ch_None, Ch_None)
  2263. xmmreg,xmmrm \361\2\x0F\x14\110 WILLAMETTE,SSE2,SM
  2264. [XORPD]
  2265. (Ch_Mop2, Ch_Rop1, Ch_None)
  2266. xmmreg,xmmrm \361\2\x0F\x57\110 WILLAMETTE,SSE2,SM
  2267. ;
  2268. ; Prescott New Instructions (SSE3)
  2269. ;
  2270. [ADDSUBPD]
  2271. (Ch_All, Ch_None, Ch_None)
  2272. xmmreg,xmmrm \361\2\x0F\xD0\110 PRESCOTT,SSE3,SM
  2273. [ADDSUBPS]
  2274. (Ch_All, Ch_None, Ch_None)
  2275. xmmreg,xmmrm \334\2\x0F\xD0\110 PRESCOTT,SSE3,SM
  2276. [HADDPD]
  2277. (Ch_All, Ch_None, Ch_None)
  2278. xmmreg,xmmrm \361\2\x0F\x7C\110 PRESCOTT,SSE3,SM
  2279. [HADDPS]
  2280. (Ch_All, Ch_None, Ch_None)
  2281. xmmreg,xmmrm \334\2\x0F\x7C\110 PRESCOTT,SSE3,SM
  2282. [HSUBPD]
  2283. (Ch_All, Ch_None, Ch_None)
  2284. xmmreg,xmmrm \361\2\x0F\x7D\110 PRESCOTT,SSE3,SM
  2285. [HSUBPS]
  2286. (Ch_All, Ch_None, Ch_None)
  2287. xmmreg,xmmrm \334\2\x0F\x7D\110 PRESCOTT,SSE3,SM
  2288. [LDDQU]
  2289. (Ch_All, Ch_None, Ch_None)
  2290. xmmreg,mem \334\2\x0F\xF0\110 PRESCOTT,SSE3
  2291. [MOVDDUP]
  2292. (Ch_All, Ch_None, Ch_None)
  2293. xmmreg,xmmrm \334\2\x0F\x12\110 PRESCOTT,SSE3
  2294. [MOVSHDUP]
  2295. (Ch_All, Ch_None, Ch_None)
  2296. xmmreg,xmmrm \333\2\x0F\x16\110 PRESCOTT,SSE3,SM
  2297. [MOVSLDUP]
  2298. (Ch_All, Ch_None, Ch_None)
  2299. xmmreg,xmmrm \333\2\x0F\x12\110 PRESCOTT,SSE3,SM
  2300. ;
  2301. ; Intel VT
  2302. ;
  2303. [VMREAD]
  2304. (Ch_All, Ch_None, Ch_None)
  2305. reg32,reg32 \2\x0F\x78\101 386,PRIV,PROT
  2306. mem,reg32 \2\x0F\x78\101 386,PRIV,PROT,SM
  2307. [VMWRITE]
  2308. (Ch_All, Ch_None, Ch_None)
  2309. reg32,reg32 \2\x0F\x79\110 386,PRIV,PROT
  2310. reg32,mem \2\x0F\x79\110 386,PRIV,PROT,SM
  2311. [VMCALL]
  2312. (Ch_All, Ch_None, Ch_None)
  2313. void \3\x0F\x01\xC1 386,PRIV,PROT
  2314. [VMLAUNCH]
  2315. (Ch_All, Ch_None, Ch_None)
  2316. void \3\x0F\x01\xC2 386,PRIV,PROT
  2317. [VMRESUME]
  2318. (Ch_All, Ch_None, Ch_None)
  2319. void \3\x0F\x01\xC3 386,PRIV,PROT
  2320. [VMXOFF]
  2321. (Ch_All, Ch_None, Ch_None)
  2322. void \3\x0F\x01\xC4 386,PRIV,PROT
  2323. ; note: ideally the following should be tagged with SQ
  2324. [VMXON]
  2325. (Ch_All, Ch_None, Ch_None)
  2326. mem \333\2\x0F\xC7\206 PRIV,PROT
  2327. [VMCLEAR]
  2328. (Ch_All, Ch_None, Ch_None)
  2329. mem \361\2\x0F\xC7\206 PRIV,PROT
  2330. [VMPTRLD]
  2331. (Ch_All, Ch_None, Ch_None)
  2332. mem \2\x0F\xC7\206 PRIV,PROT
  2333. [VMPTRST]
  2334. (Ch_All, Ch_None, Ch_None)
  2335. mem \2\x0F\xC7\207 PRIV,PROT
  2336. ;
  2337. ; AMD SVM
  2338. ;
  2339. [VMRUN]
  2340. (Ch_All, Ch_None, Ch_None)
  2341. void \3\x0F\x01\xD8 386,SVM,PRIV,PROT
  2342. [VMMCALL]
  2343. (Ch_All, Ch_None, Ch_None)
  2344. void \3\x0F\x01\xD9 386,SVM
  2345. [VMLOAD]
  2346. (Ch_All, Ch_None, Ch_None)
  2347. void \3\x0F\x01\xDA 386,SVM,PRIV,PROT
  2348. [VMSAVE]
  2349. (Ch_All, Ch_None, Ch_None)
  2350. void \3\x0F\x01\xDB 386,SVM,PRIV,PROT
  2351. [STGI]
  2352. (Ch_All, Ch_None, Ch_None)
  2353. void \3\x0F\x01\xDC 386,SVM,PRIV,PROT
  2354. [CLGI]
  2355. (Ch_All, Ch_None, Ch_None)
  2356. void \3\x0F\x01\xDD 386,SVM,PRIV,PROT
  2357. [SKINIT]
  2358. (Ch_All, Ch_None, Ch_None)
  2359. void \3\x0F\x01\xDE 386,SVM,PRIV,PROT
  2360. [INVLPGA]
  2361. (Ch_All, Ch_None, Ch_None)
  2362. void \3\x0F\x01\xDF 386,SVM,PRIV,PROT
  2363. ;
  2364. ; Centaur
  2365. ;
  2366. [MONTMUL]
  2367. (Ch_All, Ch_None, Ch_None)
  2368. void \333\3\x0F\xA6\xC0 CENTAUR
  2369. [XSHA1]
  2370. (Ch_All, Ch_None, Ch_None)
  2371. void \333\3\x0F\xA6\xC8 CENTAUR
  2372. [XSHA256]
  2373. (Ch_All, Ch_None, Ch_None)
  2374. void \333\3\x0F\xA6\xD0 CENTAUR
  2375. ;
  2376. ; Geode
  2377. ;
  2378. [DMINT]
  2379. (Ch_All, Ch_None, Ch_None)
  2380. void \2\x0F\x39 P6,CYRIX
  2381. [RDM]
  2382. (Ch_All, Ch_None, Ch_None)
  2383. void \2\x0F\x3A P6,CYRIX
  2384. ;
  2385. ; GAS specific x86-64 instructions
  2386. ;
  2387. [MOVABS]
  2388. (Ch_Wop2, Ch_Rop1, Ch_None)
  2389. reg32,imm \325\10\xB8\41 X86_64
  2390. [MOVSXD,movslq]
  2391. (Ch_Wop2, Ch_Rop1, Ch_None)
  2392. reg64,mem \326\1\x63\110 X86_64
  2393. reg64,reg32 \326\1\x63\110 X86_64
  2394. [CQO,cqto]
  2395. (Ch_MRAX, Ch_WRDX, Ch_None)
  2396. void \326\1\x99 X86_64
  2397. [CMPXCHG16B,cmpxchg16bX]
  2398. (Ch_All, Ch_None, Ch_None)
  2399. mem \326\2\x0F\xC7\201 X86_64
  2400. ;
  2401. ; SSE4a (AMD Barcelona CPUs, n/a on Intel)
  2402. ;
  2403. ; note: \333=F3h, \334=F2h, \336=66h, \325=no REX.W=1 for qword, \375=unsigned
  2404. [MOVNTSS]
  2405. (Ch_All, Ch_None, Ch_None)
  2406. mem,xmmreg \333\2\x0F\x2B\101 SSE4,SD
  2407. [MOVNTSD]
  2408. (Ch_All, Ch_None, Ch_None)
  2409. mem,xmmreg \334\325\2\x0F\x2B\101 SSE4 ;,SQ
  2410. [INSERTQ]
  2411. (Ch_All, Ch_None, Ch_None)
  2412. xmmreg,xmmreg \334\2\x0F\x79\110 SSE4
  2413. ; four operands are not possible yet
  2414. ; xmmreg,xmmreg,imm,imm \110\334\76\2\x0F\x78\77\375\22\375\23 SSE4,SB
  2415. [EXTRQ]
  2416. (Ch_All, Ch_None, Ch_None)
  2417. xmmreg,imm,imm \361\2\x0F\x78\200\375\21\375\22 SSE4,SB
  2418. xmmreg,xmmreg \361\2\x0F\x79\110 SSE4
  2419. [LZCNT,lzcntX]
  2420. (Ch_All, Ch_None, Ch_None)
  2421. reg16,regmem \320\333\2\x0F\xBD\110 386,SM,SSE4
  2422. reg32|64,regmem \321\333\2\x0F\xBD\110 386,SM,SSE4
  2423. ;*******************************************************************************
  2424. ;**********SSSE3****************************************************************
  2425. ;*******************************************************************************
  2426. [PABSB]
  2427. (Ch_All, Ch_None, Ch_None)
  2428. mmxreg,mmxrm \331\3\x0F\x38\x1C\110 SSSE3,MMX,SM
  2429. xmmreg,xmmrm \361\3\x0F\x38\x1C\110 SSSE3,SM
  2430. [PABSW]
  2431. (Ch_All, Ch_None, Ch_None)
  2432. mmxreg,mmxrm \331\3\x0F\x38\x1D\110 SSSE3,MMX,SM
  2433. xmmreg,xmmrm \361\3\x0F\x38\x1D\110 SSSE3,SM
  2434. [PABSD]
  2435. (Ch_All, Ch_None, Ch_None)
  2436. mmxreg,mmxrm \331\3\x0F\x38\x1E\110 SSSE3,MMX,SM
  2437. xmmreg,xmmrm \361\3\x0F\x38\x1E\110 SSSE3,SM
  2438. [PALIGNR]
  2439. (Ch_All, Ch_None, Ch_None)
  2440. mmxreg,mmxrm,imm \331\3\x0F\x3A\x0F\110\26 SSSE3,MMX,SM2,SB,AR2
  2441. xmmreg,xmmrm,imm \361\3\x0F\x3A\x0F\110\26 SSSE3,SM2,SB,AR2
  2442. [PHADDW]
  2443. (Ch_All, Ch_None, Ch_None)
  2444. mmxreg,mmxrm \331\3\x0F\x38\x01\110 SSSE3,MMX,SM
  2445. xmmreg,xmmrm \361\3\x0F\x38\x01\110 SSSE3,SM
  2446. [PHADDD]
  2447. (Ch_All, Ch_None, Ch_None)
  2448. mmxreg,mmxrm \331\3\x0F\x38\x02\110 SSSE3,MMX,SM
  2449. xmmreg,xmmrm \361\3\x0F\x38\x02\110 SSSE3,SM
  2450. [PHADDSW]
  2451. (Ch_All, Ch_None, Ch_None)
  2452. mmxreg,mmxrm \331\3\x0F\x38\x03\110 SSSE3,MMX,SM
  2453. xmmreg,xmmrm \361\3\x0F\x38\x03\110 SSSE3,SM
  2454. [PHSUBW]
  2455. (Ch_All, Ch_None, Ch_None)
  2456. mmxreg,mmxrm \331\3\x0F\x38\x05\110 SSSE3,MMX,SM
  2457. xmmreg,xmmrm \361\3\x0F\x38\x05\110 SSSE3,SM
  2458. [PHSUBD]
  2459. (Ch_All, Ch_None, Ch_None)
  2460. mmxreg,mmxrm \331\3\x0F\x38\x06\110 SSSE3,MMX,SM
  2461. xmmreg,xmmrm \361\3\x0F\x38\x06\110 SSSE3,SM
  2462. [PHSUBSW]
  2463. (Ch_All, Ch_None, Ch_None)
  2464. mmxreg,mmxrm \331\3\x0F\x38\x07\110 SSSE3,MMX,SM
  2465. xmmreg,xmmrm \361\3\x0F\x38\x07\110 SSSE3,SM
  2466. [PMADDUBSW]
  2467. (Ch_All, Ch_None, Ch_None)
  2468. mmxreg,mmxrm \331\3\x0F\x38\x04\110 SSSE3,MMX,SM
  2469. xmmreg,xmmrm \361\3\x0F\x38\x04\110 SSSE3,SM
  2470. [PMULHRSW]
  2471. (Ch_All, Ch_None, Ch_None)
  2472. mmxreg,mmxrm \331\3\x0F\x38\x0B\110 SSSE3,MMX,SM
  2473. xmmreg,xmmrm \361\3\x0F\x38\x0B\110 SSSE3,SM
  2474. [PSHUFB]
  2475. (Ch_All, Ch_None, Ch_None)
  2476. mmxreg,mmxrm \331\3\x0F\x38\x00\110 SSSE3,MMX,SM
  2477. xmmreg,xmmrm \361\3\x0F\x38\x00\110 SSSE3,SM
  2478. [PSIGNB]
  2479. (Ch_All, Ch_None, Ch_None)
  2480. mmxreg,mmxrm \331\3\x0F\x38\x08\110 SSSE3,MMX,SM
  2481. xmmreg,xmmrm \361\3\x0F\x38\x08\110 SSSE3,SM
  2482. [PSIGNW]
  2483. (Ch_All, Ch_None, Ch_None)
  2484. mmxreg,mmxrm \331\3\x0F\x38\x09\110 SSSE3,MMX,SM
  2485. xmmreg,xmmrm \361\3\x0F\x38\x09\110 SSSE3,SM
  2486. [PSIGND]
  2487. (Ch_All, Ch_None, Ch_None)
  2488. mmxreg,mmxrm \331\3\x0F\x38\x0A\110 SSSE3,MMX,SM
  2489. xmmreg,xmmrm \361\3\x0F\x38\x0A\110 SSSE3,SM
  2490. ;*******************************************************************************
  2491. ;**********SSE4.1***************************************************************
  2492. ;*******************************************************************************
  2493. [BLENDPS]
  2494. (Ch_All, Ch_None, Ch_None)
  2495. xmmreg,xmmrm,imm \361\3\x0F\x3A\x0C\110\26 SSE41,SM2,SB,AR2
  2496. [BLENDPD]
  2497. (Ch_All, Ch_None, Ch_None)
  2498. xmmreg,xmmrm,imm \361\3\x0F\x3A\x0D\110\26 SSE41,SM2,SB,AR2
  2499. [BLENDVPS]
  2500. (Ch_All, Ch_None, Ch_None)
  2501. xmmreg,xmmrm \361\3\x0F\x38\x14\110 SSE41,SM
  2502. [BLENDVPD]
  2503. (Ch_All, Ch_None, Ch_None)
  2504. xmmreg,xmmrm \361\3\x0F\x38\x15\110 SSE41,SM
  2505. [DPPS]
  2506. (Ch_All, Ch_None, Ch_None)
  2507. xmmreg,xmmrm,imm \361\3\x0F\x3A\x40\110\26 SSE41,SM2,SB,AR2
  2508. [DPPD]
  2509. (Ch_All, Ch_None, Ch_None)
  2510. xmmreg,xmmrm,imm \361\3\x0F\x3A\x41\110\26 SSE41,SM2,SB,AR2
  2511. [EXTRACTPS]
  2512. (Ch_All, Ch_None, Ch_None)
  2513. mem,xmmreg,imm \361\325\3\x0F\x3A\x17\101\26 SSE41,SB,AR2
  2514. reg32|64,xmmreg,imm \361\3\x0F\x3A\x17\101\26 SSE41,SB,AR2
  2515. [INSERTPS]
  2516. (Ch_All, Ch_None, Ch_None)
  2517. xmmreg,xmmrm,imm \361\3\x0F\x3A\x21\110\26 SSE41,SM2,SB,AR2
  2518. [MOVNTDQA]
  2519. (Ch_All, Ch_None, Ch_None)
  2520. xmmreg,mem \361\3\x0F\x38\x2A\110 SSE41,SM
  2521. [MPSADBW]
  2522. (Ch_All, Ch_None, Ch_None)
  2523. xmmreg,xmmrm,imm \361\3\x0F\x3A\x42\110\26 SSE41,SM2,SB,AR2
  2524. [PACKUSDW]
  2525. (Ch_All, Ch_None, Ch_None)
  2526. xmmreg,xmmrm \361\3\x0F\x38\x2B\110 SSE41,SM
  2527. [PBLENDVB]
  2528. (Ch_All, Ch_None, Ch_None)
  2529. xmmreg,xmmrm \361\3\x0F\x38\x10\110 SSE41,SM
  2530. [PBLENDW]
  2531. (Ch_All, Ch_None, Ch_None)
  2532. xmmreg,xmmrm,imm \361\3\x0F\x3A\x0E\110\26 SSE41,SM2,SB,AR2
  2533. [PCMPEQQ]
  2534. (Ch_All, Ch_None, Ch_None)
  2535. xmmreg,xmmrm \361\3\x0F\x38\x29\110 SSE41,SM
  2536. [PEXTRB]
  2537. (Ch_All, Ch_None, Ch_None)
  2538. reg32|64,xmmreg,imm \361\3\x0F\x3A\x14\101\26 SSE41,SB,AR2
  2539. mem8,xmmreg,imm \361\3\x0F\x3A\x14\101\26 SSE41,SB,AR2
  2540. ;PEXTRW - Look is prev. implementation
  2541. [PEXTRD]
  2542. (Ch_All, Ch_None, Ch_None)
  2543. reg32,xmmreg,imm \361\3\x0F\x3A\x16\101\26 SSE41,SB,AR2
  2544. mem32,xmmreg,imm \361\3\x0F\x3A\x16\101\26 SSE41,SB,AR2
  2545. [PEXTRQ]
  2546. (Ch_All, Ch_None, Ch_None)
  2547. reg64,xmmreg,imm \361\326\3\x0F\x3A\x16\101\26 SSE41,X86_64,SB,AR2
  2548. mem64,xmmreg,imm \361\326\3\x0F\x3A\x16\101\26 SSE41,X86_64,SB,AR2
  2549. [PHMINPOSUW]
  2550. (Ch_All, Ch_None, Ch_None)
  2551. xmmreg,xmmrm \361\3\x0F\x38\x41\110 SSE41,SM
  2552. [PINSRB]
  2553. (Ch_All, Ch_None, Ch_None)
  2554. xmmreg,reg32|64,imm \361\3\x0F\x3A\x20\110\26 SSE41,SB,AR2
  2555. xmmreg,mem8,imm \361\3\x0F\x3A\x20\110\26 SSE41,SB,AR2
  2556. [PINSRD]
  2557. (Ch_All, Ch_None, Ch_None)
  2558. xmmreg,reg32,imm \361\3\x0F\x3A\x22\110\26 SSE41,SB,AR2
  2559. xmmreg,mem32,imm \361\3\x0F\x3A\x22\110\26 SSE41,SB,AR2
  2560. [PINSRQ]
  2561. (Ch_All, Ch_None, Ch_None)
  2562. xmmreg,reg64,imm \361\326\3\x0F\x3A\x22\110\26 SSE41,X86_64,SB,AR2
  2563. xmmreg,mem64,imm \361\326\3\x0F\x3A\x22\110\26 SSE41,X86_64,SB,AR2
  2564. [PMAXSB]
  2565. (Ch_All, Ch_None, Ch_None)
  2566. xmmreg,xmmrm \361\3\x0F\x38\x3C\110 SSE41,SM
  2567. [PMAXSD]
  2568. (Ch_All, Ch_None, Ch_None)
  2569. xmmreg,xmmrm \361\3\x0F\x38\x3D\110 SSE41,SM
  2570. [PMAXUD]
  2571. (Ch_All, Ch_None, Ch_None)
  2572. xmmreg,xmmrm \361\3\x0F\x38\x3F\110 SSE41,SM
  2573. [PMAXUW]
  2574. (Ch_All, Ch_None, Ch_None)
  2575. xmmreg,xmmrm \361\3\x0F\x38\x3E\110 SSE41,SM
  2576. [PMINSB]
  2577. (Ch_All, Ch_None, Ch_None)
  2578. xmmreg,xmmrm \361\3\x0F\x38\x38\110 SSE41,SM
  2579. [PMINSD]
  2580. (Ch_All, Ch_None, Ch_None)
  2581. xmmreg,xmmrm \361\3\x0F\x38\x39\110 SSE41,SM
  2582. [PMINUW]
  2583. (Ch_All, Ch_None, Ch_None)
  2584. xmmreg,xmmrm \361\3\x0F\x38\x3A\110 SSE41,SM
  2585. [PMINUD]
  2586. (Ch_All, Ch_None, Ch_None)
  2587. xmmreg,xmmrm \361\3\x0F\x38\x3B\110 SSE41,SM
  2588. [PMOVSXBW]
  2589. (Ch_All, Ch_None, Ch_None)
  2590. xmmreg,xmmrm \361\3\x0F\x38\x20\110 SSE41,SM
  2591. [PMOVSXBD]
  2592. (Ch_All, Ch_None, Ch_None)
  2593. xmmreg,xmmrm \361\3\x0F\x38\x21\110 SSE41,SM
  2594. [PMOVSXBQ]
  2595. (Ch_All, Ch_None, Ch_None)
  2596. xmmreg,xmmrm \361\3\x0F\x38\x22\110 SSE41,SM
  2597. [PMOVSXWD]
  2598. (Ch_All, Ch_None, Ch_None)
  2599. xmmreg,xmmrm \361\3\x0F\x38\x23\110 SSE41,SM
  2600. [PMOVSXWQ]
  2601. (Ch_All, Ch_None, Ch_None)
  2602. xmmreg,xmmrm \361\3\x0F\x38\x24\110 SSE41,SM
  2603. [PMOVSXDQ]
  2604. (Ch_All, Ch_None, Ch_None)
  2605. xmmreg,xmmrm \361\3\x0F\x38\x25\110 SSE41,SM
  2606. [PMOVZXBW]
  2607. (Ch_All, Ch_None, Ch_None)
  2608. xmmreg,xmmrm \361\3\x0F\x38\x30\110 SSE41,SM
  2609. [PMOVZXBD]
  2610. (Ch_All, Ch_None, Ch_None)
  2611. xmmreg,xmmrm \361\3\x0F\x38\x31\110 SSE41,SM
  2612. [PMOVZXBQ]
  2613. (Ch_All, Ch_None, Ch_None)
  2614. xmmreg,xmmrm \361\3\x0F\x38\x32\110 SSE41,SM
  2615. [PMOVZXWD]
  2616. (Ch_All, Ch_None, Ch_None)
  2617. xmmreg,xmmrm \361\3\x0F\x38\x33\110 SSE41,SM
  2618. [PMOVZXWQ]
  2619. (Ch_All, Ch_None, Ch_None)
  2620. xmmreg,xmmrm \361\3\x0F\x38\x34\110 SSE41,SM
  2621. [PMOVZXDQ]
  2622. (Ch_All, Ch_None, Ch_None)
  2623. xmmreg,xmmrm \361\3\x0F\x38\x35\110 SSE41,SM
  2624. [PMULDQ]
  2625. (Ch_All, Ch_None, Ch_None)
  2626. xmmreg,xmmrm \361\3\x0F\x38\x28\110 SSE41,SM
  2627. [PTEST]
  2628. (Ch_All, Ch_None, Ch_None)
  2629. xmmreg,xmmrm \361\3\x0F\x38\x17\110 SSE41,SM
  2630. [ROUNDPS]
  2631. (Ch_All, Ch_None, Ch_None)
  2632. xmmreg,xmmrm,imm \361\3\x0F\x3A\x08\110\26 SSE41,SM2,SB,AR2
  2633. [ROUNDPD]
  2634. (Ch_All, Ch_None, Ch_None)
  2635. xmmreg,xmmrm,imm \361\3\x0F\x3A\x09\110\26 SSE41,SM2,SB,AR2
  2636. [ROUNDSS]
  2637. (Ch_All, Ch_None, Ch_None)
  2638. xmmreg,xmmrm,imm \361\3\x0F\x3A\x0A\110\26 SSE41,SM2,SB,AR2
  2639. [ROUNDSD]
  2640. (Ch_All, Ch_None, Ch_None)
  2641. xmmreg,xmmrm,imm \361\3\x0F\x3A\x0B\110\26 SSE41,SM2,SB,AR2
  2642. ;*******************************************************************************
  2643. ;**********SSE4.2***************************************************************
  2644. ;*******************************************************************************
  2645. [CRC32,crc32X]
  2646. (Ch_Mop1, Ch_Rop2, Ch_None)
  2647. reg32,rm8 \334\3\x0F\x38\xF0\110 SSE42
  2648. reg32,rm16|32 \321\334\3\x0F\x38\xF1\110 SSE42
  2649. reg64,rm8 \334\326\3\x0F\x38\xF0\110 SSE42,X86_64
  2650. reg64,rm64 \334\326\3\x0F\x38\xF1\110 SSE42,X86_64
  2651. [PCMPESTRI]
  2652. (Ch_All, Ch_None, Ch_None)
  2653. xmmreg,xmmrm,imm \361\3\x0F\x3A\x61\110\26 SSE42,SM2,SB,AR2
  2654. [PCMPESTRM]
  2655. (Ch_All, Ch_None, Ch_None)
  2656. xmmreg,xmmrm,imm \361\3\x0F\x3A\x60\110\26 SSE42,SM2,SB,AR2
  2657. [PCMPISTRI]
  2658. (Ch_All, Ch_None, Ch_None)
  2659. xmmreg,xmmrm,imm \361\3\x0F\x3A\x63\110\26 SSE42,SM2,SB,AR2
  2660. [PCMPISTRM]
  2661. (Ch_All, Ch_None, Ch_None)
  2662. xmmreg,xmmrm,imm \361\3\x0F\x3A\x62\110\26 SSE42,SM2,SB,AR2
  2663. [PCMPGTQ]
  2664. (Ch_All, Ch_None, Ch_None)
  2665. xmmreg,xmmrm \361\3\x0F\x38\x37\110 SSE42,SM
  2666. [POPCNT,popcntX]
  2667. (Ch_All, Ch_None, Ch_None)
  2668. reg16,rm16 \333\320\2\x0F\xB8\110 386,SM,SSE4
  2669. reg32,rm32 \333\320\2\x0F\xB8\110 386,SM,SSE4
  2670. reg64,rm64 \333\320\2\x0F\xB8\110 386,SM,SSE4,X86_64
  2671. ;*******************************************************************************
  2672. ;**********AES******************************************************************
  2673. ;*******************************************************************************
  2674. ;Use SSE4, but need special flag for AES insructions set
  2675. [AESENC]
  2676. (Ch_All, Ch_None, Ch_None)
  2677. xmmreg,xmmrm \361\3\x0F\x38\xDC\110 SSE4,SM
  2678. [AESENCLAST]
  2679. (Ch_All, Ch_None, Ch_None)
  2680. xmmreg,xmmrm \361\3\x0F\x38\xDD\110 SSE4,SM
  2681. [AESDEC]
  2682. (Ch_All, Ch_None, Ch_None)
  2683. xmmreg,xmmrm \361\3\x0F\x38\xDE\110 SSE4,SM
  2684. [AESDECLAST]
  2685. (Ch_All, Ch_None, Ch_None)
  2686. xmmreg,xmmrm \361\3\x0F\x38\xDF\110 SSE4,SM
  2687. [AESIMC]
  2688. (Ch_All, Ch_None, Ch_None)
  2689. xmmreg,xmmrm \361\3\x0F\x38\xDB\110 SSE4,SM
  2690. [AESKEYGENASSIST]
  2691. (Ch_All, Ch_None, Ch_None)
  2692. xmmreg,xmmrm,imm \361\3\x0F\x3A\xDF\110\26 SSE4,SB,AR2
  2693. ;*******************************************************************************
  2694. ;*******************************************************************************
  2695. ;*******************************************************************************
  2696. [STOSQ]
  2697. (Ch_RRAX, Ch_WMemEDI, Ch_RWRDI)
  2698. void \326\1\xAB X86_64
  2699. [LODSQ]
  2700. (Ch_WRAX, Ch_RWRSI, Ch_None)
  2701. void \326\1\xAD X86_64
  2702. [CMPSQ]
  2703. (Ch_All, Ch_None, Ch_None)
  2704. void \326\1\xA7 X86_64