x86ins.dat 115 KB

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