armins.dat 60 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624
  1. ;
  2. ; Table of assembler instructions for Free Pascal
  3. ; adapted from Netwide Assembler by Florian Klaempfl
  4. ;
  5. ;
  6. ; The Netwide Assembler is copyright (C) 1996 Simon Tatham and
  7. ; Julian Hall. All rights reserved. The software is
  8. ; redistributable under the licence given in the file "Licence"
  9. ; distributed in the NASM archive.
  10. ;
  11. ; Format of file: all four fields must be present on every functional
  12. ; line. Hence `void' for no-operand instructions, and `\0' for such
  13. ; as EQU. If the last three fields are all `ignore', no action is
  14. ; taken except to register the opcode as being present.
  15. ;
  16. ;
  17. ; 'ignore' means no instruc
  18. ; 'void' means instruc with zero operands
  19. ;
  20. ; Third field has a first byte indicating how to
  21. ; put together the bits, and then some codes
  22. ; that may be used at will (see assemble.c)
  23. ;
  24. ; \1 - 24 bit pc-rel offset [B, BL]
  25. ; \2 - 24 bit imm value [SWI]
  26. ; \3 - 3 byte code [BX]
  27. ;
  28. ; \4 - reg,reg,reg [AND,EOR,SUB,RSB,ADD,ADC,SBC,RSC,ORR,BIC]
  29. ; \5 - reg,reg,reg,<shift>reg [-"-]
  30. ; \6 - reg,reg,reg,<shift>#imm [-"-]
  31. ; \7 - reg,reg,#imm [-"-]
  32. ;
  33. ; \x8 - reg,reg [MOV,MVN]
  34. ; \x9 - reg,reg,<shift>reg [-"-]
  35. ; \xA - reg,reg,<shift>#imm [-"-]
  36. ; \xB - reg,#imm [-"-]
  37. ;
  38. ; \xC - reg,reg [CMP,CMN,TEQ,TST]
  39. ; \xD - reg,reg,<shift>reg [-"-]
  40. ; \xE - reg,reg,<shift>#imm [-"-]
  41. ; \xF - reg,#imm [-"-]
  42. ;
  43. ; \xFx - floating point instructions
  44. ; Floating point instruction format information, taken from the linux kernel,
  45. ; for detailed tables, see aasmcpu.pas
  46. ;
  47. ; ARM Floating Point Instruction Classes
  48. ; | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
  49. ; |c o n d|1 1 0 P|U|u|W|L| Rn |v| Fd |0|0|0|1| o f f s e t | CPDT
  50. ; |c o n d|1 1 0 P|U|w|W|L| Rn |x| Fd |0|0|1|0| o f f s e t | CPDT (copro 2)
  51. ; | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
  52. ; |c o n d|1 1 1 0|a|b|c|d|e| Fn |j| Fd |0|0|0|1|f|g|h|0|i| Fm | CPDO
  53. ; |c o n d|1 1 1 0|a|b|c|L|e| Fn | Rd |0|0|0|1|f|g|h|1|i| Fm | CPRT
  54. ; |c o n d|1 1 1 0|a|b|c|1|e| Fn |1|1|1|1|0|0|0|1|f|g|h|1|i| Fm | comparisons
  55. ; | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
  56. ;
  57. ; CPDT data transfer instructions
  58. ; LDF, STF, LFM (copro 2), SFM (copro 2)
  59. ;
  60. ; CPDO dyadic arithmetic instructions
  61. ; ADF, MUF, SUF, RSF, DVF, RDF,
  62. ; POW, RPW, RMF, FML, FDV, FRD, POL
  63. ;
  64. ; CPDO monadic arithmetic instructions
  65. ; MVF, MNF, ABS, RND, SQT, LOG, LGN, EXP,
  66. ; SIN, COS, TAN, ASN, ACS, ATN, URD, NRM
  67. ;
  68. ; CPRT joint arithmetic/data transfer instructions
  69. ; FIX (arithmetic followed by load/store)
  70. ; FLT (load/store followed by arithmetic)
  71. ; CMF, CNF CMFE, CNFE (comparisons)
  72. ; WFS, RFS (write/read floating point status register)
  73. ; WFC, RFC (write/read floating point control register)
  74. ; \xF0 - CPDT
  75. ; code 1: copro (1/2)
  76. ; code 2: load/store bit
  77. ; \xF1 - CPDO
  78. ; \xF2 - CPDO monadic
  79. ; \xF3 - CPRT
  80. ; \xF4 - CPRT comparison
  81. ;
  82. ; \xFF - fix me
  83. ;
  84. [NONE]
  85. void void none
  86. [ADCcc]
  87. reglo,reglo \x6B\x41\x40 THUMB,ARMv4T
  88. reg32,immshifter \x80\xF1\x40\x0\x0 THUMB32,ARMv6T2
  89. reg32,reg32 \x80\xEB\x40\x0\x0 THUMB32,WIDE,ARMv6T2
  90. reg32,reg32,shifterop \x80\xEB\x40\x0\x0 THUMB32,WIDE,ARMv6T2
  91. reg32,reg32,immshifter \x80\xF1\x40\x0\x0 THUMB32,ARMv6T2
  92. reg32,reg32,reg32 \x80\xEB\x40\x0\x0 THUMB32,WIDE,ARMv6T2
  93. reg32,reg32,reg32,shifterop \x80\xEB\x40\x0\x0 THUMB32,WIDE,ARMv6T2
  94. reg32,reg32,reg32 \4\x0\xA0 ARM32,ARMv4
  95. reg32,reg32,reg32,shifterop \6\x0\xA0 ARM32,ARMv4
  96. reg32,reg32,immshifter \7\x2\xA0 ARM32,ARMv4
  97. [ADDcc]
  98. reg32,reg32 \x61\x44\x0 THUMB,ARMv4T
  99. reglo,reglo,reglo \x60\x18\x0 THUMB,ARMv4T
  100. reglo,immshifter \x60\x1C\x0 THUMB,ARMv4T
  101. reglo,reglo,immshifter \x60\x1C\x0 THUMB,ARMv4T
  102. reglo,immshifter \x6B\x30\x0 THUMB,ARMv4T
  103. reglo,regsp,immshifter \x64\xA8\x00 THUMB,ARMv4T
  104. regsp,regsp,immshifter \x64\xB0\x00 THUMB,ARMv4T
  105. reg32,regsp,reg32 \x64\x44\x68 THUMB,ARMv4T
  106. regsp,reg32 \x64\x44\x85 THUMB,ARMv4T
  107. reg32,immshifter \x80\xF1\x0\x0\x0 THUMB32,WIDE,ARMv6T2
  108. reg32,reg32 \x80\xEB\x0\x0\x0 THUMB32,WIDE,ARMv6T2
  109. reg32,reg32,shifterop \x80\xEB\x0\x0\x0 THUMB32,WIDE,ARMv6T2
  110. reg32,reg32,immshifter \x80\xF1\x0\x0\x0 THUMB32,WIDE,ARMv6T2
  111. reg32,reg32,reg32 \x80\xEB\x0\x0\x0 THUMB32,WIDE,ARMv6T2
  112. reg32,reg32,reg32,shifterop \x80\xEB\x0\x0\x0 THUMB32,WIDE,ARMv6T2
  113. reg32,reg32,reg32 \4\x0\x80 ARM32,ARMv4
  114. reg32,reg32,reg32,shifterop \6\x0\x80 ARM32,ARMv4
  115. reg32,reg32,immshifter \7\x2\x80 ARM32,ARMv4
  116. [ADDWcc]
  117. reg32,reg32,immshifter \x81\xF2\x0\x0\x0 THUMB32,ARMv6T2
  118. [ADFcc]
  119. [ADRcc]
  120. ;reg32,immshifter \x33\x2\x0F ARM32,ARMv4
  121. ;reg32,imm32 \x33\x2\x0F ARM32,ARMv4
  122. reglo,immshifter \x67\xA0\x0\2 THUMB,ARMv4T
  123. reglo,memam6 \x67\xA0\x0\2 THUMB,ARMv4T
  124. reg32,imm32 \x81\xF2\xAF\x0\x0 THUMB32,WIDE,ARMv6T2
  125. reg32,immshifter \x81\xF2\xAF\x0\x0 THUMB32,WIDE,ARMv6T2
  126. reg32,memam2 \x81\xF2\xAF\x0\x0 THUMB32,WIDE,ARMv6T2
  127. reg32,memam2 \x33\x2\x0F ARM32,ARMv4
  128. [ANDcc]
  129. reglo,reglo \x6B\x40\x00 THUMB,ARMv4T
  130. reg32,immshifter \x80\xF0\x0\x0\x0 THUMB32,ARMv6T2
  131. reg32,reg32 \x80\xEA\x0\x0\x0 THUMB32,WIDE,ARMv6T2
  132. reg32,reg32,shifterop \x80\xEA\x0\x0\x0 THUMB32,WIDE,ARMv6T2
  133. reg32,reg32,immshifter \x80\xF0\x0\x0\x0 THUMB32,ARMv6T2
  134. reg32,reg32,reg32 \x80\xEA\x0\x0\x0 THUMB32,WIDE,ARMv6T2
  135. reg32,reg32,reg32,shifterop \x80\xEA\x0\x0\x0 THUMB32,WIDE,ARMv6T2
  136. reg32,reg32,reg32 \x4\x0\x00 ARM32,ARMv4
  137. reg32,reg32,reg32,shifterop \x6\x0\x00 ARM32,ARMv4
  138. reg32,reg32,immshifter \x7\x2\x00 ARM32,ARMv4
  139. [Bcc]
  140. imm24 \x62\xE0\x0 THUMB,ARMv4T
  141. immshifter \x62\xE0\x0 THUMB,ARMv4T
  142. mem32 \x62\xE0\x0 THUMB,ARMv4T
  143. imm24 \x63\xD0\x0 THUMB,ARMv4T
  144. immshifter \x63\xD0\x0 THUMB,ARMv4T
  145. mem32 \x63\xD0\x0 THUMB,ARMv4T
  146. imm24 \x1\x0A ARM32,ARMv4
  147. mem32 \x1\x0A ARM32,ARMv4
  148. [BICcc]
  149. reglo,reglo \x6B\x43\x80 THUMB,ARMv4T
  150. reg32,immshifter \x80\xF0\x20\x0\x0 THUMB32,ARMv6T2
  151. reg32,reg32 \x80\xEA\x20\x0\x0 THUMB32,WIDE,ARMv6T2
  152. reg32,reg32,shifterop \x80\xEA\x20\x0\x0 THUMB32,WIDE,ARMv6T2
  153. reg32,reg32,immshifter \x80\xF0\x20\x0\x0 THUMB32,ARMv6T2
  154. reg32,reg32,reg32 \x80\xEA\x20\x0\x0 THUMB32,WIDE,ARMv6T2
  155. reg32,reg32,reg32,shifterop \x80\xEA\x20\x0\x0 THUMB32,WIDE,ARMv6T2
  156. reg32,reg32,reg32 \x6\x1\xC0 ARM32,ARMv4
  157. reg32,reg32,reg32,shifterop \x6\x1\xC0 ARM32,ARMv4
  158. reg32,reg32,immshifter \x7\x3\xC0 ARM32,ARMv4
  159. [BLcc]
  160. imm24 \x8D\xF0\xD0 THUMB,THUMB32,ARMv4T
  161. immshifter \x8D\xF0\xD0 THUMB,THUMB32,ARMv4T
  162. mem32 \x8D\xF0\xD0 THUMB,THUMB32,ARMv4T
  163. imm24 \x1\x0B ARM32,ARMv4
  164. mem32 \x1\x0B ARM32,ARMv4
  165. [BLX]
  166. reg32 \x62\x47\x80 THUMB,ARMv4T
  167. immshifter \x8D\xF0\xC0 THUMB32,ARMv6T2
  168. imm24 \x8D\xF0\xC0 THUMB32,ARMv6T2
  169. mem32 \x8D\xF0\xC0 THUMB32,ARMv6T2
  170. imm24 \x28\xFA ARM32,ARMv5T
  171. mem32 \x28\xFA ARM32,ARMv5T
  172. reg32 \3\x01\x2F\xFF\x30 ARM32,ARMv5T
  173. [BKPTcc]
  174. immshifter \x60\xBE\x0 THUMB,ARMv5T
  175. imm \x31\x1\x20\x70 ARM32,ARMv5T
  176. immshifter \x31\x1\x20\x70 ARM32,ARMv5T
  177. [BXcc]
  178. reg32 \x62\x47\x0 THUMB,ARMv4T
  179. reg32 \3\x01\x2F\xFF\x10 ARM32,ARMv4T
  180. [CDP]
  181. reg8,reg8 \300\1\x10\101 ARM32,ARMv4
  182. [CMNcc]
  183. reglo,reglo \x6B\x42\xC0 THUMB,ARMv4T
  184. reg32,immshifter \x80\xF1\x10\x0F\x00 THUMB32,ARMv6T2
  185. reg32,reg32 \x80\xEB\x10\x0F\x00 THUMB32,WIDE,ARMv6T2
  186. reg32,reg32,shifterop \x80\xEB\x10\x0F\x00 THUMB32,WIDE,ARMv6T2
  187. reg32,reg32 \xC\x1\x60 ARM32,ARMv4
  188. reg32,reg32,shifterop \xE\x1\x60 ARM32,ARMv4
  189. reg32,immshifter \xF\x1\x60 ARM32,ARMv4
  190. [CMPcc]
  191. reglo,reglo \x6B\x42\x80 THUMB,ARMv4T
  192. reg32,reg32 \x61\x45\x0 THUMB,ARMv4T
  193. reglo,immshifter \x6B\x28\x0 THUMB,ARMv4T
  194. reg32,immshifter \x80\xF1\xB0\x0F\x00 THUMB32,WIDE,ARMv6T2
  195. reg32,reg32 \x80\xEB\xB0\x0F\x00 THUMB32,WIDE,ARMv6T2
  196. reg32,reg32,shifterop \x80\xEB\xB0\x0F\x00 THUMB32,WIDE,ARMv6T2
  197. reg32,reg32 \xC\x1\x40 ARM32,ARMv4
  198. reg32,reg32,shifterop \xE\x1\x40 ARM32,ARMv4
  199. reg32,immshifter \xF\x3\x40 ARM32,ARMv4
  200. [CMFcc]
  201. [CMFEcc]
  202. [STFcc]
  203. [LDFcc]
  204. [LFMcc]
  205. reg32,imm8,fpureg \xF0\x02\x01 FPA
  206. [CLZcc]
  207. reg32,reg32 \x80\xFA\xB0\xF0\x80 THUMB32,ARMv6T2
  208. reg32,reg32 \x32\x01\x6F\xF\x10 ARM32,ARMv4
  209. [CPS]
  210. [CPSID]
  211. [CPSIE]
  212. [EORcc]
  213. reglo,reglo \x6B\x40\x40 THUMB,ARMv4T
  214. reg32,immshifter \x80\xF0\x80\x0\x0 THUMB32,ARMv6T2
  215. reg32,reg32 \x80\xEA\x80\x0\x0 THUMB32,WIDE,ARMv6T2
  216. reg32,reg32,shifterop \x80\xEA\x80\x0\x0 THUMB32,WIDE,ARMv6T2
  217. reg32,reg32,immshifter \x80\xF0\x80\x0\x0 THUMB32,ARMv6T2
  218. reg32,reg32,reg32 \x80\xEA\x80\x0\x0 THUMB32,WIDE,ARMv6T2
  219. reg32,reg32,reg32,shifterop \x80\xEA\x80\x0\x0 THUMB32,WIDE,ARMv6T2
  220. reg32,reg32,reg32 \4\x0\x20 ARM32,ARMv4
  221. reg32,reg32,reg32,shifterop \6\x0\x20 ARM32,ARMv4
  222. reg32,reg32,immshifter \7\x2\x20 ARM32,ARMv4
  223. [LDC]
  224. reg32,reg32 \321\300\1\x11\101 ARM32,ARMv4
  225. [LDMcc]
  226. memam4,reglist \x69\xC8 THUMB,ARMv4T
  227. reglo,reglist \x69\xC8 THUMB,ARMv4T
  228. memam4,reglist \x8C\xE8\x10\x0\x0 THUMB32,WIDE,ARMv6T2
  229. reg32,reglist \x8C\xE8\x10\x0\x0 THUMB32,WIDE,ARMv6T2
  230. memam4,reglist \x26\x81 ARM32,ARMv4
  231. reg32,reglist \x26\x81 ARM32,ARMv4
  232. [LDRBTcc]
  233. reg32,memam2 \x88\xF8\x10\xE\x0\0 THUMB32,ARMv6T2
  234. reg32,memam2 \x17\x04\x70 ARM32,ARMv4
  235. reg32,immshifter \x17\x04\x70 ARM32,ARMv4
  236. [LDRBcc]
  237. reglo,memam3 \x65\x5C\x0\0 THUMB,ARMv4T
  238. reglo,memam4 \x66\x78\x0\0 THUMB,ARMv4T
  239. reg32,memam2 \x88\xF8\x10\x0\x0\0 THUMB32,WIDE,ARMv6T2
  240. reg32,memam2 \x17\x04\x50 ARM32,ARMv4
  241. [LDRcc]
  242. reglo,memam3 \x65\x58\x0\2 THUMB,ARMv4T
  243. reglo,memam4 \x66\x68\x0\2 THUMB,ARMv4T
  244. reglo,memam5 \x67\x98\x0\2 THUMB,ARMv4T
  245. reglo,memam6 \x67\x48\x0\2 THUMB,ARMv4T
  246. reg32,memam2 \x88\xF8\x50\x0\x0\0 THUMB32,WIDE,ARMv6T2
  247. reg32,memam2 \x17\x04\x10 ARM32,ARMv4
  248. [LDRHcc]
  249. reglo,memam3 \x65\x5A\x0\1 THUMB,ARMv4T
  250. reglo,memam4 \x66\x88\x0\1 THUMB,ARMv4T
  251. reg32,memam2 \x88\xF8\x30\x0\x0\0 THUMB32,WIDE,ARMv6T2
  252. reg32,memam2 \x22\x10\xB0 ARM32,ARMv4
  253. [LDRSBcc]
  254. reglo,memam3 \x65\x56\x0\0 THUMB,ARMv4T
  255. reg32,memam2 \x88\xF9\x10\x0\x0\0 THUMB32,ARMv6T2
  256. reg32,memam2 \x22\x10\xD0 ARM32,ARMv4
  257. reg32,reg32 \x23\x50\xD0 ARM32,ARMv4
  258. reg32,reg32,imm32 \x24\x50\xD0 ARM32,ARMv4
  259. reg32,reg32,reg32 \x25\x10\xD0 ARM32,ARMv4
  260. [LDRSHcc]
  261. reglo,memam3 \x65\x5E\x0\1 THUMB,ARMv4T
  262. reg32,memam2 \x88\xF9\x30\x0\x0\0 THUMB32,ARMv6T2
  263. reg32,memam2 \x22\x10\xF0 ARM32,ARMv4
  264. [LDRTcc]
  265. reg32,memam2 \x88\xF8\x50\xE\x0\0 THUMB32,ARMv6T2
  266. reg32,memam2 \x17\x04\x30 ARM32,ARMv4
  267. [MCRcc]
  268. regf,immshifter,reg32,regf,regf \x1C\xE\x0\x1 ARM32,ARMv4
  269. regf,immshifter,reg32,regf,regf,immshifter \x1C\xE\x0\x1 ARM32,ARMv4
  270. [MCR2cc]
  271. regf,immshifter,reg32,regf,regf \x1C\xFE\x0\x1 ARM32,ARMv5T
  272. regf,immshifter,reg32,regf,regf,immshifter \x1C\xFE\x0\x1 ARM32,ARMv5T
  273. [MRCcc]
  274. regf,immshifter,reg32,regf,regf \x1C\xE\x10\x1 ARM32,ARMv4
  275. regf,immshifter,reg32,regf,regf,immshifter \x1C\xE\x10\x1 ARM32,ARMv4
  276. [MRC2cc]
  277. regf,immshifter,reg32,regf,regf \x1C\xFE\x10\x1 ARM32,ARMv5T
  278. regf,immshifter,reg32,regf,regf,immshifter \x1C\xFE\x10\x1 ARM32,ARMv5T
  279. [MCRRcc]
  280. regf,immshifter,reg32,reg32,regf \x1D\xC\x40\x0 ARM32,ARMv5TE
  281. [MCRR2cc]
  282. regf,immshifter,reg32,reg32,regf \x1D\xFC\x40\x0 ARM32,ARMv6
  283. [MRRCcc]
  284. regf,immshifter,reg32,reg32,regf \x1D\xC\x50\x0 ARM32,ARMv5TE
  285. [MRRC2cc]
  286. regf,immshifter,reg32,reg32,regf \x1D\xFC\x50\x0 ARM32,ARMv6
  287. [MLAcc]
  288. reg32,reg32,reg32,reg32 \x80\xFB\x0\x0\x0 THUMB32,ARMv6T2
  289. reg32,reg32,reg32,reg32 \x15\x00\x20\x9 ARM32,ARMv4
  290. [MOVcc]
  291. reglo,reglo \x6B\x0\x0 THUMB,ARMv4T
  292. reg32,reg32 \x61\x46\x00 THUMB,ARMv4T
  293. reglo,immshifter \x6B\x20\x0 THUMB,ARMv4T
  294. reg32,immshifter \x80\xF0\x4F\x0\x0 THUMB32,WIDE,ARMv6T2
  295. reg32,reg32 \x80\xEA\x4F\x0\x0 THUMB32,WIDE,ARMv6T2
  296. reg32,shifterop \x8\x1\xA0 ARM32,ARMv4
  297. reg32,reg32,shifterop \xA\x1\xA0 ARM32,ARMv4
  298. reg32,immshifter \xB\x1\xA0 ARM32,ARMv4
  299. [MRScc]
  300. reg32,regf \x10\x01\x0F ARM32,ARMv4
  301. [MSRcc]
  302. regf,reg32 \x12\x01\x20\xF0 ARM32,ARMv4
  303. regf,immshifter \x13\x03\x20\xF0 ARM32,ARMv4
  304. regs,immshifter \x13\x03\x20\xF0 ARM32,ARMv4
  305. [MULcc]
  306. reglo,reglo \x64\x43\x40 THUMB,ARMv4T
  307. reglo,reglo,reglo \x64\x43\x40 THUMB,ARMv4T
  308. reg32,reg32 \x80\xFB\x00\xF0\x00 THUMB32,ARMv6T2
  309. reg32,reg32,reg32 \x80\xFB\x00\xF0\x00 THUMB32,ARMv6T2
  310. reg32,reg32,reg32 \x14\x00\x00\x90 ARM32,ARMv4
  311. [MVFcc]
  312. fpureg,fpureg \xF2 FPA
  313. fpureg,immfpu \xF2 FPA
  314. [MVNcc]
  315. reglo,reglo \x6B\x43\xc0 THUMB,ARMv4T
  316. reg32,immshifter \x80\xF0\x6F\x0\x0 THUMB32,ARMv6T2
  317. reg32,reg32 \x80\xEA\x6F\x0\x0 THUMB32,WIDE,ARMv6T2
  318. reg32,reg32 \x8\x1\xE0 ARM32,ARMv4
  319. reg32,reg32,shifterop \xA\x1\xE0 ARM32,ARMv4
  320. reg32,immshifter \xB\x1\xE0 ARM32,ARMv4
  321. [VMOVcc]
  322. vreg,vreg \x90\xEE\xB0\xA\x40 THUMB32,VFPv2
  323. vreg,vreg \x40\xE\xB0\xA\x40 ARM32,VFPv2
  324. reg32,vreg \x90\xEE\x10\xA\x10 THUMB32,VFPv2
  325. vreg,reg32 \x90\xEE\x00\xA\x10 THUMB32,VFPv2
  326. reg32,vreg \x40\xE\x10\xA\x10 ARM32,VFPv2
  327. vreg,reg32 \x40\xE\x00\xA\x10 ARM32,VFPv2
  328. reg32,reg32,vreg,vreg \x90\xEC\x50\xA\x10 THUMB32,VFPv2
  329. vreg,vreg,reg32,reg32 \x90\xEC\x40\xA\x10 THUMB32,VFPv2
  330. reg32,reg32,vreg,vreg \x40\xC\x50\xA\x10 ARM32,VFPv2
  331. vreg,vreg,reg32,reg32 \x40\xC\x40\xA\x10 ARM32,VFPv2
  332. reg32,reg32,vreg \x90\xEC\x50\xB\x10 THUMB32,VFPv2
  333. vreg,reg32,reg32 \x90\xEC\x40\xB\x10 THUMB32,VFPv2
  334. reg32,reg32,vreg \x40\xC\x50\xB\x10 ARM32,VFPv2
  335. vreg,reg32,reg32 \x40\xC\x40\xB\x10 ARM32,VFPv2
  336. [NOP]
  337. void \x61\xBF\x0 THUMB,ARMv6T2
  338. void \x2F\x03\x20\xF0\x0 ARM32,ARMv6K
  339. ; Before ARMv6K use mov r0,r0
  340. void \x2F\xE1\xA0\x0\x0 ARM32,ARMv4
  341. [ORNcc]
  342. reg32,immshifter \x80\xF0\x60\x0\x0 THUMB32,ARMv6T2
  343. reg32,reg32 \x80\xEA\x60\x0\x0 THUMB32,ARMv6T2
  344. reg32,reg32,shifterop \x80\xEA\x60\x0\x0 THUMB32,ARMv6T2
  345. reg32,reg32,immshifter \x80\xF0\x60\x0\x0 THUMB32,ARMv6T2
  346. reg32,reg32,reg32 \x80\xEA\x60\x0\x0 THUMB32,ARMv6T2
  347. reg32,reg32,reg32,shifterop \x80\xEA\x60\x0\x0 THUMB32,ARMv6T2
  348. [ORRcc]
  349. reglo,reglo \x6B\x43\x00 THUMB,ARMv4T
  350. reg32,immshifter \x80\xF0\x40\x0\x0 THUMB32,ARMv6T2
  351. reg32,reg32 \x80\xEA\x40\x0\x0 THUMB32,WIDE,ARMv6T2
  352. reg32,reg32,shifterop \x80\xEA\x40\x0\x0 THUMB32,WIDE,ARMv6T2
  353. reg32,reg32,immshifter \x80\xF0\x40\x0\x0 THUMB32,ARMv6T2
  354. reg32,reg32,reg32 \x80\xEA\x40\x0\x0 THUMB32,WIDE,ARMv6T2
  355. reg32,reg32,reg32,shifterop \x80\xEA\x40\x0\x0 THUMB32,WIDE,ARMv6T2
  356. reg32,reg32,reg32 \4\x1\x80 ARM32,ARMv4
  357. reg32,reg32,reg32,reg32 \5\x1\x80 ARM32,ARMv4
  358. reg32,reg32,reg32,shifterop \6\x1\x80 ARM32,ARMv4
  359. reg32,reg32,immshifter \7\x3\x80 ARM32,ARMv4
  360. [RSBcc]
  361. reglo,reglo,immzero \x6B\x42\x40 THUMB,ARMv4T
  362. reg32,immshifter \x80\xF1\xC0\x0\x0 THUMB32,WIDE,ARMv6T2
  363. reg32,reg32 \x80\xEB\xC0\x0\x0 THUMB32,ARMv6T2
  364. reg32,reg32,shifterop \x80\xEB\xC0\x0\x0 THUMB32,ARMv6T2
  365. reg32,reg32,immshifter \x80\xF1\xC0\x0\x0 THUMB32,WIDE,ARMv6T2
  366. reg32,reg32,reg32 \x80\xEB\xC0\x0\x0 THUMB32,ARMv6T2
  367. reg32,reg32,reg32,shifterop \x80\xEB\xC0\x0\x0 THUMB32,ARMv6T2
  368. reg32,reg32,reg32 \6\x0\x60 ARM32,ARMv4
  369. reg32,reg32,reg32,shifterop \6\x0\x60 ARM32,ARMv4
  370. reg32,reg32,immshifter \7\x0\x60 ARM32,ARMv4
  371. [RSCcc]
  372. reg32,reg32,reg32 \4\x0\xE0 ARM32,ARMv4
  373. reg32,reg32,reg32,reg32 \5\x0\xE0 ARM32,ARMv4
  374. reg32,reg32,reg32,shifterop \6\x0\xE0 ARM32,ARMv4
  375. reg32,reg32,immshifter \7\x2\xE0 ARM32,ARMv4
  376. [SBCcc]
  377. reglo,reglo \x6B\x41\x80 THUMB,ARMv4T
  378. reg32,immshifter \x80\xF1\x60\x0\x0 THUMB32,ARMv6T2
  379. reg32,reg32 \x80\xEB\x60\x0\x0 THUMB32,WIDE,ARMv6T2
  380. reg32,reg32,shifterop \x80\xEB\x60\x0\x0 THUMB32,WIDE,ARMv6T2
  381. reg32,reg32,immshifter \x80\xF1\x60\x0\x0 THUMB32,ARMv6T2
  382. reg32,reg32,reg32 \x80\xEB\x60\x0\x0 THUMB32,WIDE,ARMv6T2
  383. reg32,reg32,reg32,shifterop \x80\xEB\x60\x0\x0 THUMB32,WIDE,ARMv6T2
  384. reg32,reg32,reg32 \4\x0\xC0 ARM32,ARMv4
  385. reg32,reg32,reg32,reg32 \5\x0\xC0 ARM32,ARMv4
  386. reg32,reg32,reg32,imm \6\x0\xC0 ARM32,ARMv4
  387. reg32,reg32,reg32,shifterop \6\x0\xC0 ARM32,ARMv4
  388. reg32,reg32,immshifter \7\x2\xC0 ARM32,ARMv4
  389. [SFMcc]
  390. reg32,imm8,fpureg \xF0\x02\x00 FPA
  391. [SINcc]
  392. [SMLALcc]
  393. reg32,reg32,reg32,reg32 \x85\xFB\xC0\x0\x0 THUMB32,ARMv6T2
  394. reg32,reg32,reg32,reg32 \x16\x00\xE0\x9 ARM32,ARMv4
  395. [SMULLcc]
  396. reg32,reg32,reg32,reg32 \x85\xFB\x80\x0\x0 THUMB32,ARMv6T2
  397. reg32,reg32,reg32,reg32 \x16\x00\xC0\x9 ARM32,ARMv4
  398. [STMcc]
  399. memam4,reglist \x69\xC0 THUMB,ARMv4T
  400. reglo,reglist \x69\xC0 THUMB,ARMv4T
  401. memam4,reglist \x8C\xE8\x00\x0\x0 THUMB32,WIDE,ARMv6T2
  402. reg32,reglist \x8C\xE8\x00\x0\x0 THUMB32,WIDE,ARMv6T2
  403. memam4,reglist \x26\x80 ARM32,ARMv4
  404. reg32,reglist \x26\x80 ARM32,ARMv4
  405. [STRcc]
  406. reglo,memam3 \x65\x50\x0\2 THUMB,ARMv4T
  407. reglo,memam4 \x66\x60\x0\2 THUMB,ARMv4T
  408. reglo,memam5 \x67\x90\x0\2 THUMB,ARMv4T
  409. reg32,memam2 \x88\xF8\x40\x0\x0\0 THUMB32,WIDE,ARMv6T2
  410. reg32,memam2 \x17\x04\x00 ARM32,ARMv4
  411. [STRBcc]
  412. reglo,memam3 \x65\x54\x0\0 THUMB,ARMv4T
  413. reglo,memam4 \x66\x70\x0\0 THUMB,ARMv4T
  414. reg32,memam2 \x88\xF8\x00\x0\x0\0 THUMB32,WIDE,ARMv6T2
  415. reg32,memam2 \x17\x04\x40 ARM32,ARMv4
  416. [STRBTcc]
  417. reg32,memam2 \x88\xF8\x00\xE\x0\0 THUMB32,ARMv6T2
  418. reg32,memam2 \x17\x04\x60 ARM32,ARMv4
  419. reg32,immshifter \x17\x04\x60 ARM32,ARMv4
  420. [STRHcc]
  421. reglo,memam3 \x65\x52\x0\1 THUMB,ARMv4T
  422. reglo,memam4 \x66\x80\x0\1 THUMB,ARMv4T
  423. reg32,memam2 \x88\xF8\x20\x0\x0\0 THUMB32,WIDE,ARMv6T2
  424. reg32,memam2 \x22\x00\xB0 ARM32,ARMv4
  425. [STRTcc]
  426. reg32,memam2 \x88\xF8\x40\xE\x0\0 THUMB32,ARMv6T2
  427. reg32,memam2 \x17\x04\x20 ARM32,ARMv4
  428. [SUBcc]
  429. regsp,immshifter \x64\xB0\x80 THUMB,ARMv4T
  430. regsp,regsp,immshifter \x64\xB0\x80 THUMB,ARMv4T
  431. reglo,reglo \x60\x1A\x0 THUMB,ARMv4T
  432. reglo,reglo,reglo \x60\x1A\x0 THUMB,ARMv4T
  433. reglo,immshifter \x60\x1E\x0 THUMB,ARMv4T
  434. reglo,reglo,immshifter \x60\x1E\x0 THUMB,ARMv4T
  435. reglo,imm8 \x6B\x38\x0 THUMB,ARMv4T
  436. reglo,immshifter \x6B\x38\x0 THUMB,ARMv4T
  437. reg32,immshifter \x80\xF1\xA0\x0\x0 THUMB32,WIDE,ARMv6T2
  438. reg32,reg32 \x80\xEB\xA0\x0\x0 THUMB32,WIDE,ARMv6T2
  439. reg32,reg32,shifterop \x80\xEB\xA0\x0\x0 THUMB32,WIDE,ARMv6T2
  440. reg32,reg32,immshifter \x80\xF1\xA0\x0\x0 THUMB32,WIDE,ARMv6T2
  441. reg32,reg32,reg32 \x80\xEB\xA0\x0\x0 THUMB32,WIDE,ARMv6T2
  442. reg32,reg32,reg32,shifterop \x80\xEB\xA0\x0\x0 THUMB32,WIDE,ARMv6T2
  443. reg32,reg32,shifterop \x4\x0\x40 ARM32,ARMv4
  444. reg32,reg32,immshifter \x4\x0\x40 ARM32,ARMv4
  445. reg32,reg32,reg32 \x4\x0\x40 ARM32,ARMv4
  446. reg32,reg32,reg32,shifterop \x6\x0\x40 ARM32,ARMv4
  447. [SWIcc]
  448. ; Old alias for SVC
  449. [SWPcc]
  450. reg32,reg32,memam2 \x27\x10\x09 ARM32,ARMv4
  451. [SWPBcc]
  452. reg32,reg32,memam2 \x27\x14\x09 ARM32,ARMv4
  453. [TEQcc]
  454. reg32,immshifter \x80\xF0\x90\x0F\x00 THUMB32,ARMv6T2
  455. reg32,reg32 \x80\xEA\x90\x0F\x00 THUMB32,ARMv6T2
  456. reg32,reg32,shifterop \x80\xEA\x90\x0F\x00 THUMB32,ARMv6T2
  457. reg32,reg32 \xC\x1\x20 ARM32,ARMv4
  458. reg32,reg32,reg32 \xD\x1\x20 ARM32,ARMv4
  459. reg32,reg32,shifterop \xE\x1\x20 ARM32,ARMv4
  460. reg32,immshifter \xF\x3\x20 ARM32,ARMv4
  461. [TSTcc]
  462. reglo,reglo \x6B\x42\x00 THUMB,ARMv4T
  463. reg32,immshifter \x80\xF0\x10\x0F\x00 THUMB32,ARMv6T2
  464. reg32,reg32 \x80\xEA\x10\x0F\x00 THUMB32,WIDE,ARMv6T2
  465. reg32,reg32,shifterop \x80\xEA\x10\x0F\x00 THUMB32,WIDE,ARMv6T2
  466. reg32,reg32 \xC\x1\x00 ARM32,ARMv4
  467. reg32,reg32,reg32 \xD\x1\x00 ARM32,ARMv4
  468. reg32,reg32,shifterop \xE\x1\x00 ARM32,ARMv4
  469. reg32,immshifter \xF\x3\x00 ARM32,ARMv4
  470. [UMLALcc]
  471. reg32,reg32,reg32,reg32 \x85\xFB\xE0\x0\x00 THUMB32,ARMv6T2
  472. reg32,reg32,reg32,reg32 \x16\x00\xA0\x9 ARM32,ARMv4
  473. [UMULLcc]
  474. reg32,reg32,reg32,reg32 \x85\xFB\xA0\x0\x0 THUMB32,ARMv6T2
  475. reg32,reg32,reg32,reg32 \x16\x00\x80\x9 ARM32,ARMv4
  476. [WFScc]
  477. ; EDSP instructions
  478. [LDRDcc]
  479. reg32,reg32,memam2 \x89\xE8\x50\x0\x0 THUMB32,ARMv6T2
  480. reg32,reg32,memam2 \x19\x0\x0\x0\xD0 ARM32,ARMv4
  481. [PLD]
  482. memam2 \x87\xF8\x10\xF0\x0 THUMB32,ARMv6T2
  483. memam2 \x25\xF5\x50\xF0\x0 ARM32,ARMv5TE
  484. [PLDW]
  485. memam2 \x87\xF8\x30\xF0\x0 THUMB32,ARMv7
  486. memam2 \x25\xF5\x10\xF0\x0 ARM32,ARMv7
  487. [QADDcc]
  488. reg32,reg32,reg32 \x82\xFA\x80\xF0\x80 THUMB32,ARMv6T2
  489. reg32,reg32,reg32 \x1A\x01\x00\x05 ARM32,ARMv5TE
  490. [QDADDcc]
  491. reg32,reg32,reg32 \x82\xFA\x80\xF0\x90 THUMB32,ARMv6T2
  492. reg32,reg32,reg32 \x1A\x01\x40\x05 ARM32,ARMv5TE
  493. [QDSUBcc]
  494. reg32,reg32,reg32 \x82\xFA\x80\xF0\xB0 THUMB32,ARMv6T2
  495. reg32,reg32,reg32 \x1A\x01\x60\x05 ARM32,ARMv5TE
  496. [QSUBcc]
  497. reg32,reg32,reg32 \x82\xFA\x80\xF0\xA0 THUMB32,ARMv6T2
  498. reg32,reg32,reg32 \x1A\x01\x20\x05 ARM32,ARMv5TE
  499. [SMLABBcc]
  500. reg32,reg32,reg32,reg32 \x15\x01\x00\x8 ARM32,ARMv5TE
  501. [SMLABTcc]
  502. reg32,reg32,reg32,reg32 \x15\x01\x00\xC ARM32,ARMv5TE
  503. [SMLATBcc]
  504. reg32,reg32,reg32,reg32 \x15\x01\x00\xA ARM32,ARMv5TE
  505. [SMLATTcc]
  506. reg32,reg32,reg32,reg32 \x15\x01\x00\xE ARM32,ARMv5TE
  507. [SMLALBBcc]
  508. reg32,reg32,reg32,reg32 \x16\x01\x40\x8 ARM32,ARMv5TE
  509. [SMLALBTcc]
  510. reg32,reg32,reg32,reg32 \x16\x01\x40\xC ARM32,ARMv5TE
  511. [SMLALTBcc]
  512. reg32,reg32,reg32,reg32 \x16\x01\x40\xA ARM32,ARMv5TE
  513. [SMLALTTcc]
  514. reg32,reg32,reg32,reg32 \x16\x01\x40\xE ARM32,ARMv5TE
  515. [SMLAWBcc]
  516. reg32,reg32,reg32,reg32 \x80\xFB\x30\x0\x00 THUMB32,ARMv6T2
  517. reg32,reg32,reg32,reg32 \x15\x1\x20\x8 ARM32,ARMv5TE
  518. [SMLAWTcc]
  519. reg32,reg32,reg32,reg32 \x80\xFB\x30\x0\x10 THUMB32,ARMv6T2
  520. reg32,reg32,reg32,reg32 \x15\x1\x20\xC ARM32,ARMv5TE
  521. [VLDMcc]
  522. memam4,reglist \x94\xEC\x10\xA THUMB32,VFPv2
  523. reg32,reglist \x94\xEC\x10\xA THUMB32,VFPv2
  524. memam4,reglist \x44\xC\x10\xA ARM32,VFPv2
  525. reg32,reglist \x44\xC\x10\xA ARM32,VFPv2
  526. [VSTMcc]
  527. memam4,reglist \x94\xEC\x00\xA THUMB32,VFPv2
  528. reg32,reglist \x94\xEC\x00\xA THUMB32,VFPv2
  529. memam4,reglist \x44\xC\x00\xA ARM32,VFPv2
  530. reg32,reglist \x44\xC\x00\xA ARM32,VFPv2
  531. [VPOP]
  532. reglist \x94\xEC\xBD\xA THUMB32,VFPv2
  533. reglist \x44\xC\xBD\xA ARM32,VFPv2
  534. [VPUSH]
  535. reglist \x94\xED\x2D\xA THUMB32,VFPv2
  536. reglist \x44\xD\x2D\xA ARM32,VFPv2
  537. [VLDRcc]
  538. vreg,memam2 \x95\xED\x10\xA THUMB32,VFPv2
  539. vreg,memam2 \x45\xD\x10\xA ARM32,VFPv2
  540. [VSTRcc]
  541. vreg,memam2 \x95\xED\x0\xA THUMB32,VFPv2
  542. vreg,memam2 \x45\xD\x0\xA ARM32,VFPv2
  543. [SMULBBcc]
  544. reg32,reg32,reg32 \x15\x01\x60\x8\x0 ARM32,ARMv5TE
  545. [SMULBTcc]
  546. reg32,reg32,reg32 \x15\x01\x60\xC\x0 ARM32,ARMv5TE
  547. [SMULTBcc]
  548. reg32,reg32,reg32 \x15\x01\x60\xA\x0 ARM32,ARMv5TE
  549. [SMULTTcc]
  550. reg32,reg32,reg32 \x15\x01\x60\xE\x0 ARM32,ARMv5TE
  551. [SMULWBcc]
  552. reg32,reg32,reg32 \x14\x1\x20\xA0 ARM32,ARMv5TE
  553. [SMULWTcc]
  554. reg32,reg32,reg32 \x14\x1\x20\xE0 ARM32,ARMv5TE
  555. [STRDcc]
  556. reg32,reg32,memam2 \x89\xE8\x40\x0\x0 THUMB32,ARMv6T2
  557. reg32,reg32,memam2 \x19\x0\x0\x0\xF0 ARM32,ARMv4
  558. [LDRHTcc]
  559. reg32,memam2 \x88\xF8\x30\xE\x0\0 THUMB32,ARMv6T2
  560. reg32,memam2 \x19\x0\x30\x0\xB0 ARM32,ARMv4
  561. [STRHTcc]
  562. reg32,memam2 \x88\xF8\x20\xE\x0\0 THUMB32,ARMv6T2
  563. reg32,memam2 \x88\xF8\x20\xE\x0\0 THUMB32,ARMv6T2
  564. reg32,memam2 \x1E\x0\x20\x0\xB0 ARM32,ARMv4
  565. [LDRSBTcc]
  566. reg32,memam2 \x88\xF9\x10\xE\x0\0 THUMB32,ARMv6T2
  567. reg32,memam2 \x1E\x0\x30\x0\xD0 ARM32,ARMv4
  568. [LDRSHTcc]
  569. reg32,memam2 \x88\xF9\x30\xE\x0\0 THUMB32,ARMv6T2
  570. reg32,memam2 \x1E\x0\x30\x0\xF0 ARM32,ARMv4
  571. [FSTDcc]
  572. [FSTMcc]
  573. [FSTScc]
  574. ; ARMv6
  575. [BFCcc]
  576. reg32,immshifter,immshifter \x84\xF3\x6F\x0\x0 THUMB32,ARMv6T2
  577. reg32,immshifter,imm32 \x84\xF3\x6F\x0\x0 THUMB32,ARMv6T2
  578. reg32,immshifter,immshifter \x2D\x7\xC0\x0\x1F ARM32,ARMv4
  579. reg32,immshifter,imm32 \x2D\x7\xC0\x0\x1F ARM32,ARMv4
  580. [BFIcc]
  581. reg32,reg32,immshifter,immshifter \x84\xF3\x60\x0\x0 THUMB32,ARMv6T2
  582. reg32,reg32,immshifter,imm32 \x84\xF3\x60\x0\x0 THUMB32,ARMv6T2
  583. reg32,reg32,immshifter,immshifter \x2D\x7\xC0\x0\x10 ARM32,ARMv4
  584. reg32,reg32,immshifter,imm32 \x2D\x7\xC0\x0\x10 ARM32,ARMv4
  585. [CLREX]
  586. void \x80\xF3\xBF\x8F\x2F THUMB32,ARMv7
  587. void \x2F\xF5\x7F\xF0\x1F ARM32,ARMv6K
  588. [LDREXcc]
  589. reg32,memam6 \x8A\xE8\x50\x0F\x00 THUMB32,ARMv6T2
  590. reg32,memam6 \x18\x01\x90\x0F\x9F ARM32,ARMv4
  591. [LDREXBcc]
  592. reg32,memam6 \x8A\xE8\xD0\x0F\x4F THUMB32,ARMv7
  593. reg32,memam6 \x18\x01\xD0\x0F\x9F ARM32,ARMv4
  594. [LDREXDcc]
  595. reg32,reg32,memam6 \x8A\xE8\xD0\x00\x7F THUMB32,ARMv7
  596. reg32,reg32,memam6 \x18\x01\xB0\x0F\x9F ARM32,ARMv4
  597. [LDREXHcc]
  598. reg32,memam6 \x8A\xE8\xD0\x0F\x5F THUMB32,ARMv7
  599. reg32,memam6 \x18\x01\xF0\x0F\x9F ARM32,ARMv4
  600. [STREXcc]
  601. reg32,reg32,memam6 \x8B\xE8\x40\x00\x00 THUMB32,ARMv6T2
  602. reg32,reg32,memam6 \x18\x01\x80\x0F\x90 ARM32,ARMv4
  603. [STREXBcc]
  604. reg32,reg32,memam6 \x8B\xE8\xC0\x0F\x40 THUMB32,ARMv7
  605. reg32,reg32,memam6 \x18\x01\xC0\x0F\x90 ARM32,ARMv4
  606. [STREXDcc]
  607. reg32,reg32,reg32,memam6 \x8B\xE8\xC0\x00\x70 THUMB32,ARMv7
  608. reg32,reg32,reg32,memam6 \x18\x01\xA0\x0F\x90 ARM32,ARMv4
  609. [STREXHcc]
  610. reg32,reg32,memam6 \x8B\xE8\xC0\x0F\x50 THUMB32,ARMv7
  611. reg32,reg32,memam6 \x18\x01\xE0\x0F\x90 ARM32,ARMv4
  612. [MLScc]
  613. reg32,reg32,reg32,reg32 \x80\xFB\x0\x0\x10 THUMB32,ARMv6T2
  614. reg32,reg32,reg32,reg32 \x15\x00\x60\x9 ARM32,ARMv6T2
  615. [PKHBTcc]
  616. reg32,reg32,reg32 \x80\xEA\xC0\x0\x0 THUMB32,ARMv6T2
  617. reg32,reg32,reg32,shifterop \x80\xEA\xC0\x0\x0 THUMB32,ARMv6T2
  618. reg32,reg32,reg32 \x16\x6\x80\x1 ARM32,ARMv6
  619. reg32,reg32,reg32,shifterop \x16\x6\x80\x1 ARM32,ARMv6
  620. [PKHTBcc]
  621. reg32,reg32,reg32 \x80\xEA\xC0\x0\x10 THUMB32,ARMv6T2
  622. reg32,reg32,reg32,shifterop \x80\xEA\xC0\x0\x10 THUMB32,ARMv6T2
  623. reg32,reg32,reg32 \x16\x6\x80\x1 ARM32,ARMv6
  624. reg32,reg32,reg32,shifterop \x16\x6\x80\x5 ARM32,ARMv6
  625. [PLI]
  626. memam2 \x87\xF9\x10\xF0\x0 THUMB32,ARMv7
  627. memam2 \x25\xF4\x50\xF0\x0 ARM32,ARMv7
  628. [QADD16cc]
  629. reg32,reg32,reg32 \x80\xFA\x90\xF0\x10 THUMB32,ARMv6T2
  630. reg32,reg32,reg32 \x16\x06\x20\xF1 ARM32,ARMv6
  631. [QADD8cc]
  632. reg32,reg32,reg32 \x80\xFA\x80\xF0\x10 THUMB32,ARMv6T2
  633. reg32,reg32,reg32 \x16\x06\x20\xF9 ARM32,ARMv6
  634. [QASXcc]
  635. reg32,reg32,reg32 \x80\xFA\xA0\xF0\x10 THUMB32,ARMv6T2
  636. reg32,reg32,reg32 \x16\x06\x20\xF3 ARM32,ARMv6
  637. [QSAXcc]
  638. reg32,reg32,reg32 \x80\xFA\xE0\xF0\x10 THUMB32,ARMv6T2
  639. reg32,reg32,reg32 \x16\x06\x20\xF5 ARM32,ARMv6
  640. [QSUB16cc]
  641. reg32,reg32,reg32 \x80\xFA\xD0\xF0\x10 THUMB32,ARMv6T2
  642. reg32,reg32,reg32 \x16\x06\x20\xF7 ARM32,ARMv6
  643. [QSUB8cc]
  644. reg32,reg32,reg32 \x80\xFA\xC0\xF0\x10 THUMB32,ARMv6T2
  645. reg32,reg32,reg32 \x16\x06\x20\xFF ARM32,ARMv6
  646. [RBITcc]
  647. reg32,reg32 \x80\xFA\x90\xF0\xA0 THUMB32,ARMv6T2
  648. reg32,reg32 \x32\x6\xFF\xF\x30 ARM32,ARMv6T2
  649. [REVcc]
  650. reglo,reglo \x61\xBA\x00 THUMB,ARMv6
  651. reg32,reg32 \x80\xFA\x90\xF0\x80 THUMB32,WIDE,ARMv6T2
  652. reg32,reg32 \x32\x6\xBF\xF\x30 ARM32,ARMv6
  653. [REV16cc]
  654. reglo,reglo \x61\xBA\x40 THUMB,ARMv6
  655. reg32,reg32 \x80\xFA\x90\xF0\x90 THUMB32,WIDE,ARMv6T2
  656. reg32,reg32 \x32\x6\xBF\xF\xB0 ARM32,ARMv6
  657. [REVSHcc]
  658. reglo,reglo \x61\xBA\xC0 THUMB,ARMv6
  659. reg32,reg32 \x80\xFA\x90\xF0\xB0 THUMB32,WIDE,ARMv6T2
  660. reg32,reg32 \x32\x6\xFF\xF\xB0 ARM32,ARMv6
  661. [SADD16cc]
  662. reg32,reg32,reg32 \x80\xFA\90\xF0\x0 THUMB32,ARMv6T2
  663. reg32,reg32,reg32 \x16\x06\x10\xF1 ARM32,ARMv6
  664. [SADD8cc]
  665. reg32,reg32,reg32 \x80\xFA\80\xF0\x0 THUMB32,ARMv6T2
  666. reg32,reg32,reg32 \x16\x06\x10\xF9 ARM32,ARMv6
  667. [SASXcc]
  668. reg32,reg32,reg32 \x80\xFA\A0\xF0\x0 THUMB32,ARMv6T2
  669. reg32,reg32,reg32 \x16\x06\x10\xF3 ARM32,ARMv6
  670. [SBFXcc]
  671. reg32,reg32,immshifter,immshifter \x84\xF3\x40\x0\x0 THUMB32,ARMv6T2
  672. reg32,reg32,immshifter,immshifter \x2D\x7\xA0\x0\x50 ARM32,ARMv6T2
  673. [SELcc]
  674. reg32,reg32,reg32 \x80\xFA\xA0\xF0\x80 THUMB32,ARMv6T2
  675. reg32,reg32,reg32 \x16\x06\x80\xFB ARM32,ARMv6
  676. [SETEND]
  677. immshifter \x2B\xF1\x01\x0\x0 ARM32,ARMv6
  678. [SEVcc]
  679. void \x64\xBF\x40 THUMB,ARMv7
  680. void \x2F\x3\x20\xF0\x4 ARM32,ARMv6K
  681. [ASRcc]
  682. reglo,immshifter \x60\x1\x0 THUMB,ARMv4T
  683. reglo,reglo,immshifter \x60\x1\x0 THUMB,ARMv4T
  684. reglo,reglo \x6B\x41\x0 THUMB,ARMv4T
  685. reg32,immshifter \x82\xEA\x4F\x0\x20 THUMB32,WIDE,ARMv6T2
  686. reg32,reg32,immshifter \x82\xEA\x4F\x0\x20 THUMB32,WIDE,ARMv6T2
  687. reg32,reg32 \x80\xFA\x40\xF0\x0 THUMB32,WIDE,ARMv6T2
  688. reg32,reg32,reg32 \x80\xFA\x40\xF0\x0 THUMB32,WIDE,ARMv6T2
  689. reg32,reg32,reg32 \x30\x1\xA0\x0\x50 ARM32,ARMv4
  690. reg32,reg32,immshifter \x30\x1\xA0\x0\x40 ARM32,ARMv4
  691. [LSRcc]
  692. reglo,immshifter \x60\x8\x0 THUMB,ARMv4T
  693. reglo,reglo,immshifter \x60\x8\x0 THUMB,ARMv4T
  694. reglo,reglo \x6B\x40\xC0 THUMB,ARMv4T
  695. reg32,immshifter \x82\xEA\x4F\x0\x10 THUMB32,WIDE,ARMv6T2
  696. reg32,reg32,immshifter \x82\xEA\x4F\x0\x10 THUMB32,WIDE,ARMv6T2
  697. reg32,reg32 \x80\xFA\x20\xF0\x0 THUMB32,WIDE,ARMv6T2
  698. reg32,reg32,reg32 \x80\xFA\x20\xF0\x0 THUMB32,WIDE,ARMv6T2
  699. reg32,reg32,reg32 \x30\x1\xA0\x0\x30 ARM32,ARMv4
  700. reg32,reg32,immshifter \x30\x1\xA0\x0\x20 ARM32,ARMv4
  701. [LSLcc]
  702. reglo,immshifter \x60\x0\x0 THUMB,ARMv4T
  703. reglo,reglo,immshifter \x60\x0\x0 THUMB,ARMv4T
  704. reglo,reglo \x6B\x40\x80 THUMB,ARMv4T
  705. reg32,immshifter \x82\xEA\x4F\x0\x00 THUMB32,WIDE,ARMv6T2
  706. reg32,reg32,immshifter \x82\xEA\x4F\x0\x00 THUMB32,WIDE,ARMv6T2
  707. reg32,reg32 \x80\xFA\x60\xF0\x0 THUMB32,WIDE,ARMv6T2
  708. reg32,reg32,reg32 \x80\xFA\x60\xF0\x0 THUMB32,WIDE,ARMv6T2
  709. reg32,reg32,reg32 \x30\x1\xA0\x0\x10 ARM32,ARMv4
  710. reg32,reg32,immshifter \x30\x1\xA0\x0\x00 ARM32,ARMv4
  711. [RORcc]
  712. reglo,reglo \x6B\x41\xC0 THUMB,ARMv4T
  713. reg32,immshifter \x82\xEA\x4F\x0\x30 THUMB32,WIDE,ARMv6T2
  714. reg32,reg32,immshifter \x82\xEA\x4F\x0\x30 THUMB32,WIDE,ARMv6T2
  715. reg32,reg32 \x80\xFA\x60\xF0\x0 THUMB32,WIDE,ARMv6T2
  716. reg32,reg32,reg32 \x80\xFA\x60\xF0\x0 THUMB32,WIDE,ARMv6T2
  717. reg32,reg32,reg32 \x30\x1\xA0\x0\x70 ARM32,ARMv4
  718. reg32,reg32,immshifter \x30\x1\xA0\x0\x60 ARM32,ARMv4
  719. [RRXcc]
  720. reg32,reg32 \x80\xEA\x4F\x00\x30 THUMB32,ARMv6T2
  721. reg32,reg32 \x30\x1\xA0\x0\x60 ARM32,ARMv4
  722. [UMAALcc]
  723. reg32,reg32,reg32,reg32 \x85\xFB\xE0\x0\x60 THUMB32,ARMv6T2
  724. reg32,reg32,reg32,reg32 \x16\x0\x40\x9 ARM32,ARMv6
  725. [SHADD16cc]
  726. reg32,reg32,reg32 \x80\xFA\x90\xF0\x20 THUMB32,ARMv6T2
  727. reg32,reg32,reg32 \x16\x06\x30\xF1 ARM32,ARMv6
  728. [SHADD8cc]
  729. reg32,reg32,reg32 \x80\xFA\x80\xF0\x20 THUMB32,ARMv6T2
  730. reg32,reg32,reg32 \x16\x06\x30\xF9 ARM32,ARMv6
  731. [SHASXcc]
  732. reg32,reg32,reg32 \x80\xFA\xA0\xF0\x20 THUMB32,ARMv6T2
  733. reg32,reg32,reg32 \x16\x06\x30\xF3 ARM32,ARMv6
  734. [SHSAXcc]
  735. reg32,reg32,reg32 \x80\xFA\xE0\xF0\x20 THUMB32,ARMv6T2
  736. reg32,reg32,reg32 \x16\x06\x30\xF5 ARM32,ARMv6
  737. [SHSUB16cc]
  738. reg32,reg32,reg32 \x80\xFA\xD0\xF0\x20 THUMB32,ARMv6T2
  739. reg32,reg32,reg32 \x16\x06\x30\xF7 ARM32,ARMv6
  740. [SHSUB8cc]
  741. reg32,reg32,reg32 \x80\xFA\xC0\xF0\x20 THUMB32,ARMv6T2
  742. reg32,reg32,reg32 \x16\x06\x30\xFF ARM32,ARMv6
  743. [SMLADcc]
  744. reg32,reg32,reg32,reg32 \x80\xFB\x20\x0\x00 THUMB32,ARMv6T2
  745. reg32,reg32,reg32,reg32 \x15\x7\x00\x1 ARM32,ARMv6
  746. [SMLALDcc]
  747. reg32,reg32,reg32,reg32 \x85\xFB\xC0\x0\xC0 THUMB32,ARMv6T2
  748. reg32,reg32,reg32,reg32 \x16\x7\x40\x1 ARM32,ARMv4
  749. [SMLSDcc]
  750. reg32,reg32,reg32,reg32 \x80\xFB\x40\x0\x00 THUMB32,ARMv6T2
  751. reg32,reg32,reg32,reg32 \x15\x7\x00\x5 ARM32,ARMv6
  752. [SMLSLDcc]
  753. reg32,reg32,reg32,reg32 \x85\xFB\xD0\x0\xC0 THUMB32,ARMv6T2
  754. reg32,reg32,reg32,reg32 \x16\x7\x40\x5 ARM32,ARMv6
  755. [SMMLAcc]
  756. reg32,reg32,reg32,reg32 \x80\xFB\x50\x0\x00 THUMB32,ARMv6T2
  757. reg32,reg32,reg32,reg32 \x15\x7\x50\x1 ARM32,ARMv6
  758. [SMMLScc]
  759. reg32,reg32,reg32,reg32 \x80\xFB\x60\x0\x00 THUMB32,ARMv6T2
  760. reg32,reg32,reg32,reg32 \x15\x7\x50\xD ARM32,ARMv6
  761. [SMMULcc]
  762. reg32,reg32,reg32 \x80\xFB\x50\xF0\x0 THUMB32,ARMv6T2
  763. reg32,reg32,reg32 \x15\x7\x50\x1\xF ARM32,ARMv6
  764. [SMUADcc]
  765. reg32,reg32,reg32 \x80\xFB\x20\xF0\x0 THUMB32,ARMv6T2
  766. reg32,reg32,reg32 \x15\x7\x00\x1\xF ARM32,ARMv6
  767. [SMUSDcc]
  768. reg32,reg32,reg32 \x80\xFB\x40\xF0\x0 THUMB32,ARMv6T2
  769. reg32,reg32,reg32 \x15\x7\x00\x5\xF ARM32,ARMv6
  770. [SRScc]
  771. [SSATcc]
  772. reg32,immshifter,reg32 \x83\xF3\x00\x0\x0 THUMB32,ARMv6T2
  773. reg32,immshifter,reg32,shifterop \x83\xF3\x00\x0\x0 THUMB32,ARMv6T2
  774. reg32,immshifter,reg32 \x2A\x6\xA0\x0\x10 ARM32,ARMv6
  775. reg32,immshifter,reg32,shifterop \x2A\x6\xA0\x0\x10 ARM32,ARMv6
  776. [SSAT16cc]
  777. reg32,immshifter,reg32 \x83\xF3\x20\x0\x0 THUMB32,ARMv6T2
  778. reg32,immshifter,reg32 \x2A\x6\xA0\xF\x30 ARM32,ARMv6
  779. [SSAXcc]
  780. reg32,reg32,reg32 \x80\xFA\xE0\xF0\x0 THUMB32,ARMv6T2
  781. reg32,reg32,reg32 \x16\x06\x10\xF5 ARM32,ARMv6
  782. [SSUB16cc]
  783. reg32,reg32,reg32 \x80\xFA\xD0\xF0\x0 THUMB32,ARMv6T2
  784. reg32,reg32,reg32 \x16\x06\x10\xF7 ARM32,ARMv6
  785. [SSUB8cc]
  786. reg32,reg32,reg32 \x80\xFA\xC0\xF0\x0 THUMB32,ARMv6T2
  787. reg32,reg32,reg32 \x16\x06\x10\xFF ARM32,ARMv6
  788. [SXTABcc]
  789. reg32,reg32,reg32 \x86\xFA\x40\xF0\x80 THUMB32,ARMv6T2
  790. reg32,reg32,reg32,shifterop \x86\xFA\x40\xF0\x80 THUMB32,ARMv6T2
  791. reg32,reg32,reg32 \x16\x06\xA0\x07 ARM32,ARMv6
  792. reg32,reg32,reg32,shifterop \x16\x06\xA0\x07 ARM32,ARMv6
  793. [SXTAB16cc]
  794. reg32,reg32,reg32 \x86\xFA\x20\xF0\x80 THUMB32,ARMv6T2
  795. reg32,reg32,reg32,shifterop \x86\xFA\x20\xF0\x80 THUMB32,ARMv6T2
  796. reg32,reg32,reg32 \x16\x06\x80\x07 ARM32,ARMv6
  797. reg32,reg32,reg32,shifterop \x16\x06\x80\x07 ARM32,ARMv6
  798. [SXTAHcc]
  799. reg32,reg32,reg32 \x86\xFA\x00\xF0\x80 THUMB32,ARMv6T2
  800. reg32,reg32,reg32,shifterop \x86\xFA\x00\xF0\x80 THUMB32,ARMv6T2
  801. reg32,reg32,reg32 \x16\x06\xB0\x07 ARM32,ARMv6
  802. reg32,reg32,reg32,shifterop \x16\x06\xB0\x07 ARM32,ARMv6
  803. [UBFXcc]
  804. reg32,reg32,immshifter,immshifter \x84\xF3\xC0\x0\x0 THUMB32,ARMv6T2
  805. reg32,reg32,immshifter,immshifter \x2D\x7\xE0\x0\x50 ARM32,ARMv4
  806. [UXTABcc]
  807. reg32,reg32,reg32 \x86\xFA\x50\xF0\x80 THUMB32,ARMv6T2
  808. reg32,reg32,reg32,shifterop \x86\xFA\x50\xF0\x80 THUMB32,ARMv6T2
  809. reg32,reg32,reg32 \x16\x6\xE0\x7 ARM32,ARMv6
  810. reg32,reg32,reg32,shifterop \x16\x6\xE0\x7 ARM32,ARMv6
  811. [UXTAB16cc]
  812. reg32,reg32,reg32 \x86\xFA\x30\xF0\x80 THUMB32,ARMv6T2
  813. reg32,reg32,reg32,shifterop \x86\xFA\x30\xF0\x80 THUMB32,ARMv6T2
  814. reg32,reg32,reg32 \x86\xFA\x40\xF0\x80 THUMB32,ARMv6T2
  815. reg32,reg32,reg32,shifterop \x86\xFA\x40\xF0\x80 THUMB32,ARMv6T2
  816. reg32,reg32,reg32 \x16\x6\xC0\x7 ARM32,ARMv6
  817. reg32,reg32,reg32,shifterop \x16\x6\xC0\x7 ARM32,ARMv6
  818. [UXTAHcc]
  819. reg32,reg32,reg32 \x86\xFA\x10\xF0\x80 THUMB32,ARMv6T2
  820. reg32,reg32,reg32,shifterop \x86\xFA\x10\xF0\x80 THUMB32,ARMv6T2
  821. reg32,reg32,reg32 \x16\x6\xF0\x7 ARM32,ARMv6
  822. reg32,reg32,reg32,shifterop \x16\x6\xF0\x7 ARM32,ARMv6
  823. [SXTBcc]
  824. reglo,reglo \x61\xB2\x40 THUMB,ARMv6
  825. reg32,reg32 \x86\xFA\x4F\xF0\x80 THUMB32,WIDE,ARMv6T2
  826. reg32,reg32,shifterop \x86\xFA\x4F\xF0\x80 THUMB32,WIDE,ARMv6T2
  827. reg32,reg32 \x1B\x6\xAF\x7 ARM32,ARMv6
  828. reg32,reg32,shifterop \x1B\x6\xAF\x7 ARM32,ARMv6
  829. [SXTB16cc]
  830. reg32,reg32 \x86\xFA\x2F\xF0\x80 THUMB32,ARMv6T2
  831. reg32,reg32,shifterop \x86\xFA\x2F\xF0\x80 THUMB32,ARMv6T2
  832. reg32,reg32 \x1B\x6\x8F\x7 ARM32,ARMv6
  833. reg32,reg32,shifterop \x1B\x6\x8F\x7 ARM32,ARMv6
  834. [SXTHcc]
  835. reglo,reglo \x61\xB2\x00 THUMB,ARMv6
  836. reg32,reg32 \x86\xFA\x0F\xF0\x80 THUMB32,WIDE,ARMv6T2
  837. reg32,reg32,shifterop \x86\xFA\x0F\xF0\x80 THUMB32,WIDE,ARMv6T2
  838. reg32,reg32 \x1B\x6\xBF\x7 ARM32,ARMv6
  839. reg32,reg32,shifterop \x1B\x6\xBF\x7 ARM32,ARMv6
  840. [UXTBcc]
  841. reglo,reglo \x61\xB2\xC0 THUMB,ARMv6
  842. reg32,reg32 \x86\xFA\x5F\xF0\x80 THUMB32,WIDE,ARMv6T2
  843. reg32,reg32,shifterop \x86\xFA\x5F\xF0\x80 THUMB32,WIDE,ARMv6T2
  844. reg32,reg32 \x1B\x6\xEF\x7 ARM32,ARMv6
  845. reg32,reg32,shifterop \x1B\x6\xEF\x7 ARM32,ARMv6
  846. [UXTB16cc]
  847. reg32,reg32 \x86\xFA\x3F\xF0\x80 THUMB32,ARMv6T2
  848. reg32,reg32,shifterop \x86\xFA\x3F\xF0\x80 THUMB32,ARMv6T2
  849. reg32,reg32 \x1B\x6\xCF\x7 ARM32,ARMv6
  850. reg32,reg32,shifterop \x1B\x6\xCF\x7 ARM32,ARMv6
  851. [UXTHcc]
  852. reglo,reglo \x61\xB2\x80 THUMB,ARMv6
  853. reg32,reg32 \x86\xFA\x1F\xF0\x80 THUMB32,WIDE,ARMv6T2
  854. reg32,reg32,shifterop \x86\xFA\x1F\xF0\x80 THUMB32,WIDE,ARMv6T2
  855. reg32,reg32 \x1B\x6\xFF\x7 ARM32,ARMv6
  856. reg32,reg32,shifterop \x1B\x6\xFF\x7 ARM32,ARMv6
  857. [UADD16cc]
  858. reg32,reg32,reg32 \x80\xFA\x90\xF0\x40 THUMB32,ARMv6T2
  859. reg32,reg32,reg32 \x16\x06\x50\xF1 ARM32,ARMv6
  860. [UADD8cc]
  861. reg32,reg32,reg32 \x80\xFA\x80\xF0\x40 THUMB32,ARMv6T2
  862. reg32,reg32,reg32 \x16\x06\x50\xF9 ARM32,ARMv6
  863. [UASXcc]
  864. reg32,reg32,reg32 \x80\xFA\xA0\xF0\x40 THUMB32,ARMv6T2
  865. reg32,reg32,reg32 \x16\x06\x50\xF3 ARM32,ARMv6
  866. [UHADD16cc]
  867. reg32,reg32,reg32 \x80\xFA\x90\xF0\x60 THUMB32,ARMv6T2
  868. reg32,reg32,reg32 \x16\x06\x70\xF1 ARM32,ARMv6
  869. [UHADD8cc]
  870. reg32,reg32,reg32 \x80\xFA\x80\xF0\x60 THUMB32,ARMv6T2
  871. reg32,reg32,reg32 \x16\x06\x70\xF9 ARM32,ARMv6
  872. [UHASXcc]
  873. reg32,reg32,reg32 \x80\xFA\xA0\xF0\x60 THUMB32,ARMv6T2
  874. reg32,reg32,reg32 \x16\x06\x70\xF3 ARM32,ARMv6
  875. [UHSAXcc]
  876. reg32,reg32,reg32 \x80\xFA\xE0\xF0\x60 THUMB32,ARMv6T2
  877. reg32,reg32,reg32 \x16\x06\x70\xF5 ARM32,ARMv6
  878. [UHSUB16cc]
  879. reg32,reg32,reg32 \x80\xFA\xD0\xF0\x60 THUMB32,ARMv6T2
  880. reg32,reg32,reg32 \x16\x06\x70\xF7 ARM32,ARMv6
  881. [UHSUB8cc]
  882. reg32,reg32,reg32 \x80\xFA\xC0\xF0\x60 THUMB32,ARMv6T2
  883. reg32,reg32,reg32 \x16\x06\x70\xFF ARM32,ARMv6
  884. [UQADD16cc]
  885. reg32,reg32,reg32 \x80\xFA\x90\xF0\x50 THUMB32,ARMv6T2
  886. reg32,reg32,reg32 \x16\x06\x60\xF1 ARM32,ARMv6
  887. [UQADD8]
  888. reg32,reg32,reg32 \x80\xFA\x80\xF0\x50 THUMB32,ARMv6T2
  889. reg32,reg32,reg32 \x16\x06\x60\xF9 ARM32,ARMv6
  890. [UQASXcc]
  891. reg32,reg32,reg32 \x80\xFA\xA0\xF0\x50 THUMB32,ARMv6T2
  892. reg32,reg32,reg32 \x16\x06\x60\xF3 ARM32,ARMv6
  893. [UQSAXcc]
  894. reg32,reg32,reg32 \x80\xFA\xE0\xF0\x50 THUMB32,ARMv6T2
  895. reg32,reg32,reg32 \x16\x06\x60\xF5 ARM32,ARMv6
  896. [UQSUB16cc]
  897. reg32,reg32,reg32 \x80\xFA\xD0\xF0\x50 THUMB32,ARMv6T2
  898. reg32,reg32,reg32 \x16\x06\x60\xF7 ARM32,ARMv6
  899. [UQSUB8cc]
  900. reg32,reg32,reg32 \x80\xFA\xC0\xF0\x50 THUMB32,ARMv6T2
  901. reg32,reg32,reg32 \x16\x06\x60\xFF ARM32,ARMv6
  902. [USAD8cc]
  903. reg32,reg32,reg32 \x80\xFB\x70\xF0\x00 THUMB32,ARMv6T2
  904. reg32,reg32,reg32 \x15\x07\x80\x01\xF ARM32,ARMv6
  905. [USADA8cc]
  906. reg32,reg32,reg32,reg32 \x80\xFB\x70\x0\x00 THUMB32,ARMv6T2
  907. reg32,reg32,reg32,reg32 \x15\x07\x80\x01 ARM32,ARMv6
  908. [USATcc]
  909. reg32,immshifter,reg32 \x83\xF3\x80\x0\x0 THUMB32,ARMv6T2
  910. reg32,immshifter,reg32,shifterop \x83\xF3\x80\x0\x0 THUMB32,ARMv6T2
  911. reg32,immshifter,reg32 \x2A\x6\xE0\x0\x10 ARM32,ARMv6
  912. reg32,immshifter,reg32,shifterop \x2A\x6\xE0\x0\x10 ARM32,ARMv6
  913. [USAT16cc]
  914. reg32,immshifter,reg32 \x83\xF3\xA0\x0\x0 THUMB32,ARMv6T2
  915. reg32,immshifter,reg32 \x2A\x6\xE0\xF\x30 ARM32,ARMv6
  916. [USAXcc]
  917. reg32,reg32,reg32 \x80\xFA\xE0\xF0\x40 THUMB32,ARMv6T2
  918. reg32,reg32,reg32 \x16\x06\x50\xF5 ARM32,ARMv6
  919. [USUB16cc]
  920. reg32,reg32,reg32 \x80\xFA\xD0\xF0\x40 THUMB32,ARMv6T2
  921. reg32,reg32,reg32 \x16\x06\x50\xF7 ARM32,ARMv6
  922. [USUB8cc]
  923. reg32,reg32,reg32 \x80\xFA\xC0\xF0\x40 THUMB32,ARMv6T2
  924. reg32,reg32,reg32 \x16\x06\x50\xFF ARM32,ARMv6
  925. [WFEcc]
  926. void \x64\xBF\x20 THUMB,ARMv7
  927. void \x2F\x3\x20\xF0\x2 ARM32,ARMv6K
  928. [WFIcc]
  929. void \x64\xBF\x30 THUMB,ARMv7
  930. void \x2F\x3\x20\xF0\x3 ARM32,ARMv6K
  931. [YIELDcc]
  932. void \x64\xBF\x10 THUMB,ARMv7
  933. void \x2F\x3\x20\xF0\x1 ARM32,ARMv6K
  934. ;
  935. ; vfp instructions
  936. ;
  937. [FABSDcc]
  938. [FABSScc]
  939. [FADDDcc]
  940. [FADDScc]
  941. [FCMPDcc]
  942. [FCMPEDcc]
  943. [FCMPEScc]
  944. [FCMPEZDcc]
  945. [FCMPEZScc]
  946. [FCMPScc]
  947. [FCMPZDcc]
  948. [FCMPZScc]
  949. [FCPYDcc]
  950. [FCPYScc]
  951. [FCVTDScc]
  952. [FCVTSDcc]
  953. [FDIVDcc]
  954. [FDIVScc]
  955. [FLDDcc]
  956. [FLDMcc]
  957. [FLDScc]
  958. [FMACDcc]
  959. [FMACScc]
  960. [FMDHRcc]
  961. [FMDLRcc]
  962. [FMRDHcc]
  963. [FMRDLcc]
  964. [FMRScc]
  965. [FMRXcc]
  966. [FMSCDcc]
  967. [FMSCScc]
  968. [FMSRcc]
  969. [FMSTATcc]
  970. [FMULDcc]
  971. [FMULScc]
  972. [FMXRcc]
  973. [FNEGDcc]
  974. [FNEGScc]
  975. [FNMACDcc]
  976. [FNMACScc]
  977. [FNMSCDcc]
  978. [FNMSCScc]
  979. [FNMULDcc]
  980. [FNMULScc]
  981. [FSITODcc]
  982. [FSITOScc]
  983. [FSQRTDcc]
  984. [FSQRTScc]
  985. [FSUBDcc]
  986. [FSUBScc]
  987. [FTOSIDcc]
  988. [FTOSIScc]
  989. [FTOUIDcc]
  990. [FTOUIScc]
  991. [FUITODcc]
  992. [FUITOScc]
  993. [FMDRRcc]
  994. [FMRRDcc]
  995. ; Thumb-2
  996. [POP]
  997. reglist \x69\xBC THUMB,ARMv4T
  998. reglist \x26\x8B ARM32,ARMv4
  999. [PUSH]
  1000. reglist \x69\xB4 THUMB,ARMv4T
  1001. reglist \x26\x80 ARM32,ARMv4
  1002. [SDIVcc]
  1003. reg32,reg32,reg32 \x80\xFB\x90\xF0\xF0 THUMB32,ARMv7R,ARMv7M
  1004. reg32,reg32,reg32 \x15\x07\x10\x01\xF ARM32,ARMv7
  1005. [UDIVcc]
  1006. reg32,reg32,reg32 \x80\xFB\xB0\xF0\xF0 THUMB32,ARMv7R,ARMv7M
  1007. reg32,reg32,reg32 \x15\x07\x30\x01\xF ARM32,ARMv7
  1008. [MOVTcc]
  1009. reg32,imm \x81\xF2\xC0\x0\x0 THUMB32,ARMv6T2
  1010. reg32,immshifter \x81\xF2\xC0\x0\x0 THUMB32,ARMv6T2
  1011. reg32,imm \x2C\x3\x40 ARM32,ARMv6T2
  1012. reg32,immshifter \x2C\x3\x40 ARM32,ARMv6T2
  1013. [IT]
  1014. condition \x6A\xBF\x08\x00 THUMB,ARMv6T2
  1015. condition \xFE ARM32,ARMv4
  1016. [ITE]
  1017. condition \x6A\xBF\x04\x88 THUMB,ARMv6T2
  1018. condition \xFE ARM32,ARMv4
  1019. [ITT]
  1020. condition \x6A\xBF\x04\x08 THUMB,ARMv6T2
  1021. condition \xFE ARM32,ARMv4
  1022. [ITEE]
  1023. condition \x6A\xBF\x02\xCC THUMB,ARMv6T2
  1024. condition \xFE ARM32,ARMv4
  1025. [ITTE]
  1026. condition \x6A\xBF\x02\x4C THUMB,ARMv6T2
  1027. condition \xFE ARM32,ARMv4
  1028. [ITET]
  1029. condition \x6A\xBF\x02\x8C THUMB,ARMv6T2
  1030. condition \xFE ARM32,ARMv4
  1031. [ITTT]
  1032. condition \x6A\xBF\x02\x0C THUMB,ARMv6T2
  1033. condition \xFE ARM32,ARMv4
  1034. [ITEEE]
  1035. condition \x6A\xBF\x01\xEE THUMB,ARMv6T2
  1036. condition \xFE ARM32,ARMv4
  1037. [ITTEE]
  1038. condition \x6A\xBF\x01\x6E THUMB,ARMv6T2
  1039. condition \xFE ARM32,ARMv4
  1040. [ITETE]
  1041. condition \x6A\xBF\x01\xAE THUMB,ARMv6T2
  1042. condition \xFE ARM32,ARMv4
  1043. [ITTTE]
  1044. condition \x6A\xBF\x01\x2E THUMB,ARMv6T2
  1045. condition \xFE ARM32,ARMv4
  1046. [ITEET]
  1047. condition \x6A\xBF\x01\xCE THUMB,ARMv6T2
  1048. condition \xFE ARM32,ARMv4
  1049. [ITTET]
  1050. condition \x6A\xBF\x01\x4E THUMB,ARMv6T2
  1051. condition \xFE ARM32,ARMv4
  1052. [ITETT]
  1053. condition \x6A\xBF\x01\x8E THUMB,ARMv6T2
  1054. condition \xFE ARM32,ARMv4
  1055. [ITTTT]
  1056. condition \x6A\xBF\x01\x0E THUMB,ARMv6T2
  1057. condition \xFE ARM32,ARMv4
  1058. [TBBcc]
  1059. memam2 \x8E\xE8\xD0\xF0\x00 THUMB32,ARMv6T2
  1060. [TBHcc]
  1061. memam2 \x8E\xE8\xD0\xF0\x10 THUMB32,ARMv6T2
  1062. [MOVW]
  1063. reg32,imm32 \x2C\x3\x0 ARM32,ARMv6T2
  1064. reg32,immshifter \x2C\x3\x0 ARM32,ARMv6T2
  1065. reg32,imm32 \x81\xF2\x40\x0\x0 THUMB32,ARMv6T2
  1066. reg32,immshifter \x81\xF2\x40\x0\x0 THUMB32,ARMv6T2
  1067. [CBZ]
  1068. reglo,immshifter \x68\xB1 THUMB,ARMv6T2
  1069. reglo,memam2 \x68\xB1 THUMB,ARMv6T2
  1070. [CBNZ]
  1071. reglo,immshifter \x68\xB9 THUMB,ARMv6T2
  1072. reglo,memam2 \x68\xB9 THUMB,ARMv6T2
  1073. ; VFP
  1074. [VABScc]
  1075. vreg,vreg \x92\xEE\xB0\xA\xC0 THUMB32,VFPv2
  1076. vreg,vreg \x42\xE\xB0\xA\xC0 ARM32,VFPv2
  1077. [VADDcc]
  1078. vreg,vreg,vreg \x92\xEE\x30\xA\x0 THUMB32,VFPv2
  1079. vreg,vreg,vreg \x42\xE\x30\xA\x0 ARM32,VFPv2
  1080. [VCMPcc]
  1081. vreg,vreg \x92\xEE\xB4\xA\x40 THUMB32,VFPv2
  1082. vreg,immshifter \x92\xEE\xB5\xA\x40 THUMB32,VFPv2
  1083. vreg,vreg \x42\xE\xB4\xA\x40 ARM32,VFPv2
  1084. vreg,immshifter \x42\xE\xB5\xA\x40 ARM32,VFPv2
  1085. [VCMPEcc]
  1086. vreg,vreg \x92\xEE\xB4\xA\xC0 THUMB32,VFPv2
  1087. vreg,immshifter \x92\xEE\xB5\xA\xC0 THUMB32,VFPv2
  1088. vreg,vreg \x42\xE\xB4\xA\xC0 ARM32,VFPv2
  1089. vreg,immshifter \x42\xE\xB5\xA\xC0 ARM32,VFPv2
  1090. [VCVTcc]
  1091. vreg,vreg \x93\xEE\xB8\xA\xC0 THUMB32,VFPv2
  1092. vreg,vreg,immshifter \x93\xEE\xBA\xA\x40 THUMB32,VFPv3
  1093. vreg,vreg \x43\xE\xB8\xA\xC0 ARM32,VFPv2
  1094. vreg,vreg,immshifter \x43\xE\xBA\xA\x40 ARM32,VFPv3
  1095. [VCVTRcc]
  1096. vreg,vreg \x93\xEE\xB8\xA\x40 THUMB32,VFPv2
  1097. vreg,vreg \x43\xE\xB8\xA\x40 ARM32,VFPv2
  1098. [VDIVcc]
  1099. vreg,vreg,vreg \x92\xEE\x80\xA\x0 THUMB32,VFPv2
  1100. vreg,vreg,vreg \x42\xE\x80\xA\x0 ARM32,VFPv2
  1101. [VMRScc]
  1102. reg32,regf \x91\xEE\xF0\xA\x10 THUMB32,VFPv2
  1103. regf,regf \x91\xEE\xF0\xA\x10 THUMB32,VFPv2
  1104. reg32,regf \x41\xE\xF0\xA\x10 ARM32,VFPv2
  1105. regf,regf \x41\xE\xF0\xA\x10 ARM32,VFPv2
  1106. [VMSRcc]
  1107. regf,reg32 \x91\xEE\xE0\xA\x10 THUMB32,VFPv2
  1108. regf,reg32 \x41\xE\xE0\xA\x10 ARM32,VFPv2
  1109. [VMLAcc]
  1110. vreg,vreg,vreg \x92\xEE\x0\xA\x00 THUMB32,VFPv2
  1111. vreg,vreg,vreg \x42\xE\x0\xA\x00 ARM32,VFPv2
  1112. [VMLScc]
  1113. vreg,vreg,vreg \x92\xEE\x0\xA\x40 THUMB32,VFPv2
  1114. vreg,vreg,vreg \x42\xE\x0\xA\x40 ARM32,VFPv2
  1115. [VMULcc]
  1116. vreg,vreg,vreg \x92\xEE\x20\xA\x0 THUMB32,VFPv2
  1117. vreg,vreg,vreg \x42\xE\x20\xA\x0 ARM32,VFPv2
  1118. [VNMLAcc]
  1119. vreg,vreg,vreg \x92\xEE\x10\xA\x40 THUMB32,VFPv2
  1120. vreg,vreg,vreg \x42\xE\x10\xA\x40 ARM32,VFPv2
  1121. [VNMLScc]
  1122. vreg,vreg,vreg \x92\xEE\x10\xA\x00 THUMB32,VFPv2
  1123. vreg,vreg,vreg \x42\xE\x10\xA\x00 ARM32,VFPv2
  1124. [VNMULcc]
  1125. vreg,vreg,vreg \x92\xEE\x20\xA\x40 THUMB32,VFPv2
  1126. vreg,vreg,vreg \x42\xE\x20\xA\x40 ARM32,VFPv2
  1127. [VFMA]
  1128. [VFMS]
  1129. [VFNMA]
  1130. [VFNMS]
  1131. [VNEGcc]
  1132. vreg,vreg \x92\xEE\xB1\xA\x40 THUMB32,VFPv2
  1133. vreg,vreg \x42\xE\xB1\xA\x40 ARM32,VFPv2
  1134. [VSQRT]
  1135. vreg,vreg \x92\xEE\xB1\xA\xC0 THUMB32,VFPv2
  1136. vreg,vreg \x42\xE\xB1\xA\xC0 ARM32,VFPv2
  1137. [VSUB]
  1138. vreg,vreg,vreg \x92\xEE\x30\xA\x40 THUMB32,VFPv2
  1139. vreg,vreg,vreg \x42\xE\x30\xA\x40 ARM32,VFPv2
  1140. [DMBcc]
  1141. immshifter \x80\xF3\xBF\x8F\x50 THUMB32,ARMv7
  1142. immshifter \x2E\xF5\x7F\xF0\x50 ARM32,ARMv7
  1143. [ISBcc]
  1144. immshifter \x80\xF3\xBF\x8F\x60 THUMB32,ARMv7
  1145. immshifter \x2E\xF5\x7F\xF0\x60 ARM32,ARMv7
  1146. [DSBcc]
  1147. immshifter \x80\xF3\xBF\x8F\x40 THUMB32,ARMv7
  1148. immshifter \x2E\xF5\x7F\xF0\x40 ARM32,ARMv7
  1149. [SMCcc]
  1150. immshifter \x2E\x01\x60\x00\x70 ARM32,ARMv7
  1151. imm32 \x2E\x01\x60\x00\x70 ARM32,ARMv7
  1152. ; Thumb armv6-m (gcc)
  1153. [NEGcc]
  1154. [SVCcc]
  1155. immshifter \x61\xDF\x0 THUMB,ARMv4T
  1156. imm32 \x61\xDF\x0 THUMB,ARMv4T
  1157. immshifter \x2\x0F ARM32,ARMv4
  1158. imm32 \x2\x0F ARM32,ARMv4
  1159. [BXJcc]
  1160. reg32 \x80\xF3\xC0\x8F\x0 THUMB32,ARMv6T2
  1161. reg32 \x3\x01\x2F\xFF\x20 ARM32,ARMv5TEJ
  1162. ; Undefined mnemonic
  1163. [UDF]
  1164. immshifter \x61\xDE\x0 THUMB,ARMv4T
  1165. void void ARM32,ARMv4T
  1166. ; FPA
  1167. [TANcc]
  1168. [SQTcc]
  1169. [SUFcc]
  1170. [RSFcc]
  1171. [RNDcc]
  1172. [POLcc]
  1173. [RDFcc]
  1174. [RFScc]
  1175. [RFCcc]
  1176. [RMFcc]
  1177. [RPWcc]
  1178. [MNFcc]
  1179. [MUFcc]
  1180. [ABScc]
  1181. [ACScc]
  1182. [ASNcc]
  1183. [ATNcc]
  1184. [CNFcc]
  1185. [COScc]
  1186. [DVFcc]
  1187. [EXPcc]
  1188. [FDVcc]
  1189. [FLTcc]
  1190. [FIXcc]
  1191. [FMLcc]
  1192. [FRDcc]
  1193. [LGNcc]
  1194. [LOGcc]