armtab.inc 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927
  1. { don't edit, this file is generated from armins.dat }
  2. (
  3. (
  4. opcode : A_ADC;
  5. ops : 3;
  6. optypes : (ot_reg32,ot_reg32,ot_reg32,);
  7. code : #4#0#160;
  8. flags : if_arm7
  9. ),
  10. (
  11. opcode : A_ADC;
  12. ops : 4;
  13. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_reg32);
  14. code : #5#0#160;
  15. flags : if_arm7
  16. ),
  17. (
  18. opcode : A_ADC;
  19. ops : 4;
  20. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_immediate);
  21. code : #6#0#160;
  22. flags : if_arm7
  23. ),
  24. (
  25. opcode : A_ADC;
  26. ops : 3;
  27. optypes : (ot_reg32,ot_reg32,ot_immediate,);
  28. code : #7#2#160;
  29. flags : if_arm7
  30. ),
  31. (
  32. opcode : A_ADD;
  33. ops : 3;
  34. optypes : (ot_reg32,ot_reg32,ot_reg32,);
  35. code : #4#0#128;
  36. flags : if_arm7
  37. ),
  38. (
  39. opcode : A_ADD;
  40. ops : 4;
  41. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_reg32);
  42. code : #5#0#128;
  43. flags : if_arm7
  44. ),
  45. (
  46. opcode : A_ADD;
  47. ops : 4;
  48. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_immediate);
  49. code : #6#0#128;
  50. flags : if_arm7
  51. ),
  52. (
  53. opcode : A_ADD;
  54. ops : 3;
  55. optypes : (ot_reg32,ot_reg32,ot_immediate,);
  56. code : #7#2#128;
  57. flags : if_arm7
  58. ),
  59. (
  60. opcode : A_AND;
  61. ops : 3;
  62. optypes : (ot_reg32,ot_reg32,ot_reg32,);
  63. code : #4#0#0;
  64. flags : if_arm7
  65. ),
  66. (
  67. opcode : A_AND;
  68. ops : 4;
  69. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_reg32);
  70. code : #5#0#0;
  71. flags : if_arm7
  72. ),
  73. (
  74. opcode : A_AND;
  75. ops : 4;
  76. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_immediate);
  77. code : #6#0#0;
  78. flags : if_arm7
  79. ),
  80. (
  81. opcode : A_AND;
  82. ops : 3;
  83. optypes : (ot_reg32,ot_reg32,ot_immediate,);
  84. code : #7#2#0;
  85. flags : if_arm7
  86. ),
  87. (
  88. opcode : A_B;
  89. ops : 1;
  90. optypes : (ot_memory or ot_bits32,ot_none,ot_none,);
  91. code : #1#10;
  92. flags : if_arm7
  93. ),
  94. (
  95. opcode : A_B;
  96. ops : 1;
  97. optypes : (ot_immediate or ot_bits32,ot_none,ot_none,);
  98. code : #1#10;
  99. flags : if_arm7
  100. ),
  101. (
  102. opcode : A_BIC;
  103. ops : 3;
  104. optypes : (ot_reg32,ot_reg32,ot_reg32,);
  105. code : #4#1#192;
  106. flags : if_arm7
  107. ),
  108. (
  109. opcode : A_BIC;
  110. ops : 4;
  111. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_reg32);
  112. code : #5#1#192;
  113. flags : if_arm7
  114. ),
  115. (
  116. opcode : A_BIC;
  117. ops : 4;
  118. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_immediate);
  119. code : #6#1#192;
  120. flags : if_arm7
  121. ),
  122. (
  123. opcode : A_BIC;
  124. ops : 3;
  125. optypes : (ot_reg32,ot_reg32,ot_immediate,);
  126. code : #7#3#192;
  127. flags : if_arm7
  128. ),
  129. (
  130. opcode : A_BL;
  131. ops : 1;
  132. optypes : (ot_memory or ot_bits32,ot_none,ot_none,);
  133. code : #1#11;
  134. flags : if_arm7
  135. ),
  136. (
  137. opcode : A_BL;
  138. ops : 1;
  139. optypes : (ot_immediate or ot_bits32,ot_none,ot_none,);
  140. code : #1#11;
  141. flags : if_arm7
  142. ),
  143. (
  144. opcode : A_BX;
  145. ops : 1;
  146. optypes : (ot_reg32,ot_none,ot_none,);
  147. code : #3#1#47#255#16;
  148. flags : if_arm7
  149. ),
  150. (
  151. opcode : A_CDP;
  152. ops : 2;
  153. optypes : (ot_reg8,ot_reg8,ot_none,);
  154. code : #192#1#16#65;
  155. flags : if_8086
  156. ),
  157. (
  158. opcode : A_CMN;
  159. ops : 2;
  160. optypes : (ot_reg32 or ot_signed,ot_reg32,ot_none,);
  161. code : #12#1#96;
  162. flags : if_arm7
  163. ),
  164. (
  165. opcode : A_CMN;
  166. ops : 3;
  167. optypes : (ot_reg32,ot_reg32 or ot_signed,ot_reg32,);
  168. code : #13#1#96;
  169. flags : if_arm7
  170. ),
  171. (
  172. opcode : A_CMN;
  173. ops : 3;
  174. optypes : (ot_reg32,ot_reg32,ot_immediate or ot_signed,);
  175. code : #14#1#96;
  176. flags : if_arm7
  177. ),
  178. (
  179. opcode : A_CMN;
  180. ops : 2;
  181. optypes : (ot_reg32,ot_immediate,ot_none,);
  182. code : #15#3#96;
  183. flags : if_arm7
  184. ),
  185. (
  186. opcode : A_CMP;
  187. ops : 2;
  188. optypes : (ot_reg32 or ot_signed,ot_reg32,ot_none,);
  189. code : #12#1#64;
  190. flags : if_arm7
  191. ),
  192. (
  193. opcode : A_CMP;
  194. ops : 3;
  195. optypes : (ot_reg32,ot_reg32 or ot_signed,ot_reg32,);
  196. code : #13#1#64;
  197. flags : if_arm7
  198. ),
  199. (
  200. opcode : A_CMP;
  201. ops : 3;
  202. optypes : (ot_reg32,ot_reg32,ot_immediate or ot_signed,);
  203. code : #14#1#64;
  204. flags : if_arm7
  205. ),
  206. (
  207. opcode : A_CMP;
  208. ops : 2;
  209. optypes : (ot_reg32,ot_immediate,ot_none,);
  210. code : #15#3#64;
  211. flags : if_arm7
  212. ),
  213. (
  214. opcode : A_DCB;
  215. ops : 0;
  216. optypes : (ot_none,ot_none,ot_none,);
  217. code : #0;
  218. flags : if_ignore
  219. ),
  220. (
  221. opcode : A_DCD;
  222. ops : 0;
  223. optypes : (ot_none,ot_none,ot_none,);
  224. code : #0;
  225. flags : if_ignore
  226. ),
  227. (
  228. opcode : A_DCW;
  229. ops : 0;
  230. optypes : (ot_none,ot_none,ot_none,);
  231. code : #0;
  232. flags : if_ignore
  233. ),
  234. (
  235. opcode : A_DQ;
  236. ops : 0;
  237. optypes : (ot_none,ot_none,ot_none,);
  238. code : #0;
  239. flags : if_ignore
  240. ),
  241. (
  242. opcode : A_DT;
  243. ops : 0;
  244. optypes : (ot_none,ot_none,ot_none,);
  245. code : #0;
  246. flags : if_ignore
  247. ),
  248. (
  249. opcode : A_EOR;
  250. ops : 3;
  251. optypes : (ot_reg32,ot_reg32,ot_reg32,);
  252. code : #4#0#32;
  253. flags : if_arm7
  254. ),
  255. (
  256. opcode : A_EOR;
  257. ops : 4;
  258. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_reg32);
  259. code : #5#0#32;
  260. flags : if_arm7
  261. ),
  262. (
  263. opcode : A_EOR;
  264. ops : 4;
  265. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_immediate);
  266. code : #6#0#32;
  267. flags : if_arm7
  268. ),
  269. (
  270. opcode : A_EOR;
  271. ops : 3;
  272. optypes : (ot_reg32,ot_reg32,ot_immediate,);
  273. code : #7#2#32;
  274. flags : if_arm7
  275. ),
  276. (
  277. opcode : A_LDC;
  278. ops : 2;
  279. optypes : (ot_reg32,ot_reg32,ot_none,);
  280. code : #209#192#1#17#65;
  281. flags : if_arm7
  282. ),
  283. (
  284. opcode : A_LDMDA;
  285. ops : 2;
  286. optypes : (ot_reg32,ot_reglist,ot_none,);
  287. code : #38#129;
  288. flags : if_arm7
  289. ),
  290. (
  291. opcode : A_LDMDB;
  292. ops : 2;
  293. optypes : (ot_reg32,ot_reglist,ot_none,);
  294. code : #38#145;
  295. flags : if_arm7
  296. ),
  297. (
  298. opcode : A_LDMEA;
  299. ops : 2;
  300. optypes : (ot_reg32,ot_reglist,ot_none,);
  301. code : #38#145;
  302. flags : if_arm7
  303. ),
  304. (
  305. opcode : A_LDMED;
  306. ops : 2;
  307. optypes : (ot_reg32,ot_reglist,ot_none,);
  308. code : #38#153;
  309. flags : if_arm7
  310. ),
  311. (
  312. opcode : A_LDMFA;
  313. ops : 2;
  314. optypes : (ot_reg32,ot_reglist,ot_none,);
  315. code : #38#129;
  316. flags : if_arm7
  317. ),
  318. (
  319. opcode : A_LDMFD;
  320. ops : 2;
  321. optypes : (ot_reg32,ot_reglist,ot_none,);
  322. code : #38#137;
  323. flags : if_arm7
  324. ),
  325. (
  326. opcode : A_LDMIA;
  327. ops : 2;
  328. optypes : (ot_reg32,ot_reglist,ot_none,);
  329. code : #38#137;
  330. flags : if_arm7
  331. ),
  332. (
  333. opcode : A_LDMIB;
  334. ops : 2;
  335. optypes : (ot_reg32,ot_reglist,ot_none,);
  336. code : #38#153;
  337. flags : if_arm7
  338. ),
  339. (
  340. opcode : A_LDR;
  341. ops : 2;
  342. optypes : (ot_reg32,ot_immediate or ot_bits32,ot_none,);
  343. code : #23#5#16;
  344. flags : if_arm7
  345. ),
  346. (
  347. opcode : A_LDR;
  348. ops : 2;
  349. optypes : (ot_reg32,ot_reg32,ot_none,);
  350. code : #24#4#16;
  351. flags : if_arm7
  352. ),
  353. (
  354. opcode : A_LDR;
  355. ops : 3;
  356. optypes : (ot_reg32,ot_reg32,ot_immediate or ot_bits32,);
  357. code : #25#4#16;
  358. flags : if_arm7
  359. ),
  360. (
  361. opcode : A_LDR;
  362. ops : 3;
  363. optypes : (ot_reg32,ot_reg32,ot_reg32,);
  364. code : #32#6#16;
  365. flags : if_arm7
  366. ),
  367. (
  368. opcode : A_LDR;
  369. ops : 4;
  370. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_immediate or ot_bits32);
  371. code : #33#6#16;
  372. flags : if_arm7
  373. ),
  374. (
  375. opcode : A_LDRH;
  376. ops : 2;
  377. optypes : (ot_reg32,ot_immediate or ot_bits32,ot_none,);
  378. code : #34#80#176;
  379. flags : if_arm7
  380. ),
  381. (
  382. opcode : A_LDRH;
  383. ops : 2;
  384. optypes : (ot_reg32,ot_reg32,ot_none,);
  385. code : #35#80#176;
  386. flags : if_arm7
  387. ),
  388. (
  389. opcode : A_LDRH;
  390. ops : 3;
  391. optypes : (ot_reg32,ot_reg32,ot_immediate or ot_bits32,);
  392. code : #36#80#176;
  393. flags : if_arm7
  394. ),
  395. (
  396. opcode : A_LDRH;
  397. ops : 3;
  398. optypes : (ot_reg32,ot_reg32,ot_reg32,);
  399. code : #37#16#176;
  400. flags : if_arm7
  401. ),
  402. (
  403. opcode : A_LDRSB;
  404. ops : 2;
  405. optypes : (ot_reg32,ot_immediate or ot_bits32,ot_none,);
  406. code : #34#80#208;
  407. flags : if_arm7
  408. ),
  409. (
  410. opcode : A_LDRSB;
  411. ops : 2;
  412. optypes : (ot_reg32,ot_reg32,ot_none,);
  413. code : #35#80#208;
  414. flags : if_arm7
  415. ),
  416. (
  417. opcode : A_LDRSB;
  418. ops : 3;
  419. optypes : (ot_reg32,ot_reg32,ot_immediate or ot_bits32,);
  420. code : #36#80#208;
  421. flags : if_arm7
  422. ),
  423. (
  424. opcode : A_LDRSB;
  425. ops : 3;
  426. optypes : (ot_reg32,ot_reg32,ot_reg32,);
  427. code : #37#16#208;
  428. flags : if_arm7
  429. ),
  430. (
  431. opcode : A_LDRSH;
  432. ops : 2;
  433. optypes : (ot_reg32,ot_immediate or ot_bits32,ot_none,);
  434. code : #34#80#240;
  435. flags : if_arm7
  436. ),
  437. (
  438. opcode : A_LDRSH;
  439. ops : 2;
  440. optypes : (ot_reg32,ot_reg32,ot_none,);
  441. code : #35#80#240;
  442. flags : if_arm7
  443. ),
  444. (
  445. opcode : A_LDRSH;
  446. ops : 3;
  447. optypes : (ot_reg32,ot_reg32,ot_immediate or ot_bits32,);
  448. code : #36#80#240;
  449. flags : if_arm7
  450. ),
  451. (
  452. opcode : A_LDRSH;
  453. ops : 3;
  454. optypes : (ot_reg32,ot_reg32,ot_reg32,);
  455. code : #37#16#240;
  456. flags : if_arm7
  457. ),
  458. (
  459. opcode : A_MCR;
  460. ops : 2;
  461. optypes : (ot_reg32,ot_memory or ot_bits32,ot_none,);
  462. code : #208#193#1#19#72;
  463. flags : if_8086
  464. ),
  465. (
  466. opcode : A_MLA;
  467. ops : 4;
  468. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_reg32);
  469. code : #21#0#32#144;
  470. flags : if_arm7
  471. ),
  472. (
  473. opcode : A_MOV;
  474. ops : 2;
  475. optypes : (ot_reg32,ot_reg32,ot_none,);
  476. code : #8#1#160;
  477. flags : if_arm7
  478. ),
  479. (
  480. opcode : A_MOV;
  481. ops : 3;
  482. optypes : (ot_reg32,ot_reg32,ot_reg32,);
  483. code : #9#1#160;
  484. flags : if_arm7
  485. ),
  486. (
  487. opcode : A_MOV;
  488. ops : 3;
  489. optypes : (ot_reg32,ot_reg32,ot_immediate,);
  490. code : #10#1#160;
  491. flags : if_arm7
  492. ),
  493. (
  494. opcode : A_MOV;
  495. ops : 2;
  496. optypes : (ot_reg32,ot_immediate,ot_none,);
  497. code : #11#3#160;
  498. flags : if_arm7
  499. ),
  500. (
  501. opcode : A_MRC;
  502. ops : 2;
  503. optypes : (ot_reg32,ot_reg32,ot_none,);
  504. code : #209#193#1#19#72;
  505. flags : if_arm7
  506. ),
  507. (
  508. opcode : A_MRS;
  509. ops : 2;
  510. optypes : (ot_reg32,ot_reg32,ot_none,);
  511. code : #16#1#15;
  512. flags : if_arm7
  513. ),
  514. (
  515. opcode : A_MSR;
  516. ops : 2;
  517. optypes : (ot_reg32,ot_reg32,ot_none,);
  518. code : #17#1#41#240;
  519. flags : if_arm7
  520. ),
  521. (
  522. opcode : A_MSR;
  523. ops : 2;
  524. optypes : (ot_regf,ot_reg32,ot_none,);
  525. code : #18#1#40#240;
  526. flags : if_arm7
  527. ),
  528. (
  529. opcode : A_MSR;
  530. ops : 2;
  531. optypes : (ot_regf,ot_immediate,ot_none,);
  532. code : #19#3#40#240;
  533. flags : if_arm7
  534. ),
  535. (
  536. opcode : A_MUL;
  537. ops : 3;
  538. optypes : (ot_reg32,ot_reg32,ot_reg32,);
  539. code : #20#0#0#144;
  540. flags : if_arm7
  541. ),
  542. (
  543. opcode : A_MVN;
  544. ops : 2;
  545. optypes : (ot_reg32,ot_reg32,ot_none,);
  546. code : #8#1#224;
  547. flags : if_arm7
  548. ),
  549. (
  550. opcode : A_MVN;
  551. ops : 3;
  552. optypes : (ot_reg32,ot_reg32,ot_reg32,);
  553. code : #9#1#224;
  554. flags : if_arm7
  555. ),
  556. (
  557. opcode : A_MVN;
  558. ops : 3;
  559. optypes : (ot_reg32,ot_reg32,ot_immediate,);
  560. code : #10#1#224;
  561. flags : if_arm7
  562. ),
  563. (
  564. opcode : A_MVN;
  565. ops : 2;
  566. optypes : (ot_reg32,ot_immediate,ot_none,);
  567. code : #11#3#224;
  568. flags : if_arm7
  569. ),
  570. (
  571. opcode : A_ORR;
  572. ops : 3;
  573. optypes : (ot_reg32,ot_reg32,ot_reg32,);
  574. code : #4#1#128;
  575. flags : if_arm7
  576. ),
  577. (
  578. opcode : A_ORR;
  579. ops : 4;
  580. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_reg32);
  581. code : #5#1#128;
  582. flags : if_arm7
  583. ),
  584. (
  585. opcode : A_ORR;
  586. ops : 4;
  587. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_immediate);
  588. code : #6#1#128;
  589. flags : if_arm7
  590. ),
  591. (
  592. opcode : A_ORR;
  593. ops : 3;
  594. optypes : (ot_reg32,ot_reg32,ot_immediate,);
  595. code : #7#3#128;
  596. flags : if_arm7
  597. ),
  598. (
  599. opcode : A_RSB;
  600. ops : 3;
  601. optypes : (ot_reg32,ot_reg32,ot_reg32,);
  602. code : #4#0#96;
  603. flags : if_arm7
  604. ),
  605. (
  606. opcode : A_RSB;
  607. ops : 4;
  608. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_reg32);
  609. code : #5#0#96;
  610. flags : if_arm7
  611. ),
  612. (
  613. opcode : A_RSB;
  614. ops : 4;
  615. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_immediate);
  616. code : #6#0#96;
  617. flags : if_arm7
  618. ),
  619. (
  620. opcode : A_RSB;
  621. ops : 3;
  622. optypes : (ot_reg32,ot_reg32,ot_immediate,);
  623. code : #7#2#96;
  624. flags : if_arm7
  625. ),
  626. (
  627. opcode : A_RSC;
  628. ops : 3;
  629. optypes : (ot_reg32,ot_reg32,ot_reg32,);
  630. code : #4#0#224;
  631. flags : if_arm7
  632. ),
  633. (
  634. opcode : A_RSC;
  635. ops : 4;
  636. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_reg32);
  637. code : #5#0#224;
  638. flags : if_arm7
  639. ),
  640. (
  641. opcode : A_RSC;
  642. ops : 4;
  643. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_immediate);
  644. code : #6#0#224;
  645. flags : if_arm7
  646. ),
  647. (
  648. opcode : A_RSC;
  649. ops : 3;
  650. optypes : (ot_reg32,ot_reg32,ot_immediate,);
  651. code : #7#2#224;
  652. flags : if_arm7
  653. ),
  654. (
  655. opcode : A_SBC;
  656. ops : 3;
  657. optypes : (ot_reg32,ot_reg32,ot_reg32,);
  658. code : #4#0#192;
  659. flags : if_arm7
  660. ),
  661. (
  662. opcode : A_SBC;
  663. ops : 4;
  664. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_reg32);
  665. code : #5#0#192;
  666. flags : if_arm7
  667. ),
  668. (
  669. opcode : A_SBC;
  670. ops : 4;
  671. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_immediate);
  672. code : #6#0#192;
  673. flags : if_arm7
  674. ),
  675. (
  676. opcode : A_SBC;
  677. ops : 3;
  678. optypes : (ot_reg32,ot_reg32,ot_immediate,);
  679. code : #7#2#192;
  680. flags : if_arm7
  681. ),
  682. (
  683. opcode : A_SMLAL;
  684. ops : 4;
  685. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_reg32);
  686. code : #22#0#224#144;
  687. flags : if_arm7
  688. ),
  689. (
  690. opcode : A_SMULL;
  691. ops : 4;
  692. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_reg32);
  693. code : #22#0#192#144;
  694. flags : if_arm7
  695. ),
  696. (
  697. opcode : A_STMDA;
  698. ops : 2;
  699. optypes : (ot_reg32,ot_reglist,ot_none,);
  700. code : #38#128;
  701. flags : if_arm7
  702. ),
  703. (
  704. opcode : A_STMDB;
  705. ops : 2;
  706. optypes : (ot_reg32,ot_reglist,ot_none,);
  707. code : #38#144;
  708. flags : if_arm7
  709. ),
  710. (
  711. opcode : A_STMEA;
  712. ops : 2;
  713. optypes : (ot_reg32,ot_reglist,ot_none,);
  714. code : #38#136;
  715. flags : if_arm7
  716. ),
  717. (
  718. opcode : A_STMED;
  719. ops : 2;
  720. optypes : (ot_reg32,ot_reglist,ot_none,);
  721. code : #38#128;
  722. flags : if_arm7
  723. ),
  724. (
  725. opcode : A_STMFA;
  726. ops : 2;
  727. optypes : (ot_reg32,ot_reglist,ot_none,);
  728. code : #38#152;
  729. flags : if_arm7
  730. ),
  731. (
  732. opcode : A_STMFD;
  733. ops : 2;
  734. optypes : (ot_reg32,ot_reglist,ot_none,);
  735. code : #38#144;
  736. flags : if_arm7
  737. ),
  738. (
  739. opcode : A_STMIA;
  740. ops : 2;
  741. optypes : (ot_reg32,ot_reglist,ot_none,);
  742. code : #38#136;
  743. flags : if_arm7
  744. ),
  745. (
  746. opcode : A_STMIB;
  747. ops : 2;
  748. optypes : (ot_reg32,ot_reglist,ot_none,);
  749. code : #38#152;
  750. flags : if_arm7
  751. ),
  752. (
  753. opcode : A_STR;
  754. ops : 2;
  755. optypes : (ot_reg32,ot_immediate or ot_bits32,ot_none,);
  756. code : #23#5#0;
  757. flags : if_arm7
  758. ),
  759. (
  760. opcode : A_STR;
  761. ops : 2;
  762. optypes : (ot_reg32,ot_reg32,ot_none,);
  763. code : #24#4#0;
  764. flags : if_arm7
  765. ),
  766. (
  767. opcode : A_STR;
  768. ops : 3;
  769. optypes : (ot_reg32,ot_reg32,ot_immediate or ot_bits32,);
  770. code : #25#4#0;
  771. flags : if_arm7
  772. ),
  773. (
  774. opcode : A_STR;
  775. ops : 3;
  776. optypes : (ot_reg32,ot_reg32,ot_reg32,);
  777. code : #32#6#0;
  778. flags : if_arm7
  779. ),
  780. (
  781. opcode : A_STR;
  782. ops : 4;
  783. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_immediate or ot_bits32);
  784. code : #33#6#0;
  785. flags : if_arm7
  786. ),
  787. (
  788. opcode : A_STRH;
  789. ops : 2;
  790. optypes : (ot_reg32,ot_immediate or ot_bits32,ot_none,);
  791. code : #34#64#176;
  792. flags : if_arm7
  793. ),
  794. (
  795. opcode : A_STRH;
  796. ops : 2;
  797. optypes : (ot_reg32,ot_reg32,ot_none,);
  798. code : #35#64#176;
  799. flags : if_arm7
  800. ),
  801. (
  802. opcode : A_STRH;
  803. ops : 3;
  804. optypes : (ot_reg32,ot_reg32,ot_immediate or ot_bits32,);
  805. code : #36#64#176;
  806. flags : if_arm7
  807. ),
  808. (
  809. opcode : A_STRH;
  810. ops : 3;
  811. optypes : (ot_reg32,ot_reg32,ot_reg32,);
  812. code : #37#0#176;
  813. flags : if_arm7
  814. ),
  815. (
  816. opcode : A_SUB;
  817. ops : 3;
  818. optypes : (ot_reg32,ot_reg32,ot_reg32,);
  819. code : #4#0#64;
  820. flags : if_arm7
  821. ),
  822. (
  823. opcode : A_SUB;
  824. ops : 4;
  825. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_reg32);
  826. code : #5#0#64;
  827. flags : if_arm7
  828. ),
  829. (
  830. opcode : A_SUB;
  831. ops : 4;
  832. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_immediate);
  833. code : #6#0#64;
  834. flags : if_arm7
  835. ),
  836. (
  837. opcode : A_SUB;
  838. ops : 3;
  839. optypes : (ot_reg32,ot_reg32,ot_immediate,);
  840. code : #7#2#64;
  841. flags : if_arm7
  842. ),
  843. (
  844. opcode : A_SWI;
  845. ops : 1;
  846. optypes : (ot_immediate,ot_none,ot_none,);
  847. code : #2#15;
  848. flags : if_8086
  849. ),
  850. (
  851. opcode : A_SWP;
  852. ops : 3;
  853. optypes : (ot_reg32,ot_reg32,ot_reg32,);
  854. code : #39#1#144;
  855. flags : if_arm7
  856. ),
  857. (
  858. opcode : A_TEQ;
  859. ops : 2;
  860. optypes : (ot_reg32 or ot_signed,ot_reg32,ot_none,);
  861. code : #12#1#32;
  862. flags : if_arm7
  863. ),
  864. (
  865. opcode : A_TEQ;
  866. ops : 3;
  867. optypes : (ot_reg32,ot_reg32 or ot_signed,ot_reg32,);
  868. code : #13#1#32;
  869. flags : if_arm7
  870. ),
  871. (
  872. opcode : A_TEQ;
  873. ops : 3;
  874. optypes : (ot_reg32,ot_reg32,ot_immediate or ot_signed,);
  875. code : #14#1#32;
  876. flags : if_arm7
  877. ),
  878. (
  879. opcode : A_TEQ;
  880. ops : 2;
  881. optypes : (ot_reg32,ot_immediate,ot_none,);
  882. code : #15#3#32;
  883. flags : if_arm7
  884. ),
  885. (
  886. opcode : A_TST;
  887. ops : 2;
  888. optypes : (ot_reg32 or ot_signed,ot_reg32,ot_none,);
  889. code : #12#1#0;
  890. flags : if_arm7
  891. ),
  892. (
  893. opcode : A_TST;
  894. ops : 3;
  895. optypes : (ot_reg32,ot_reg32 or ot_signed,ot_reg32,);
  896. code : #13#1#0;
  897. flags : if_arm7
  898. ),
  899. (
  900. opcode : A_TST;
  901. ops : 3;
  902. optypes : (ot_reg32,ot_reg32,ot_immediate or ot_signed,);
  903. code : #14#1#0;
  904. flags : if_arm7
  905. ),
  906. (
  907. opcode : A_TST;
  908. ops : 2;
  909. optypes : (ot_reg32,ot_immediate,ot_none,);
  910. code : #15#3#0;
  911. flags : if_arm7
  912. ),
  913. (
  914. opcode : A_UMLAL;
  915. ops : 4;
  916. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_reg32);
  917. code : #22#0#160#144;
  918. flags : if_arm7
  919. ),
  920. (
  921. opcode : A_UMULL;
  922. ops : 4;
  923. optypes : (ot_reg32,ot_reg32,ot_reg32,ot_reg32);
  924. code : #22#0#128#144;
  925. flags : if_arm7
  926. )
  927. );