armintr.dat 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. nop()
  2. yield()
  3. wfi()
  4. wfe()
  5. sev()
  6. ;rfe()
  7. clrex()
  8. setend(endian: i32) (endian in [0..1])
  9. ldrex(out rt: r32; ref: ptr32)
  10. ldrexb(out rt: r32; ref: ptr32)
  11. ldrexh(out rt: r32; ref: ptr32)
  12. strex(out rd: r32; rt: r32; ref: ptr32)
  13. strexb(out rd: r32; rt: r32; ref: ptr32)
  14. strexh(out rd: r32; rt: r32; ref: ptr32)
  15. bfi(var rd: r32; rn: r32; lsb, msb: i32) (lsb in [0..31]) and (msb in [0..31]) and (msb >= lsb)
  16. bfc(var rd: r32; lsb, msb: i32) (lsb in [0..31]) and (msb in [0..31]) and (msb >= lsb)
  17. smmul(out rd: r32; rn, rm: r32)
  18. smuad(out rd: r32; rn, rm: r32)
  19. smuad{x}(out rd: r32; rn, rm: r32)
  20. smulbb(out rd: r32; rn, rm: r32)
  21. smulbt(out rd: r32; rn, rm: r32)
  22. smultb(out rd: r32; rn, rm: r32)
  23. smultt(out rd: r32; rn, rm: r32)
  24. smulwb(out rd: r32; rn, rm: r32)
  25. smulwt(out rd: r32; rn, rm: r32)
  26. smusd(out rd: r32; rn, rm: r32)
  27. smusd{x}(out rd: r32; rn, rm: r32)
  28. mla(out rd: r32; rn, rm, ra: r32)
  29. mls(out rd: r32; rn, rm, ra: r32)
  30. smlabb(out rd: r32; rn, rm, ra: r32)
  31. smlabt(out rd: r32; rn, rm, ra: r32)
  32. smlatb(out rd: r32; rn, rm, ra: r32)
  33. smlatt(out rd: r32; rn, rm, ra: r32)
  34. smlad(out rd: r32; rn, rm, ra: r32)
  35. smlad{x}(out rd: r32; rn, rm, ra: r32)
  36. smlawb(out rd: r32; rn, rm, ra: r32)
  37. smlawt(out rd: r32; rn, rm, ra: r32)
  38. smlsd(out rd: r32; rn, rm, ra: r32)
  39. smlsd{x}(out rd: r32; rn, rm, ra: r32)
  40. smmla(out rd: r32; rn, rm, ra: r32)
  41. smmla{r}(out rd: r32; rn, rm, ra: r32)
  42. smmls(out rd: r32; rn, rm, ra: r32)
  43. smmls{r}(out rd: r32; rn, rm, ra: r32)
  44. usada8(out rd: r32; rn, rm, ra: r32)
  45. smull(out ro: rs64; rn,rm: r32)
  46. umull(out ro: r64; rn,rm: r32)
  47. smlal(var rd: r64; rn,rm: r32)
  48. smlalbb(var rd: r64; rn,rm: r32)
  49. smlalbt(var rd: r64; rn,rm: r32)
  50. smlaltb(var rd: r64; rn,rm: r32)
  51. smlaltt(var rd: r64; rn,rm: r32)
  52. smlald(var rd: r64; rn,rm: r32)
  53. smlald{x}(var rd: r64; rn,rm: r32)
  54. smlsld{x}(var rd: r64; rn,rm: r32)
  55. umlal(var rd: r64; rn,rm: r32)
  56. umaal(out [rl,rh]: r64; rl, rh, rn,rm: r32)
  57. pkhbt(out rd: r32; rn,rm: r32)
  58. pkhtb(out rd: r32; rn,rm: r32)
  59. pkhbt[shift](out rd: r32; rn,rm: r32; ls: lsl5) (ls in [0..31])
  60. pkhtb[shift](out rd: r32; rn,rm: r32; rs: asr5) (ls in [0..31])
  61. qadd(out rd: r32; rm,rn: r32)
  62. qadd16(out rd: r32; rm,rn: r32)
  63. qadd8(out rd: r32; rm,rn: r32)
  64. qasx(out rd: r32; rm,rn: r32)
  65. qdadd(out rd: r32; rm,rn: r32)
  66. qdsub(out rd: r32; rm,rn: r32)
  67. qsax(out rd: r32; rm,rn: r32)
  68. qsub(out rd: r32; rm,rn: r32)
  69. qsub16(out rd: r32; rm,rn: r32)
  70. qsub8(out rd: r32; rm,rn: r32)
  71. sadd16(out rd: r32; rm,rn: r32)
  72. sadd8(out rd: r32; rm,rn: r32)
  73. sasx(out rd: r32; rm,rn: r32)
  74. shadd16(out rd: r32; rm,rn: r32)
  75. shadd8(out rd: r32; rm,rn: r32)
  76. shasx(out rd: r32; rm,rn: r32)
  77. shsax(out rd: r32; rm,rn: r32)
  78. shsub16(out rd: r32; rm,rn: r32)
  79. shsub8(out rd: r32; rm,rn: r32)
  80. ssax(out rd: r32; rm,rn: r32)
  81. ssub16(out rd: r32; rm,rn: r32)
  82. ssub8(out rd: r32; rm,rn: r32)
  83. uadd16(out rd: r32; rm,rn: r32)
  84. uadd8(out rd: r32; rm,rn: r32)
  85. uasx(out rd: r32; rm,rn: r32)
  86. uhadd16(out rd: r32; rm,rn: r32)
  87. uhadd8(out rd: r32; rm,rn: r32)
  88. uhasx(out rd: r32; rm,rn: r32)
  89. uhsax(out rd: r32; rm,rn: r32)
  90. uhsub16(out rd: r32; rm,rn: r32)
  91. uhsub8(out rd: r32; rm,rn: r32)
  92. uqadd16(out rd: r32; rm,rn: r32)
  93. uqadd8(out rd: r32; rm,rn: r32)
  94. uqasx(out rd: r32; rm,rn: r32)
  95. uqsax(out rd: r32; rm,rn: r32)
  96. uqsub16(out rd: r32; rm,rn: r32)
  97. uqsub8(out rd: r32; rm,rn: r32)
  98. usax(out rd: r32; rm,rn: r32)
  99. usub16(out rd: r32; rm,rn: r32)
  100. usub8(out rd: r32; rm,rn: r32)
  101. usad8(out rd: r32; rm,rn: r32)
  102. sxtab(out rd: r32; rm,rn: r32)
  103. sxtab16(out rd: r32; rm,rn: r32)
  104. sxtah(out rd: r32; rm,rn: r32)
  105. uxtab(out rd: r32; rm,rn: r32)
  106. uxtab16(out rd: r32; rm,rn: r32)
  107. uxtah(out rd: r32; rm,rn: r32)
  108. sxtab[ror](out rd: r32; rm,rn: r32; ror: ror3) (ls in [0,8,16,24])
  109. sxtab16[ror](out rd: r32; rm,rn: r32; ror: ror3) (ls in [0,8,16,24])
  110. sxtah[ror](out rd: r32; rm,rn: r32; ror: ror3) (ls in [0,8,16,24])
  111. uxtab[ror](out rd: r32; rm,rn: r32; ror: ror3) (ls in [0,8,16,24])
  112. uxtab16[ror](out rd: r32; rm,rn: r32; ror: ror3) (ls in [0,8,16,24])
  113. uxtah[ror](out rd: r32; rm,rn: r32; ror: ror3) (ls in [0,8,16,24])
  114. sxtb(out rd: r32; rm: r32)
  115. sxtb16(out rd: r32; rm: r32)
  116. sxth(out rd: r32; rm: r32)
  117. uxtb(out rd: r32; rm: r32)
  118. uxtb16(out rd: r32; rm: r32)
  119. uxth(out rd: r32; rm: r32)
  120. sxtb[ror](out rd: r32; rm: r32; ror: ror3) (ls in [0,8,16,24])
  121. sxtb16[ror](out rd: r32; rm: r32; ror: ror3) (ls in [0,8,16,24])
  122. sxth[ror](out rd: r32; rm: r32; ror: ror3) (ls in [0,8,16,24])
  123. uxtb[ror](out rd: r32; rm: r32; ror: ror3) (ls in [0,8,16,24])
  124. uxtb16[ror](out rd: r32; rm: r32; ror: ror3) (ls in [0,8,16,24])
  125. uxth[ror](out rd: r32; rm: r32; ror: ror3) (ls in [0,8,16,24])
  126. clz(out rd: r32; rm: r32)
  127. rbit(out rd: r32; rm: r32)
  128. rev(out rd: r32; rm: r32)
  129. rev16(out rd: r32; rm: r32)
  130. revsh(out rd: r32; rm: r32)
  131. sbfx(out rd: r32; rn: r32; lsb, width: i32) (lsb in [0..31]) and ((width+lsb-1) <= 31)
  132. ubfx(out rd: r32; rn: r32; lsb, width: i32) (lsb in [0..31]) and ((width+lsb-1) <= 31)
  133. ssat(out rd: r32; sat: i32; rn: r32) (sat in [1..32])
  134. usat(out rd: r32; sat: i32; rn: r32) (sat in [1..32])
  135. ssat16(out rd: r32; sat: i32; rn: r32) (sat in [1..32])
  136. usat16(out rd: r32; sat: i32; rn: r32) (sat in [1..32])