brintos

brintos / llvm-project-archived public Read only

0
0
Text · 63.7 KiB · dc2247a Raw
2538 lines · plain
1# RUN: llvm-mc -triple=armv7-apple-darwin -mcpu=cortex-a8 -disassemble < %s | FileCheck %s2 3#------------------------------------------------------------------------------4# ADC (immediate)5#------------------------------------------------------------------------------6# CHECK: adc r1, r2, #157# CHECK: adc r1, r2, #2408# CHECK: adc r1, r2, #38409# CHECK: adc r1, r2, #6144010# CHECK: adc r1, r2, #98304011# CHECK: adc r1, r2, #1572864012# CHECK: adc r1, r2, #25165824013# CHECK: adc r1, r2, #-26843545614# CHECK: adc r1, r2, #-26843544115# CHECK: adc r7, r8, #-214748363816# CHECK: adc r7, r8, #40, #217# CHECK: adcs r1, r2, #384018# CHECK: adcs r7, r8, #40, #219# CHECK: adcseq r1, r2, #384020# CHECK: adceq r1, r2, #384021 220x0f 0x10 0xa2 0xe2230xf0 0x10 0xa2 0xe2240x0f 0x1c 0xa2 0xe2250x0f 0x1a 0xa2 0xe2260x0f 0x18 0xa2 0xe2270x0f 0x16 0xa2 0xe2280x0f 0x14 0xa2 0xe2290x0f 0x12 0xa2 0xe2300xff 0x12 0xa2 0xe2310x2a 0x71 0xa8 0xe2320x28 0x71 0xa8 0xe233 340x0f 0x1c 0xb2 0xe2350x28 0x71 0xb8 0xe2360x0f 0x1c 0xb2 0x02370x0f 0x1c 0xa2 0x0238 39#------------------------------------------------------------------------------40# ADC (register)41# ADC (shifted register)42#------------------------------------------------------------------------------43# CHECK: adc r4, r5, r644 45# CHECK: adc r4, r5, r6, lsl #146# CHECK: adc r4, r5, r6, lsl #3147# CHECK: adc r4, r5, r6, lsr #148# CHECK: adc r4, r5, r6, lsr #3149# CHECK: adc r4, r5, r6, lsr #3250# CHECK: adc r4, r5, r6, asr #151# CHECK: adc r4, r5, r6, asr #3152# CHECK: adc r4, r5, r6, asr #3253# CHECK: adc r4, r5, r6, ror #154# CHECK: adc r4, r5, r6, ror #3155 56# CHECK: adc r6, r7, r8, lsl r957# CHECK: adc r6, r7, r8, lsr r958# CHECK: adc r6, r7, r8, asr r959# CHECK: adc r6, r7, r8, ror r960# CHECK: adc r4, r5, r6, rrx61 62# CHECK: adc r5, r5, r663# CHECK: adc r4, r4, r5, lsl #164# CHECK: adc r4, r4, r5, lsl #3165# CHECK: adc r4, r4, r5, lsr #166# CHECK: adc r4, r4, r5, lsr #3167# CHECK: adc r4, r4, r5, lsr #3268# CHECK: adc r4, r4, r5, asr #169# CHECK: adc r4, r4, r5, asr #3170# CHECK: adc r4, r4, r5, asr #3271# CHECK: adc r4, r4, r5, ror #172# CHECK: adc r4, r4, r5, ror #3173# CHECK: adc r4, r4, r5, rrx74# CHECK: adc r6, r6, r7, lsl r975# CHECK: adc r6, r6, r7, lsr r976# CHECK: adc r6, r6, r7, asr r977# CHECK: adc r6, r6, r7, ror r978# CHECK: adc r4, r4, r5, rrx79 800x06 0x40 0xa5 0xe081 820x86 0x40 0xa5 0xe0830x86 0x4f 0xa5 0xe0840xa6 0x40 0xa5 0xe0850xa6 0x4f 0xa5 0xe0860x26 0x40 0xa5 0xe0870xc6 0x40 0xa5 0xe0880xc6 0x4f 0xa5 0xe0890x46 0x40 0xa5 0xe0900xe6 0x40 0xa5 0xe0910xe6 0x4f 0xa5 0xe092 930x18 0x69 0xa7 0xe0940x38 0x69 0xa7 0xe0950x58 0x69 0xa7 0xe0960x78 0x69 0xa7 0xe0970x66 0x40 0xa5 0xe098 990x06 0x50 0xa5 0xe01000x85 0x40 0xa4 0xe01010x85 0x4f 0xa4 0xe01020xa5 0x40 0xa4 0xe01030xa5 0x4f 0xa4 0xe01040x25 0x40 0xa4 0xe01050xc5 0x40 0xa4 0xe01060xc5 0x4f 0xa4 0xe01070x45 0x40 0xa4 0xe01080xe5 0x40 0xa4 0xe01090xe5 0x4f 0xa4 0xe01100x65 0x40 0xa4 0xe01110x17 0x69 0xa6 0xe01120x37 0x69 0xa6 0xe01130x57 0x69 0xa6 0xe01140x77 0x69 0xa6 0xe01150x65 0x40 0xa4 0xe0116 117#------------------------------------------------------------------------------118# ADD119#------------------------------------------------------------------------------120# CHECK: add r4, r5, #61440121# CHECK: add r7, r8, #-2147483638122# CHECK: add r7, r8, #40, #2123# CHECK: add r4, r5, r6124# CHECK: add r4, r5, r6, lsl #5125# CHECK: add r4, r5, r6, lsr #5126# CHECK: add r4, r5, r6, lsr #5127# CHECK: add r4, r5, r6, asr #5128# CHECK: add r4, r5, r6, ror #5129# CHECK: add r6, r7, r8, lsl r9130# CHECK: add r6, r7, r8, lsr r9131# CHECK: add r6, r7, r8, asr r9132# CHECK: add r6, r7, r8, ror r9133# CHECK: add r4, r5, r6, rrx134 135# CHECK: add r5, r5, #61440136# CHECK: add r4, r4, r5137# CHECK: add r4, r4, r5, lsl #5138# CHECK: add r4, r4, r5, lsr #5139# CHECK: add r4, r4, r5, lsr #5140# CHECK: add r4, r4, r5, asr #5141# CHECK: add r4, r4, r5, ror #5142# CHECK: add r6, r6, r7, lsl r9143# CHECK: add r6, r6, r7, lsr r9144# CHECK: add r6, r6, r7, asr r9145# CHECK: add r6, r6, r7, ror r9146# CHECK: add r4, r4, r5, rrx147 1480x0f 0x4a 0x85 0xe21490x2a 0x71 0x88 0xe21500x28 0x71 0x88 0xe21510x06 0x40 0x85 0xe01520x86 0x42 0x85 0xe01530xa6 0x42 0x85 0xe01540xa6 0x42 0x85 0xe01550xc6 0x42 0x85 0xe01560xe6 0x42 0x85 0xe01570x18 0x69 0x87 0xe01580x38 0x69 0x87 0xe01590x58 0x69 0x87 0xe01600x78 0x69 0x87 0xe01610x66 0x40 0x85 0xe0162 163 1640x0f 0x5a 0x85 0xe21650x05 0x40 0x84 0xe01660x85 0x42 0x84 0xe01670xa5 0x42 0x84 0xe01680xa5 0x42 0x84 0xe01690xc5 0x42 0x84 0xe01700xe5 0x42 0x84 0xe01710x17 0x69 0x86 0xe01720x37 0x69 0x86 0xe01730x57 0x69 0x86 0xe01740x77 0x69 0x86 0xe01750x65 0x40 0x84 0xe0176 177#------------------------------------------------------------------------------178# ADDS179#------------------------------------------------------------------------------180# CHECK: adds   r7, r8, #-2147483638181# CHECK: adds   r7, r8, #40, #2182 1830x2a 0x71 0x98 0xe21840x28 0x71 0x98 0xe2185 186#------------------------------------------------------------------------------187# ADR188#------------------------------------------------------------------------------189# CHECK: add	r2, pc, #3190# CHECK: sub	r2, pc, #3191# CHECK: sub	r1, pc, #0192# CHECK: sub	r1, pc, #301989888193# CHECK: add	r1, pc, #301989888194 1950x03 0x20 0x8f 0xe21960x03 0x20 0x4f 0xe21970x00 0x10 0x4f 0xe21980x12 0x14 0x4f 0xe21990x12 0x14 0x8f 0xe2200 201#------------------------------------------------------------------------------202# AND203#------------------------------------------------------------------------------204# CHECK: and r10, r1, #15205# CHECK: and r7, r8, #-2147483638206# CHECK: and r7, r8, #40, #2207# CHECK: and r10, r1, r6208# CHECK: and r10, r1, r6, lsl #10209# CHECK: and r10, r1, r6, lsr #10210# CHECK: and r10, r1, r6, lsr #10211# CHECK: and r10, r1, r6, asr #10212# CHECK: and r10, r1, r6, ror #10213# CHECK: and r6, r7, r8, lsl r2214# CHECK: and r6, r7, r8, lsr r2215# CHECK: and r6, r7, r8, asr r2216# CHECK: and r6, r7, r8, ror r2217# CHECK: and r10, r1, r6, rrx218 219# CHECK: and r1, r1, #15220# CHECK: and r10, r10, r1221# CHECK: and r10, r10, r1, lsl #10222# CHECK: and r10, r10, r1, lsr #10223# CHECK: and r10, r10, r1, lsr #10224# CHECK: and r10, r10, r1, asr #10225# CHECK: and r10, r10, r1, ror #10226# CHECK: and r6, r6, r7, lsl r2227# CHECK: and r6, r6, r7, lsr r2228# CHECK: and r6, r6, r7, asr r2229# CHECK: and r6, r6, r7, ror r2230# CHECK: and r10, r10, r1, rrx231 2320x0f 0xa0 0x01 0xe22330x2a 0x71 0x08 0xe22340x28 0x71 0x08 0xe22350x06 0xa0 0x01 0xe02360x06 0xa5 0x01 0xe02370x26 0xa5 0x01 0xe02380x26 0xa5 0x01 0xe02390x46 0xa5 0x01 0xe02400x66 0xa5 0x01 0xe02410x18 0x62 0x07 0xe02420x38 0x62 0x07 0xe02430x58 0x62 0x07 0xe02440x78 0x62 0x07 0xe02450x66 0xa0 0x01 0xe0246 2470x0f 0x10 0x01 0xe22480x01 0xa0 0x0a 0xe02490x01 0xa5 0x0a 0xe02500x21 0xa5 0x0a 0xe02510x21 0xa5 0x0a 0xe02520x41 0xa5 0x0a 0xe02530x61 0xa5 0x0a 0xe02540x17 0x62 0x06 0xe02550x37 0x62 0x06 0xe02560x57 0x62 0x06 0xe02570x77 0x62 0x06 0xe02580x61 0xa0 0x0a 0xe0259 260#------------------------------------------------------------------------------261# FIXME: ASR262#------------------------------------------------------------------------------263 264#------------------------------------------------------------------------------265# BFC266#------------------------------------------------------------------------------267# CHECK: bfc r5, #3, #17268# CHECK: bfclo r5, #3, #17269 2700x9f 0x51 0xd3 0xe72710x9f 0x51 0xd3 0x37272 273 274#------------------------------------------------------------------------------275# BFI276#------------------------------------------------------------------------------277# CHECK: bfi r5, r2, #3, #17278# CHECK: bfine r5, r2, #3, #17279 2800x92 0x51 0xd3 0xe72810x92 0x51 0xd3 0x17282 283 284#------------------------------------------------------------------------------285# BIC286#------------------------------------------------------------------------------287# CHECK: bic r10, r1, #15288# CHECK: bic r7, r8, #-2147483638289# CHECK: bic r7, r8, #40, #2290# CHECK: bic r10, r1, r6291# CHECK: bic r10, r1, r6, lsl #10292# CHECK: bic r10, r1, r6, lsr #10293# CHECK: bic r10, r1, r6, lsr #10294# CHECK: bic r10, r1, r6, asr #10295# CHECK: bic r10, r1, r6, ror #10296# CHECK: bic r6, r7, r8, lsl r2297# CHECK: bic r6, r7, r8, lsr r2298# CHECK: bic r6, r7, r8, asr r2299# CHECK: bic r6, r7, r8, ror r2300# CHECK: bic r10, r1, r6, rrx301 302# CHECK: bic r1, r1, #15303# CHECK: bic r10, r10, r1304# CHECK: bic r10, r10, r1, lsl #10305# CHECK: bic r10, r10, r1, lsr #10306# CHECK: bic r10, r10, r1, lsr #10307# CHECK: bic r10, r10, r1, asr #10308# CHECK: bic r10, r10, r1, ror #10309# CHECK: bic r6, r6, r7, lsl r2310# CHECK: bic r6, r6, r7, lsr r2311# CHECK: bic r6, r6, r7, asr r2312# CHECK: bic r6, r6, r7, ror r2313# CHECK: bic r10, r10, r1, rrx314 3150x0f 0xa0 0xc1 0xe33160x2a 0x71 0xc8 0xe33170x28 0x71 0xc8 0xe33180x06 0xa0 0xc1 0xe13190x06 0xa5 0xc1 0xe13200x26 0xa5 0xc1 0xe13210x26 0xa5 0xc1 0xe13220x46 0xa5 0xc1 0xe13230x66 0xa5 0xc1 0xe13240x18 0x62 0xc7 0xe13250x38 0x62 0xc7 0xe13260x58 0x62 0xc7 0xe13270x78 0x62 0xc7 0xe13280x66 0xa0 0xc1 0xe1329 330 3310x0f 0x10 0xc1 0xe33320x01 0xa0 0xca 0xe13330x01 0xa5 0xca 0xe13340x21 0xa5 0xca 0xe13350x21 0xa5 0xca 0xe13360x41 0xa5 0xca 0xe13370x61 0xa5 0xca 0xe13380x17 0x62 0xc6 0xe13390x37 0x62 0xc6 0xe13400x57 0x62 0xc6 0xe13410x77 0x62 0xc6 0xe13420x61 0xa0 0xca 0xe1343 344#------------------------------------------------------------------------------345# BKPT346#------------------------------------------------------------------------------347# CHECK: bkpt #10348# CHECK: bkpt #65535349 3500x7a 0x00 0x20 0xe13510x7f 0xff 0x2f 0xe1352 353#------------------------------------------------------------------------------354# BLX (register)355#------------------------------------------------------------------------------356# CHECK: blx r2357# CHECK: blxne r2358 3590x32 0xff 0x2f 0xe13600x32 0xff 0x2f 0x11361 362#------------------------------------------------------------------------------363# BLX (immediate)364#------------------------------------------------------------------------------365# CHECK: blx	#32424576366# CHECK: blx	#16212288367 3680xa0 0xb0 0x7b 0xfa3690x50 0xd8 0x3d 0xfa370 371#------------------------------------------------------------------------------372# BX373#------------------------------------------------------------------------------374 375# CHECK: bx r2376# CHECK: bxne r2377 3780x12 0xff 0x2f 0xe13790x12 0xff 0x2f 0x11380 381#------------------------------------------------------------------------------382# BXJ383#------------------------------------------------------------------------------384 385# CHECK: bxj r2386# CHECK: bxjne r2387 3880x22 0xff 0x2f 0xe13890x22 0xff 0x2f 0x11390 391 392#------------------------------------------------------------------------------393# CDP/CDP2394#------------------------------------------------------------------------------395# CHECK: cdp  p7, #1, c1, c1, c1, #4396# CHECK: cdp2  p7, #1, c1, c1, c1, #4397 3980x81 0x17 0x11 0xee3990x81 0x17 0x11 0xfe400 401 402#------------------------------------------------------------------------------403# CLREX404#------------------------------------------------------------------------------405# CHECK: clrex406 4070x1f 0xf0 0x7f 0xf5408 409 410#------------------------------------------------------------------------------411# CLZ412#------------------------------------------------------------------------------413# CHECK: clz r1, r2414# CHECK: clzeq r1, r2415 4160x12 0x1f 0x6f 0xe14170x12 0x1f 0x6f 0x01418 419#------------------------------------------------------------------------------420# CMN421#------------------------------------------------------------------------------422# CHECK: cmn r1, #15423# CHECK: cmn r7, #40, #2424# CHECK: cmn r7, #-2147483638425# CHECK: cmn r1, r6426# CHECK: cmn r1, r6, lsl #10427# CHECK: cmn r1, r6, lsr #10428# CHECK: cmn sp, r6, lsr #10429# CHECK: cmn r1, r6, asr #10430# CHECK: cmn r1, r6, ror #10431# CHECK: cmn r7, r8, lsl r2432# CHECK: cmn sp, r8, lsr r2433# CHECK: cmn r7, r8, asr r2434# CHECK: cmn r7, r8, ror r2435# CHECK: cmn r1, r6, rrx436 4370x0f 0x00 0x71 0xe34380x28 0x01 0x77 0xe34390x2a 0x01 0x77 0xe34400x06 0x00 0x71 0xe14410x06 0x05 0x71 0xe14420x26 0x05 0x71 0xe14430x26 0x05 0x7d 0xe14440x46 0x05 0x71 0xe14450x66 0x05 0x71 0xe14460x18 0x02 0x77 0xe14470x38 0x02 0x7d 0xe14480x58 0x02 0x77 0xe14490x78 0x02 0x77 0xe14500x66 0x00 0x71 0xe1451 452#------------------------------------------------------------------------------453# CMP454#------------------------------------------------------------------------------455# CHECK: cmp r1, #15456# CHECK: cmp r7, #40, #2457# CHECK: cmp r7, #-2147483638458# CHECK: cmp r1, r6459# CHECK: cmp r1, r6, lsl #10460# CHECK: cmp r1, r6, lsr #10461# CHECK: cmp sp, r6, lsr #10462# CHECK: cmp r1, r6, asr #10463# CHECK: cmp r1, r6, ror #10464# CHECK: cmp r7, r8, lsl r2465# CHECK: cmp sp, r8, lsr r2466# CHECK: cmp r7, r8, asr r2467# CHECK: cmp r7, r8, ror r2468# CHECK: cmp r1, r6, rrx469 4700x0f 0x00 0x51 0xe34710x28 0x01 0x57 0xe34720x2a 0x01 0x57 0xe34730x06 0x00 0x51 0xe14740x06 0x05 0x51 0xe14750x26 0x05 0x51 0xe14760x26 0x05 0x5d 0xe14770x46 0x05 0x51 0xe14780x66 0x05 0x51 0xe14790x18 0x02 0x57 0xe14800x38 0x02 0x5d 0xe14810x58 0x02 0x57 0xe14820x78 0x02 0x57 0xe14830x66 0x00 0x51 0xe1484 485 486#------------------------------------------------------------------------------487# CPS488#------------------------------------------------------------------------------489# CHECK: cpsie  aif490# CHECK: cps  #15491# CHECK: cpsid  if, #10492# CHECK: cpsid  af, #17493# CHECK: cpsie  f, #26494 4950xc0 0x01 0x08 0xf14960x0f 0x00 0x02 0xf14970xca 0x00 0x0e 0xf14980x51 0x01 0x0e 0xf14990x5a 0x00 0x0a 0xf1500 501 502#------------------------------------------------------------------------------503# DBG504#------------------------------------------------------------------------------505# CHECK: dbg #0506# CHECK: dbg #5507# CHECK: dbg #15508 5090xf0 0xf0 0x20 0xe35100xf5 0xf0 0x20 0xe35110xff 0xf0 0x20 0xe3512 513 514#------------------------------------------------------------------------------515# DMB516#------------------------------------------------------------------------------517 518# CHECK: dmb #0x0519# CHECK: dmb #0x1520# CHECK: dmb oshst521# CHECK: dmb osh522# CHECK: dmb #0x4523# CHECK: dmb #0x5524# CHECK: dmb nshst525# CHECK: dmb nsh526# CHECK: dmb #0x8527# CHECK: dmb #0x9528# CHECK: dmb ishst529# CHECK: dmb ish530# CHECK: dmb #0xc531# CHECK: dmb #0xd532# CHECK: dmb st533# CHECK: dmb sy534 5350x50 0xf0 0x7f 0xf55360x51 0xf0 0x7f 0xf55370x52 0xf0 0x7f 0xf55380x53 0xf0 0x7f 0xf55390x54 0xf0 0x7f 0xf55400x55 0xf0 0x7f 0xf55410x56 0xf0 0x7f 0xf55420x57 0xf0 0x7f 0xf55430x58 0xf0 0x7f 0xf55440x59 0xf0 0x7f 0xf55450x5a 0xf0 0x7f 0xf55460x5b 0xf0 0x7f 0xf55470x5c 0xf0 0x7f 0xf55480x5d 0xf0 0x7f 0xf55490x5e 0xf0 0x7f 0xf55500x5f 0xf0 0x7f 0xf5551 552#------------------------------------------------------------------------------553# DSB554#------------------------------------------------------------------------------555 556# CHECK: ssbb557# CHECK: dsb	#0x1558# CHECK: dsb	oshst559# CHECK: dsb	osh560# CHECK: pssbb561# CHECK: dsb	#0x5562# CHECK: dsb	nshst563# CHECK: dsb	nsh564# CHECK: dsb	#0x8565# CHECK: dsb	#0x9566# CHECK: dsb	ishst567# CHECK: dsb	ish568# CHECK: dsb	#0xc569# CHECK: dsb	#0xd570# CHECK: dsb	st571# CHECK: dsb	sy572 5730x40 0xf0 0x7f 0xf55740x41 0xf0 0x7f 0xf55750x42 0xf0 0x7f 0xf55760x43 0xf0 0x7f 0xf55770x44 0xf0 0x7f 0xf55780x45 0xf0 0x7f 0xf55790x46 0xf0 0x7f 0xf55800x47 0xf0 0x7f 0xf55810x48 0xf0 0x7f 0xf55820x49 0xf0 0x7f 0xf55830x4a 0xf0 0x7f 0xf55840x4b 0xf0 0x7f 0xf55850x4c 0xf0 0x7f 0xf55860x4d 0xf0 0x7f 0xf55870x4e 0xf0 0x7f 0xf55880x4f 0xf0 0x7f 0xf5589 590#------------------------------------------------------------------------------591# EOR592#------------------------------------------------------------------------------593# CHECK: eor r4, r5, #61440594# CHECK: eor r7, r8, #-2147483638595# CHECK: eor r7, r8, #40, #2596# CHECK: eor r4, r5, r6597# CHECK: eor r4, r5, r6, lsl #5598# CHECK: eor r4, r5, r6, lsr #5599# CHECK: eor r4, r5, r6, lsr #5600# CHECK: eor r4, r5, r6, asr #5601# CHECK: eor r4, r5, r6, ror #5602# CHECK: eor r6, r7, r8, lsl r9603# CHECK: eor r6, r7, r8, lsr r9604# CHECK: eor r6, r7, r8, asr r9605# CHECK: eor r6, r7, r8, ror r9606# CHECK: eor r4, r5, r6, rrx607 608# CHECK: eor r5, r5, #61440609# CHECK: eor r4, r4, r5610# CHECK: eor r4, r4, r5, lsl #5611# CHECK: eor r4, r4, r5, lsr #5612# CHECK: eor r4, r4, r5, lsr #5613# CHECK: eor r4, r4, r5, asr #5614# CHECK: eor r4, r4, r5, ror #5615# CHECK: eor r6, r6, r7, lsl r9616# CHECK: eor r6, r6, r7, lsr r9617# CHECK: eor r6, r6, r7, asr r9618# CHECK: eor r6, r6, r7, ror r9619# CHECK: eor r4, r4, r5, rrx620 6210x0f 0x4a 0x25 0xe26220x2a 0x71 0x28 0xe26230x28 0x71 0x28 0xe26240x06 0x40 0x25 0xe06250x86 0x42 0x25 0xe06260xa6 0x42 0x25 0xe06270xa6 0x42 0x25 0xe06280xc6 0x42 0x25 0xe06290xe6 0x42 0x25 0xe06300x18 0x69 0x27 0xe06310x38 0x69 0x27 0xe06320x58 0x69 0x27 0xe06330x78 0x69 0x27 0xe06340x66 0x40 0x25 0xe0635 636 6370x0f 0x5a 0x25 0xe26380x05 0x40 0x24 0xe06390x85 0x42 0x24 0xe06400xa5 0x42 0x24 0xe06410xa5 0x42 0x24 0xe06420xc5 0x42 0x24 0xe06430xe5 0x42 0x24 0xe06440x17 0x69 0x26 0xe06450x37 0x69 0x26 0xe06460x57 0x69 0x26 0xe06470x77 0x69 0x26 0xe06480x65 0x40 0x24 0xe0649 650 651#------------------------------------------------------------------------------652# ISB653#------------------------------------------------------------------------------654# CHECK: isb sy655# CHECK: isb #0xa656 6570x6f 0xf0 0x7f 0xf56580x6a 0xf0 0x7f 0xf5659 660 661 662#------------------------------------------------------------------------------663# LDM*664#------------------------------------------------------------------------------665# CHECK: ldm       r2, {r1, r3, r4, r5, r6, sp}666# CHECK: ldmib     r2, {r1, r3, r4, r5, r6, sp}667# CHECK: ldmda     r2, {r1, r3, r4, r5, r6, sp}668# CHECK: ldmdb     r2, {r1, r3, r4, r5, r6, sp}669 670 671# CHECK: ldm       r2!, {r1, r3, r4, r5, r6, sp}672# CHECK: ldmib     r2!, {r1, r3, r4, r5, r6, sp}673# CHECK: ldmda     r2!, {r1, r3, r4, r5, r6, sp}674# CHECK: ldmdb     r2!, {r1, r3, r4, r5, r6, sp}675 6760x7a 0x20 0x92 0xe86770x7a 0x20 0x92 0xe96780x7a 0x20 0x12 0xe86790x7a 0x20 0x12 0xe9680 6810x7a 0x20 0xb2 0xe86820x7a 0x20 0xb2 0xe96830x7a 0x20 0x32 0xe86840x7a 0x20 0x32 0xe9685 686 687#------------------------------------------------------------------------------688# LDREX/LDREXB/LDREXH/LDREXD689#------------------------------------------------------------------------------690# CHECK: ldrexb  r3, [r4]691# CHECK: ldrexh  r2, [r5]692# CHECK: ldrex  r1, [r7]693# CHECK: ldrexd  r6, r7, [r8]694 6950x9f 0x3f 0xd4 0xe16960x9f 0x2f 0xf5 0xe16970x9f 0x1f 0x97 0xe16980x9f 0x6f 0xb8 0xe1699 700 701#------------------------------------------------------------------------------702# FIXME: LSL703#------------------------------------------------------------------------------704#------------------------------------------------------------------------------705# FIXME: LSR706#------------------------------------------------------------------------------707 708#------------------------------------------------------------------------------709# MCR/MCR2710#------------------------------------------------------------------------------711# CHECK: mcr  p7, #1, r5, c1, c1, #4712# CHECK: mcr2  p7, #1, r5, c1, c1, #4713 7140x91 0x57 0x21 0xee7150x91 0x57 0x21 0xfe716 717#------------------------------------------------------------------------------718# MCRR/MCRR2719#------------------------------------------------------------------------------720# CHECK: mcrr  p7, #15, r5, r4, c1721# CHECK: mcrr2  p7, #15, r5, r4, c1722 7230xf1 0x57 0x44 0xec7240xf1 0x57 0x44 0xfc725 726 727#------------------------------------------------------------------------------728# MLA729#------------------------------------------------------------------------------730# CHECK: mla  r1, r2, r3, r4731# CHECK: mlas r1, r2, r3, r4732# CHECK: mlane  r1, r2, r3, r4733# CHECK: mlasne r1, r2, r3, r4734 7350x92 0x43 0x21 0xe07360x92 0x43 0x31 0xe07370x92 0x43 0x21 0x107380x92 0x43 0x31 0x10739 740#------------------------------------------------------------------------------741# MLS742#------------------------------------------------------------------------------743# CHECK: mls  r2, r5, r6, r3744# CHECK: mlsne  r2, r5, r6, r3745 7460x95 0x36 0x62 0xe07470x95 0x36 0x62 0x10748 749#------------------------------------------------------------------------------750# MOV (immediate)751#------------------------------------------------------------------------------752# CHECK: mov r3, #7753# CHECK: mov r4, #4080754# CHECK: mov r5, #16711680755# CHECK: mov sp, #35756# CHECK: mov r9, #240, #30757# CHECK: mov r7, #-2147483638758# CHECK: mov pc, #2147483658759# CHECK: movw r6, #65535760# CHECK: movw r9, #65535761# CHECK: movw sp, #1193762# CHECK: movs r3, #7763# CHECK: movs r11, #99764# CHECK: movs r11, #240, #30765# CHECK: moveq r4, #4080766# CHECK: movseq r5, #16711680767 7680x07 0x30 0xa0 0xe37690xff 0x4e 0xa0 0xe37700xff 0x58 0xa0 0xe37710x23 0xd0 0xa0 0xe37720xf0 0x9f 0xa0 0xe37730x2a 0x71 0xa0 0xe37740x2a 0xf1 0xa0 0xe37750xff 0x6f 0x0f 0xe37760xff 0x9f 0x0f 0xe37770xa9 0xd4 0x00 0xe37780x07 0x30 0xb0 0xe37790x63 0xb0 0xb0 0xe37800xf0 0xbf 0xb0 0xe37810xff 0x4e 0xa0 0x037820xff 0x58 0xb0 0x03783 784#------------------------------------------------------------------------------785# MOV (register)786#------------------------------------------------------------------------------787# CHECK: mov r2, r3788# CHECK: movs r2, r3789# CHECK: moveq r2, r3790# CHECK: movseq r2, r3791 7920x03 0x20 0xa0 0xe17930x03 0x20 0xb0 0xe17940x03 0x20 0xa0 0x017950x03 0x20 0xb0 0x01796 797#------------------------------------------------------------------------------798# MOVT799#------------------------------------------------------------------------------800# CHECK: movt r3, #7801# CHECK: movt r6, #65535802# CHECK: movt sp, #3397 803# CHECK: movteq r4, #4080804 8050x07 0x30 0x40 0xe38060xff 0x6f 0x4f 0xe38070x45 0xdd 0x40 0xe38080xf0 0x4f 0x40 0x03809 810 811#------------------------------------------------------------------------------812# MRC/MRC2813#------------------------------------------------------------------------------814# CHECK: mrc  p14, #0, r1, c1, c2, #4815# CHECK: mrc  p15, #7, apsr_nzcv, c15, c6, #6816# CHECK: mrc2  p14, #0, r1, c1, c2, #4817# CHECK: mrc2  p9, #7, apsr_nzcv, c15, c0, #1818 8190x92 0x1e 0x11 0xee8200xd6 0xff 0xff 0xee8210x92 0x1e 0x11 0xfe8220x30 0xf9 0xff 0xfe823 824#------------------------------------------------------------------------------825# MRRC/MRRC2826#------------------------------------------------------------------------------827# CHECK: mrrc  p7, #1, r5, r4, c1828# CHECK: mrrc2  p7, #1, r5, r4, c1829 8300x11 0x57 0x54 0xec8310x11 0x57 0x54 0xfc832 833 834#------------------------------------------------------------------------------835# MRS836#------------------------------------------------------------------------------837# CHECK: mrs  r8, apsr838# CHECK: mrs  r8, spsr8390x00 0x80 0x0f 0xe18400x00 0x80 0x4f 0xe1841 842 843 844#------------------------------------------------------------------------------845# MSR846#------------------------------------------------------------------------------847 848# CHECK: msr  CPSR_fc, #5849# CHECK: msr  APSR_g, #5850# CHECK: msr  APSR_nzcvq, #5851# CHECK: msr  APSR_nzcvq, #5852# CHECK: msr  APSR_nzcvqg, #5853# CHECK: msr  CPSR_fc, #5854# CHECK: msr  CPSR_c, #5855# CHECK: msr  CPSR_x, #5856# CHECK: msr  CPSR_fc, #5857# CHECK: msr  CPSR_fc, #5858# CHECK: msr  CPSR_fsx, #5859# CHECK: msr  SPSR_fc, #5860# CHECK: msr  SPSR_fsxc, #5861# CHECK: msr  CPSR_fsxc, #5862# CHECK: msr  APSR_nzcvq, #2147483658863# CHECK: msr  SPSR_fsxc, #40, #2864 8650x05 0xf0 0x29 0xe38660x05 0xf0 0x24 0xe38670x05 0xf0 0x28 0xe38680x05 0xf0 0x28 0xe38690x05 0xf0 0x2c 0xe38700x05 0xf0 0x29 0xe38710x05 0xf0 0x21 0xe38720x05 0xf0 0x22 0xe38730x05 0xf0 0x29 0xe38740x05 0xf0 0x29 0xe38750x05 0xf0 0x2e 0xe38760x05 0xf0 0x69 0xe38770x05 0xf0 0x6f 0xe38780x05 0xf0 0x2f 0xe38790x2a 0xf1 0x28 0xe38800x28 0xf1 0x6f 0xe3881 882# CHECK: msr  CPSR_fc, r0883# CHECK: msr  APSR_g, r0884# CHECK: msr  APSR_nzcvq, r0885# CHECK: msr  APSR_nzcvq, r0886# CHECK: msr  APSR_nzcvqg, r0887# CHECK: msr  CPSR_fc, r0888# CHECK: msr  CPSR_c, r0889# CHECK: msr  CPSR_x, r0890# CHECK: msr  CPSR_fc, r0891# CHECK: msr  CPSR_fc, r0892# CHECK: msr  CPSR_fsx, r0893# CHECK: msr  SPSR_fc, r0894# CHECK: msr  SPSR_fsxc, r0895# CHECK: msr  CPSR_fsxc, r0896 8970x00 0xf0 0x29 0xe18980x00 0xf0 0x24 0xe18990x00 0xf0 0x28 0xe19000x00 0xf0 0x28 0xe19010x00 0xf0 0x2c 0xe19020x00 0xf0 0x29 0xe19030x00 0xf0 0x21 0xe19040x00 0xf0 0x22 0xe19050x00 0xf0 0x29 0xe19060x00 0xf0 0x29 0xe19070x00 0xf0 0x2e 0xe19080x00 0xf0 0x69 0xe19090x00 0xf0 0x6f 0xe19100x00 0xf0 0x2f 0xe1911 912#------------------------------------------------------------------------------913# MUL914#------------------------------------------------------------------------------915 916# CHECK: mul r5, r6, r7917# CHECK: muls r5, r6, r7918# CHECK: mulgt r5, r6, r7919# CHECK: mulsle r5, r6, r7920 9210x96 0x07 0x05 0xe09220x96 0x07 0x15 0xe09230x96 0x07 0x05 0xc09240x96 0x07 0x15 0xd0925 926 927#------------------------------------------------------------------------------928# MVN (immediate)929#------------------------------------------------------------------------------930# CHECK: mvn r3, #7931# CHECK: mvn r4, #4080932# CHECK: mvn r5, #16711680933# CHECK: mvn r7, #40, #2934# CHECK: mvn r7, #-2147483638935# CHECK: mvns r3, #7936# CHECK: mvns r11, #240, #30937# CHECK: mvns r11, #-2147483638938# CHECK: mvneq r4, #4080939# CHECK: mvnseq r5, #16711680940 9410x07 0x30 0xe0 0xe39420xff 0x4e 0xe0 0xe39430xff 0x58 0xe0 0xe39440x28 0x71 0xe0 0xe39450x2a 0x71 0xe0 0xe39460x07 0x30 0xf0 0xe39470xf0 0xbf 0xf0 0xe39480x2a 0xb1 0xf0 0xe39490xff 0x4e 0xe0 0x039500xff 0x58 0xf0 0x03951 952 953#------------------------------------------------------------------------------954# MVN (register)955#------------------------------------------------------------------------------956# CHECK: mvn r2, r3957# CHECK: mvns r2, r3958# CHECK: mvn r5, r6, lsl #19959# CHECK: mvn r5, r6, lsr #9960# CHECK: mvn r5, r6, asr #4961# CHECK: mvn r5, r6, ror #6962# CHECK: mvn r5, r6, rrx963# CHECK: mvneq r2, r3964# CHECK: mvnseq r2, r3, lsl #10965 9660x03 0x20 0xe0 0xe19670x03 0x20 0xf0 0xe19680x86 0x59 0xe0 0xe19690xa6 0x54 0xe0 0xe19700x46 0x52 0xe0 0xe19710x66 0x53 0xe0 0xe19720x66 0x50 0xe0 0xe19730x03 0x20 0xe0 0x019740x03 0x25 0xf0 0x01975 976 977#------------------------------------------------------------------------------978# MVN (shifted register)979#------------------------------------------------------------------------------980# CHECK: mvn r5, r6, lsl r7981# CHECK: mvns r5, r6, lsr r7982# CHECK: mvngt r5, r6, asr r7983# CHECK: mvnslt r5, r6, ror r7984 9850x16 0x57 0xe0 0xe19860x36 0x57 0xf0 0xe19870x56 0x57 0xe0 0xc19880x76 0x57 0xf0 0xb1989 990#------------------------------------------------------------------------------991# NOP992#------------------------------------------------------------------------------993# CHECK: nop994# CHECK: nopgt995 9960x00 0xf0 0x20 0xe39970x00 0xf0 0x20 0xc3998 999 1000#------------------------------------------------------------------------------1001# ORR1002#------------------------------------------------------------------------------1003# CHECK: orr r4, r5, #614401004# CHECK: orr r7, r8, #-21474836381005# CHECK: orr r7, r8, #40, #21006# CHECK: orr r4, r5, r61007# CHECK: orr r4, r5, r6, lsl #51008# CHECK: orr r4, r5, r6, lsr #51009# CHECK: orr r4, r5, r6, lsr #51010# CHECK: orr r4, r5, r6, asr #51011# CHECK: orr r4, r5, r6, ror #51012# CHECK: orr r6, r7, r8, lsl r91013# CHECK: orr r6, r7, r8, lsr r91014# CHECK: orr r6, r7, r8, asr r91015# CHECK: orr r6, r7, r8, ror r91016# CHECK: orr r4, r5, r6, rrx1017 1018# CHECK: orr r5, r5, #614401019# CHECK: orr r4, r4, r51020# CHECK: orr r4, r4, r5, lsl #51021# CHECK: orr r4, r4, r5, lsr #51022# CHECK: orr r4, r4, r5, lsr #51023# CHECK: orr r4, r4, r5, asr #51024# CHECK: orr r4, r4, r5, ror #51025# CHECK: orr r6, r6, r7, lsl r91026# CHECK: orr r6, r6, r7, lsr r91027# CHECK: orr r6, r6, r7, asr r91028# CHECK: orr r6, r6, r7, ror r91029# CHECK: orr r4, r4, r5, rrx1030 10310x0f 0x4a 0x85 0xe310320x2a 0x71 0x88 0xe310330x28 0x71 0x88 0xe310340x06 0x40 0x85 0xe110350x86 0x42 0x85 0xe110360xa6 0x42 0x85 0xe110370xa6 0x42 0x85 0xe110380xc6 0x42 0x85 0xe110390xe6 0x42 0x85 0xe110400x18 0x69 0x87 0xe110410x38 0x69 0x87 0xe110420x58 0x69 0x87 0xe110430x78 0x69 0x87 0xe110440x66 0x40 0x85 0xe11045 10460x0f 0x5a 0x85 0xe310470x05 0x40 0x84 0xe110480x85 0x42 0x84 0xe110490xa5 0x42 0x84 0xe110500xa5 0x42 0x84 0xe110510xc5 0x42 0x84 0xe110520xe5 0x42 0x84 0xe110530x17 0x69 0x86 0xe110540x37 0x69 0x86 0xe110550x57 0x69 0x86 0xe110560x77 0x69 0x86 0xe110570x65 0x40 0x84 0xe11058 1059# CHECK: orrseq r4, r5, #614401060# CHECK: orrne r4, r5, r61061# CHECK: orrseq r4, r5, r6, lsl #51062# CHECK: orrlo r6, r7, r8, ror r91063# CHECK: orrshi r4, r5, r6, rrx1064# CHECK: orrhs r5, r5, #614401065# CHECK: orrseq r4, r4, r51066# CHECK: orrne r6, r6, r7, asr r91067# CHECK: orrslt r6, r6, r7, ror r91068# CHECK: orrsgt r4, r4, r5, rrx1069 10700x0f 0x4a 0x95 0x0310710x06 0x40 0x85 0x1110720x86 0x42 0x95 0x0110730x78 0x69 0x87 0x3110740x66 0x40 0x95 0x8110750x0f 0x5a 0x85 0x2310760x05 0x40 0x94 0x0110770x57 0x69 0x86 0x1110780x77 0x69 0x96 0xb110790x65 0x40 0x94 0xc11080 1081#------------------------------------------------------------------------------1082# PKH1083#------------------------------------------------------------------------------1084# CHECK: pkhbt r2, r2, r31085# CHECK: pkhbt r2, r2, r3, lsl #311086# CHECK: pkhbt r2, r2, r31087# CHECK: pkhbt r2, r2, r3, lsl #151088 1089# CHECK: pkhbt r2, r2, r31090# CHECK: pkhtb r2, r2, r3, asr #311091# CHECK: pkhtb r2, r2, r3, asr #151092 10930x13 0x20 0x82 0xe610940x93 0x2f 0x82 0xe610950x13 0x20 0x82 0xe610960x93 0x27 0x82 0xe61097 10980x13 0x20 0x82 0xe610990xd3 0x2f 0x82 0xe611000xd3 0x27 0x82 0xe61101 1102#------------------------------------------------------------------------------1103# FIXME: PLD1104#------------------------------------------------------------------------------1105#------------------------------------------------------------------------------1106# FIXME: PLI1107#------------------------------------------------------------------------------1108 1109 1110#------------------------------------------------------------------------------1111# POP1112#------------------------------------------------------------------------------1113# CHECK: ldr r7, [sp], #41114# CHECK: pop {r7, r8, r9, r10}1115 11160x04 0x70 0x9d 0xe411170x80 0x07 0xbd 0xe81118 1119 1120#------------------------------------------------------------------------------1121# PUSH1122#------------------------------------------------------------------------------1123# CHECK: str r7, [sp, #-4]!1124# CHECK: push {r7, r8, r9, r10}1125 11260x04 0x70 0x2d 0xe511270x80 0x07 0x2d 0xe91128 1129 1130#------------------------------------------------------------------------------1131# QADD/QADD16/QADD81132#------------------------------------------------------------------------------1133# CHECK: qadd r1, r2, r31134# CHECK: qaddne r1, r2, r31135# CHECK: qadd16 r1, r2, r31136# CHECK: qadd16gt r1, r2, r31137# CHECK: qadd8 r1, r2, r31138# CHECK: qadd8le r1, r2, r31139 11400x52 0x10 0x03 0xe111410x52 0x10 0x03 0x1111420x13 0x1f 0x22 0xe611430x13 0x1f 0x22 0xc611440x93 0x1f 0x22 0xe611450x93 0x1f 0x22 0xd61146 1147 1148#------------------------------------------------------------------------------1149# QDADD/QDSUB1150#------------------------------------------------------------------------------1151# CHECK: qdadd r6, r7, r81152# CHECK: qdaddhi r6, r7, r81153# CHECK: qdsub r6, r7, r81154# CHECK: qdsubhi r6, r7, r81155 11560x57 0x60 0x48 0xe111570x57 0x60 0x48 0x8111580x57 0x60 0x68 0xe111590x57 0x60 0x68 0x811160 1161 1162#------------------------------------------------------------------------------1163# QSAX1164#------------------------------------------------------------------------------1165# CHECK: qsax r9, r12, r01166# CHECK: qsaxeq r9, r12, r01167 11680x50 0x9f 0x2c 0xe611690x50 0x9f 0x2c 0x061170 1171 1172#------------------------------------------------------------------------------1173# QSUB/QSUB16/QSUB81174#------------------------------------------------------------------------------1175# CHECK: qsub r1, r2, r31176# CHECK: qsubne r1, r2, r31177# CHECK: qsub16 r1, r2, r31178# CHECK: qsub16gt r1, r2, r31179# CHECK: qsub8 r1, r2, r31180# CHECK: qsub8le r1, r2, r31181 11820x52 0x10 0x23 0xe111830x52 0x10 0x23 0x1111840x73 0x1f 0x22 0xe611850x73 0x1f 0x22 0xc611860xf3 0x1f 0x22 0xe611870xf3 0x1f 0x22 0xd61188 1189 1190#------------------------------------------------------------------------------1191# RBIT1192#------------------------------------------------------------------------------1193# CHECK: rbit r1, r21194# CHECK: rbitne r1, r21195 11960x32 0x1f 0xff 0xe611970x32 0x1f 0xff 0x161198 1199 1200#------------------------------------------------------------------------------1201# REV/REV16/REVSH1202#------------------------------------------------------------------------------1203# CHECK: rev r1, r91204# CHECK: revne r1, r51205# CHECK: rev16 r8, r31206# CHECK: rev16ne r12, r41207# CHECK: revsh r4, r91208# CHECK: revshne r9, r11209 12100x39 0x1f 0xbf 0xe612110x35 0x1f 0xbf 0x1612120xb3 0x8f 0xbf 0xe612130xb4 0xcf 0xbf 0x1612140xb9 0x4f 0xff 0xe612150xb1 0x9f 0xff 0x161216 1217 1218#------------------------------------------------------------------------------1219# RFE1220#------------------------------------------------------------------------------1221# CHECK: rfeda r21222# CHECK: rfedb r31223# CHECK: rfeia r51224# CHECK: rfeib r61225 1226# CHECK: rfeda r4!1227# CHECK: rfedb r7!1228# CHECK: rfeia r9!1229# CHECK: rfeib r8!1230 1231# CHECK: rfeda r21232# CHECK: rfedb r31233# CHECK: rfeia r51234# CHECK: rfeib r61235 1236# CHECK: rfeda r4!1237# CHECK: rfedb r7!1238# CHECK: rfeia r9!1239# CHECK: rfeib r8!1240 1241# CHECK: rfeia r11242# CHECK: rfeia r1!1243 12440x00 0x0a 0x12 0xf812450x00 0x0a 0x13 0xf912460x00 0x0a 0x95 0xf812470x00 0x0a 0x96 0xf91248 12490x00 0x0a 0x34 0xf812500x00 0x0a 0x37 0xf912510x00 0x0a 0xb9 0xf812520x00 0x0a 0xb8 0xf91253 12540x00 0x0a 0x12 0xf812550x00 0x0a 0x13 0xf912560x00 0x0a 0x95 0xf812570x00 0x0a 0x96 0xf91258 12590x00 0x0a 0x34 0xf812600x00 0x0a 0x37 0xf912610x00 0x0a 0xb9 0xf812620x00 0x0a 0xb8 0xf91263 12640x00 0x0a 0x91 0xf812650x00 0x0a 0xb1 0xf81266 1267 1268#------------------------------------------------------------------------------1269# RSB1270#------------------------------------------------------------------------------1271# CHECK: rsb r4, r5, #614401272# CHECK: rsb r7, r8, #-21474836381273# CHECK: rsb r7, r8, #40, #21274# CHECK: rsb r4, r5, r61275# CHECK: rsb r4, r5, r6, lsl #51276# CHECK: rsblo r4, r5, r6, lsr #51277# CHECK: rsb r4, r5, r6, lsr #51278# CHECK: rsb r4, r5, r6, asr #51279# CHECK: rsb r4, r5, r6, ror #51280# CHECK: rsb r6, r7, r8, lsl r91281# CHECK: rsb r6, r7, r8, lsr r91282# CHECK: rsb r6, r7, r8, asr r91283# CHECK: rsble r6, r7, r8, ror r91284# CHECK: rsb r4, r5, r6, rrx1285 1286# CHECK: rsb r5, r5, #614401287# CHECK: rsb r4, r4, r51288# CHECK: rsb r4, r4, r5, lsl #51289# CHECK: rsb r4, r4, r5, lsr #51290# CHECK: rsbne r4, r4, r5, lsr #51291# CHECK: rsb r4, r4, r5, asr #51292# CHECK: rsb r4, r4, r5, ror #51293# CHECK: rsbgt r6, r6, r7, lsl r91294# CHECK: rsb r6, r6, r7, lsr r91295# CHECK: rsb r6, r6, r7, asr r91296# CHECK: rsb r6, r6, r7, ror r91297# CHECK: rsb r4, r4, r5, rrx1298 12990x0f 0x4a 0x65 0xe213000x2a 0x71 0x68 0xe213010x28 0x71 0x68 0xe213020x06 0x40 0x65 0xe013030x86 0x42 0x65 0xe013040xa6 0x42 0x65 0x3013050xa6 0x42 0x65 0xe013060xc6 0x42 0x65 0xe013070xe6 0x42 0x65 0xe013080x18 0x69 0x67 0xe013090x38 0x69 0x67 0xe013100x58 0x69 0x67 0xe013110x78 0x69 0x67 0xd013120x66 0x40 0x65 0xe01313 13140x0f 0x5a 0x65 0xe213150x05 0x40 0x64 0xe013160x85 0x42 0x64 0xe013170xa5 0x42 0x64 0xe013180xa5 0x42 0x64 0x1013190xc5 0x42 0x64 0xe013200xe5 0x42 0x64 0xe013210x17 0x69 0x66 0xc013220x37 0x69 0x66 0xe013230x57 0x69 0x66 0xe013240x77 0x69 0x66 0xe013250x65 0x40 0x64 0xe01326 1327#------------------------------------------------------------------------------1328# RSBS1329#------------------------------------------------------------------------------1330# CHECK: rsbs   r7, r8, #-21474836381331# CHECK: rsbs   r7, r8, #40, #21332 13330x2a 0x71 0x78 0xe213340x28 0x71 0x78 0xe21335 1336#------------------------------------------------------------------------------1337# RSC1338#------------------------------------------------------------------------------1339# CHECK: rsc r4, r5, #614401340# CHECK: rsc r7, r8, #-21474836381341# CHECK: rsc r7, r8, #40, #21342# CHECK: rsc r4, r5, r61343# CHECK: rsc r4, r5, r6, lsl #51344# CHECK: rsclo r4, r5, r6, lsr #51345# CHECK: rsc r4, r5, r6, lsr #51346# CHECK: rsc r4, r5, r6, asr #51347# CHECK: rsc r4, r5, r6, ror #51348# CHECK: rsc r6, r7, r8, lsl r91349# CHECK: rsc r6, r7, r8, lsr r91350# CHECK: rsc r6, r7, r8, asr r91351# CHECK: rscle r6, r7, r8, ror r91352 1353# CHECK: rsc r5, r5, #614401354# CHECK: rsc r4, r4, r51355# CHECK: rsc r4, r4, r5, lsl #51356# CHECK: rsc r4, r4, r5, lsr #51357# CHECK: rscne r4, r4, r5, lsr #51358# CHECK: rsc r4, r4, r5, asr #51359# CHECK: rsc r4, r4, r5, ror #51360# CHECK: rscgt r6, r6, r7, lsl r91361# CHECK: rsc r6, r6, r7, lsr r91362# CHECK: rsc r6, r6, r7, asr r91363# CHECK: rsc r6, r6, r7, ror r91364 13650x0f 0x4a 0xe5 0xe213660x2a 0x71 0xe8 0xe213670x28 0x71 0xe8 0xe213680x06 0x40 0xe5 0xe013690x86 0x42 0xe5 0xe013700xa6 0x42 0xe5 0x3013710xa6 0x42 0xe5 0xe013720xc6 0x42 0xe5 0xe013730xe6 0x42 0xe5 0xe013740x18 0x69 0xe7 0xe013750x38 0x69 0xe7 0xe013760x58 0x69 0xe7 0xe013770x78 0x69 0xe7 0xd01378 13790x0f 0x5a 0xe5 0xe213800x05 0x40 0xe4 0xe013810x85 0x42 0xe4 0xe013820xa5 0x42 0xe4 0xe013830xa5 0x42 0xe4 0x1013840xc5 0x42 0xe4 0xe013850xe5 0x42 0xe4 0xe013860x17 0x69 0xe6 0xc013870x37 0x69 0xe6 0xe013880x57 0x69 0xe6 0xe013890x77 0x69 0xe6 0xe01390 1391#------------------------------------------------------------------------------1392# RRX/RRXS1393#------------------------------------------------------------------------------1394# CHECK: rrx	r0, r11395# CHECK: rrx	sp, pc1396# CHECK: rrx	pc, lr1397# CHECK: rrx	lr, sp1398 13990x61 0x00 0xa0 0xe114000x6f 0xd0 0xa0 0xe114010x6e 0xf0 0xa0 0xe114020x6d 0xe0 0xa0 0xe11403 1404# CHECK: rrxs	r0, r11405# CHECK: rrxs	sp, pc1406# CHECK: rrxs	pc, lr1407# CHECK: rrxs	lr, sp1408 14090x61 0x00 0xb0 0xe114100x6f 0xd0 0xb0 0xe114110x6e 0xf0 0xb0 0xe114120x6d 0xe0 0xb0 0xe11413 1414#------------------------------------------------------------------------------1415# SADD16/SADD81416#------------------------------------------------------------------------------1417# CHECK: sadd16 r1, r2, r31418# CHECK: sadd16gt r1, r2, r31419# CHECK: sadd8 r1, r2, r31420# CHECK: sadd8le r1, r2, r31421 14220x13 0x1f 0x12 0xe614230x13 0x1f 0x12 0xc614240x93 0x1f 0x12 0xe614250x93 0x1f 0x12 0xd61426 1427 1428#------------------------------------------------------------------------------1429# SASX1430#------------------------------------------------------------------------------1431# CHECK: sasx r9, r12, r01432# CHECK: sasxeq r9, r12, r01433 14340x30 0x9f 0x1c 0xe614350x30 0x9f 0x1c 0x061436 1437 1438#------------------------------------------------------------------------------1439# SBC1440#------------------------------------------------------------------------------1441# CHECK: sbc r4, r5, #614401442# CHECK: sbc r7, r8, #-21474836381443# CHECK: sbc r7, r8, #40, #21444# CHECK: sbc r4, r5, r61445# CHECK: sbc r4, r5, r6, lsl #51446# CHECK: sbc r4, r5, r6, lsr #51447# CHECK: sbc r4, r5, r6, lsr #51448# CHECK: sbc r4, r5, r6, asr #51449# CHECK: sbc r4, r5, r6, ror #51450# CHECK: sbc r6, r7, r8, lsl r91451# CHECK: sbc r6, r7, r8, lsr r91452# CHECK: sbc r6, r7, r8, asr r91453# CHECK: sbc r6, r7, r8, ror r91454 1455# CHECK: sbc r5, r5, #614401456# CHECK: sbc r4, r4, r51457# CHECK: sbc r4, r4, r5, lsl #51458# CHECK: sbc r4, r4, r5, lsr #51459# CHECK: sbc r4, r4, r5, lsr #51460# CHECK: sbc r4, r4, r5, asr #51461# CHECK: sbc r4, r4, r5, ror #51462# CHECK: sbc r6, r6, r7, lsl r91463# CHECK: sbc r6, r6, r7, lsr r91464# CHECK: sbc r6, r6, r7, asr r91465# CHECK: sbc r6, r6, r7, ror r91466 14670x0f 0x4a 0xc5 0xe214680x2a 0x71 0xc8 0xe214690x28 0x71 0xc8 0xe214700x06 0x40 0xc5 0xe014710x86 0x42 0xc5 0xe014720xa6 0x42 0xc5 0xe014730xa6 0x42 0xc5 0xe014740xc6 0x42 0xc5 0xe014750xe6 0x42 0xc5 0xe014760x18 0x69 0xc7 0xe014770x38 0x69 0xc7 0xe014780x58 0x69 0xc7 0xe014790x78 0x69 0xc7 0xe01480 14810x0f 0x5a 0xc5 0xe214820x05 0x40 0xc4 0xe014830x85 0x42 0xc4 0xe014840xa5 0x42 0xc4 0xe014850xa5 0x42 0xc4 0xe014860xc5 0x42 0xc4 0xe014870xe5 0x42 0xc4 0xe014880x17 0x69 0xc6 0xe014890x37 0x69 0xc6 0xe014900x57 0x69 0xc6 0xe014910x77 0x69 0xc6 0xe01492 1493 1494#------------------------------------------------------------------------------1495# SBFX1496#------------------------------------------------------------------------------1497# CHECK: sbfx r4, r5, #16, #11498# CHECK: sbfxgt r4, r5, #16, #161499 15000x55 0x48 0xa0 0xe715010x55 0x48 0xaf 0xc71502 1503 1504#------------------------------------------------------------------------------1505# SEL1506#------------------------------------------------------------------------------1507# CHECK: sel r9, r2, r11508# CHECK: selne r9, r2, r11509 15100xb1 0x9f 0x82 0xe615110xb1 0x9f 0x82 0x161512 1513 1514#------------------------------------------------------------------------------1515# SETEND1516#------------------------------------------------------------------------------1517# CHECK: setend be1518# CHECK: setend le1519 15200x00 0x02 0x01 0xf115210x00 0x00 0x01 0xf11522 1523#------------------------------------------------------------------------------1524# SEV1525#------------------------------------------------------------------------------1526# CHECK: sev1527# CHECK: seveq1528 15290x04 0xf0 0x20 0xe315300x04 0xf0 0x20 0x031531 1532#------------------------------------------------------------------------------1533# SHADD16/SHADD81534#------------------------------------------------------------------------------1535# CHECK: shadd16 r4, r8, r21536# CHECK: shadd16gt r4, r8, r21537# CHECK: shadd8 r4, r8, r21538# CHECK: shadd8gt r4, r8, r21539 15400x12 0x4f 0x38 0xe615410x12 0x4f 0x38 0xc615420x92 0x4f 0x38 0xe615430x92 0x4f 0x38 0xc61544 1545 1546#------------------------------------------------------------------------------1547# SHASX1548#------------------------------------------------------------------------------1549# CHECK: shasx r4, r8, r21550# CHECK: shasxgt r4, r8, r21551 15520x32 0x4f 0x38 0xe615530x32 0x4f 0x38 0xc61554 1555 1556#------------------------------------------------------------------------------1557# SHSUB16/SHSUB81558#------------------------------------------------------------------------------1559# CHECK: shsub16 r4, r8, r21560# CHECK: shsub16gt r4, r8, r21561# CHECK: shsub8 r4, r8, r21562# CHECK: shsub8gt r4, r8, r21563 15640x72 0x4f 0x38 0xe615650x72 0x4f 0x38 0xc615660xf2 0x4f 0x38 0xe615670xf2 0x4f 0x38 0xc61568 1569#------------------------------------------------------------------------------1570# SMLABB/SMLABT/SMLATB/SMLATT1571#------------------------------------------------------------------------------1572# CHECK: smlabb r3, r1, r9, r01573# CHECK: smlabt r5, r6, r4, r11574# CHECK: smlatb r4, r2, r3, r21575# CHECK: smlatt r8, r3, r8, r41576# CHECK: smlabbge r3, r1, r9, r01577# CHECK: smlabtle r5, r6, r4, r11578# CHECK: smlatbne r4, r2, r3, r21579# CHECK: smlatteq r8, r3, r8, r41580 15810x81 0x09 0x03 0xe115820xc6 0x14 0x05 0xe115830xa2 0x23 0x04 0xe115840xe3 0x48 0x08 0xe115850x81 0x09 0x03 0xa115860xc6 0x14 0x05 0xd115870xa2 0x23 0x04 0x1115880xe3 0x48 0x08 0x011589 1590#------------------------------------------------------------------------------1591# SMLAD/SMLADX1592#------------------------------------------------------------------------------1593# CHECK: smlad r2, r3, r5, r81594# CHECK: smladx r2, r3, r5, r81595# CHECK: smladeq r2, r3, r5, r81596# CHECK: smladxhi r2, r3, r5, r81597 15980x13 0x85 0x02 0xe715990x33 0x85 0x02 0xe716000x13 0x85 0x02 0x0716010x33 0x85 0x02 0x871602 1603 1604#------------------------------------------------------------------------------1605# SMLAL1606#------------------------------------------------------------------------------1607# CHECK: smlal r2, r3, r5, r81608# CHECK: smlals r2, r3, r5, r81609# CHECK: smlaleq r2, r3, r5, r81610# CHECK: smlalshi r2, r3, r5, r81611 16120x95 0x28 0xe3 0xe016130x95 0x28 0xf3 0xe016140x95 0x28 0xe3 0x0016150x95 0x28 0xf3 0x801616 1617 1618#------------------------------------------------------------------------------1619# SMLALBB/SMLALBT/SMLALTB/SMLALTT1620#------------------------------------------------------------------------------1621# CHECK: smlalbb r3, r1, r9, r01622# CHECK: smlalbt r5, r6, r4, r11623# CHECK: smlaltb r4, r2, r3, r21624# CHECK: smlaltt r8, r3, r8, r41625# CHECK: smlalbbge r3, r1, r9, r01626# CHECK: smlalbtle r5, r6, r4, r11627# CHECK: smlaltbne r4, r2, r3, r21628# CHECK: smlaltteq r8, r3, r8, r41629 16300x89 0x30 0x41 0xe116310xc4 0x51 0x46 0xe116320xa3 0x42 0x42 0xe116330xe8 0x84 0x43 0xe116340x89 0x30 0x41 0xa116350xc4 0x51 0x46 0xd116360xa3 0x42 0x42 0x1116370xe8 0x84 0x43 0x011638 1639 1640#------------------------------------------------------------------------------1641# SMLALD/SMLALDX1642#------------------------------------------------------------------------------1643# CHECK: smlald r2, r3, r5, r81644# CHECK: smlaldx r2, r3, r5, r81645# CHECK: smlaldeq r2, r3, r5, r81646# CHECK: smlaldxhi r2, r3, r5, r81647 16480x15 0x28 0x43 0xe716490x35 0x28 0x43 0xe716500x15 0x28 0x43 0x0716510x35 0x28 0x43 0x871652 1653 1654#------------------------------------------------------------------------------1655# SMLAWB/SMLAWT1656#------------------------------------------------------------------------------1657# CHECK: smlawb r2, r3, r10, r81658# CHECK: smlawt r8, r3, r5, r91659# CHECK: smlawbeq r2, r7, r5, r81660# CHECK: smlawthi r1, r3, r0, r81661 16620x83 0x8a 0x22 0xe116630xc3 0x95 0x28 0xe116640x87 0x85 0x22 0x0116650xc3 0x80 0x21 0x811666 1667 1668#------------------------------------------------------------------------------1669# SMLSD/SMLSDX1670#------------------------------------------------------------------------------1671# CHECK: smlsd r2, r3, r5, r81672# CHECK: smlsdx r2, r3, r5, r81673# CHECK: smlsdeq r2, r3, r5, r81674# CHECK: smlsdxhi r2, r3, r5, r81675 16760x53 0x85 0x02 0xe716770x73 0x85 0x02 0xe716780x53 0x85 0x02 0x0716790x73 0x85 0x02 0x871680 1681 1682#------------------------------------------------------------------------------1683# SMLSLD/SMLSLDX1684#------------------------------------------------------------------------------1685# CHECK: smlsld r2, r9, r5, r11686# CHECK: smlsldx r4, r11, r2, r81687# CHECK: smlsldeq r8, r2, r5, r61688# CHECK: smlsldxhi r1, r0, r3, r81689 16900x55 0x21 0x49 0xe716910x72 0x48 0x4b 0xe716920x55 0x86 0x42 0x0716930x73 0x18 0x40 0x871694 1695 1696#------------------------------------------------------------------------------1697# SMMLA/SMMLAR1698#------------------------------------------------------------------------------1699# CHECK: smmla r1, r2, r3, r41700# CHECK: smmlar r4, r3, r2, r11701# CHECK: smmlalo r1, r2, r3, r41702# CHECK: smmlarhs r4, r3, r2, r11703 17040x12 0x43 0x51 0xe717050x33 0x12 0x54 0xe717060x12 0x43 0x51 0x3717070x33 0x12 0x54 0x271708 1709 1710#------------------------------------------------------------------------------1711# SMMLS/SMMLSR1712#------------------------------------------------------------------------------1713# CHECK: smmls r1, r2, r3, r41714# CHECK: smmlsr r4, r3, r2, r11715# CHECK: smmlslo r1, r2, r3, r41716# CHECK: smmlsrhs r4, r3, r2, r11717 17180xd2 0x43 0x51 0xe717190xf3 0x12 0x54 0xe717200xd2 0x43 0x51 0x3717210xf3 0x12 0x54 0x271722 1723 1724#------------------------------------------------------------------------------1725# SMMUL/SMMULR1726#------------------------------------------------------------------------------1727# CHECK: smmul r2, r3, r41728# CHECK: smmulr r3, r2, r11729# CHECK: smmullo r2, r3, r41730# CHECK: smmulrhs r3, r2, r11731 17320x13 0xf4 0x52 0xe717330x32 0xf1 0x53 0xe717340x13 0xf4 0x52 0x3717350x32 0xf1 0x53 0x271736 1737 1738#------------------------------------------------------------------------------1739# SMUAD/SMUADX1740#------------------------------------------------------------------------------1741# CHECK: smuad r2, r3, r41742# CHECK: smuadx r3, r2, r11743# CHECK: smuadlt r2, r3, r41744# CHECK: smuadxge r3, r2, r11745 17460x13 0xf4 0x02 0xe717470x32 0xf1 0x03 0xe717480x13 0xf4 0x02 0xb717490x32 0xf1 0x03 0xa71750 1751 1752#------------------------------------------------------------------------------1753# SMULBB/SMLALBT/SMLALTB/SMLALTT1754#------------------------------------------------------------------------------1755# CHECK: smulbb r3, r9, r01756# CHECK: smulbt r5, r4, r11757# CHECK: smultb r4, r2, r21758# CHECK: smultt r8, r3, r41759# CHECK: smulbbge r1, r9, r01760# CHECK: smulbtle r5, r6, r41761# CHECK: smultbne r2, r3, r21762# CHECK: smultteq r8, r3, r41763 17640x89 0x00 0x63 0xe117650xc4 0x01 0x65 0xe117660xa2 0x02 0x64 0xe117670xe3 0x04 0x68 0xe117680x89 0x00 0x61 0xa117690xc6 0x04 0x65 0xd117700xa3 0x02 0x62 0x1117710xe3 0x04 0x68 0x011772 1773 1774#------------------------------------------------------------------------------1775# SMULL1776#------------------------------------------------------------------------------1777# CHECK: smull r3, r9, r0, r11778# CHECK: smulls r3, r9, r0, r21779# CHECK: smulleq r8, r3, r4, r51780# CHECK: smullseq r8, r3, r4, r31781 17820x90 0x31 0xc9 0xe017830x90 0x32 0xd9 0xe017840x94 0x85 0xc3 0x0017850x94 0x83 0xd3 0x001786 1787 1788#------------------------------------------------------------------------------1789# SMULWB/SMULWT1790#------------------------------------------------------------------------------1791# CHECK: smulwb r3, r9, r01792# CHECK: smulwt r3, r9, r21793 17940xa9 0x00 0x23 0xe117950xe9 0x02 0x23 0xe11796 1797 1798#------------------------------------------------------------------------------1799# SMUSD/SMUSDX1800#------------------------------------------------------------------------------1801# CHECK: smusd r3, r0, r11802# CHECK: smusdx r3, r9, r21803# CHECK: smusdeq r8, r3, r21804# CHECK: smusdxne r7, r4, r31805 18060x50 0xf1 0x03 0xe718070x79 0xf2 0x03 0xe718080x53 0xf2 0x08 0x0718090x74 0xf3 0x07 0x171810 1811 1812#------------------------------------------------------------------------------1813# SRS1814#------------------------------------------------------------------------------1815# CHECK: srsda sp, #51816# CHECK: srsdb sp, #11817# CHECK: srsia sp, #01818# CHECK: srsib sp, #151819 1820# CHECK: srsda sp!, #311821# CHECK: srsdb sp!, #191822# CHECK: srsia sp!, #21823# CHECK: srsib sp!, #141824 1825# CHECK: srsda sp, #111826# CHECK: srsdb sp, #101827# CHECK: srsia sp, #91828# CHECK: srsib sp, #51829 1830# CHECK: srsda sp!, #51831# CHECK: srsdb sp!, #51832# CHECK: srsia sp!, #51833# CHECK: srsib sp!, #51834 1835# CHECK: srsia sp, #51836# CHECK: srsia sp!, #51837 18380x05 0x05 0x4d 0xf818390x01 0x05 0x4d 0xf918400x00 0x05 0xcd 0xf818410x0f 0x05 0xcd 0xf91842 18430x1f 0x05 0x6d 0xf818440x13 0x05 0x6d 0xf918450x02 0x05 0xed 0xf818460x0e 0x05 0xed 0xf91847 18480x0b 0x05 0x4d 0xf818490x0a 0x05 0x4d 0xf918500x09 0x05 0xcd 0xf818510x05 0x05 0xcd 0xf91852 18530x05 0x05 0x6d 0xf818540x05 0x05 0x6d 0xf918550x05 0x05 0xed 0xf818560x05 0x05 0xed 0xf91857 18580x05 0x05 0xcd 0xf818590x05 0x05 0xed 0xf81860 1861 1862#------------------------------------------------------------------------------1863# SSAT1864#------------------------------------------------------------------------------1865# CHECK: ssat	r8, #1, r101866# CHECK: ssat	r8, #1, r10, lsl #311867# CHECK: ssat	r8, #1, r10, asr #321868# CHECK: ssat	r8, #1, r10, asr #11869 18700x1a 0x80 0xa0 0xe618710x9a 0x8f 0xa0 0xe618720x5a 0x80 0xa0 0xe618730xda 0x80 0xa0 0xe61874 1875 1876#------------------------------------------------------------------------------1877# SSAT161878#------------------------------------------------------------------------------1879# CHECK: ssat16	r2, #1, r71880# CHECK: ssat16	r3, #16, r51881 18820x37 0x2f 0xa0 0xe618830x35 0x3f 0xaf 0xe61884 1885 1886#------------------------------------------------------------------------------1887# SSAX1888#------------------------------------------------------------------------------1889# CHECK: ssax r2, r3, r41890# CHECK: ssaxlt r2, r3, r41891 18920x54 0x2f 0x13 0xe618930x54 0x2f 0x13 0xb61894 1895#------------------------------------------------------------------------------1896# SSUB16/SSUB81897#------------------------------------------------------------------------------1898# CHECK: ssub16 r1, r0, r61899# CHECK: ssub16ne r5, r3, r21900# CHECK: ssub8 r9, r2, r41901# CHECK: ssub8eq r5, r1, r21902 19030x76 0x1f 0x10 0xe619040x72 0x5f 0x13 0x1619050xf4 0x9f 0x12 0xe619060xf2 0x5f 0x11 0x061907 1908 1909#------------------------------------------------------------------------------1910# STM*1911#------------------------------------------------------------------------------1912# CHECK: stm r2, {r1, r3, r4, r5, r6, sp}1913# CHECK: stm r3, {r1, r3, r4, r5, r6, lr}1914# CHECK: stmib     r4, {r1, r3, r4, r5, r6, sp}1915# CHECK: stmda     r5, {r1, r3, r4, r5, r6, sp}1916# CHECK: stmdb     r6, {r1, r3, r4, r5, r6, r8}1917# CHECK: stmdb     sp, {r1, r3, r4, r5, r6, sp}1918 1919 1920# CHECK: stm       r8!, {r1, r3, r4, r5, r6, sp}1921# CHECK: stmib     r9!, {r1, r3, r4, r5, r6, sp}1922# CHECK: stmda     sp!, {r1, r3, r4, r5, r6}1923# CHECK: stmdb     r0!, {r1, r5, r7, sp}1924 19250x7a 0x20 0x82 0xe819260x7a 0x40 0x83 0xe819270x7a 0x20 0x84 0xe919280x7a 0x20 0x05 0xe819290x7a 0x01 0x06 0xe919300x7a 0x20 0x0d 0xe91931 19320x7a 0x20 0xa8 0xe819330x7a 0x20 0xa9 0xe919340x7a 0x00 0x2d 0xe819350xa2 0x20 0x20 0xe91936 1937 1938#------------------------------------------------------------------------------1939# STREX/STREXB/STREXH/STREXD1940#------------------------------------------------------------------------------1941# CHECK: strexb  r1, r3, [r41942# CHECK: strexh  r4, r2, [r51943# CHECK: strex  r2, r1, [r71944# CHECK: strexd  r6, r2, r3, [r81945# CHECK: strexd  sp, r0, r1, [r0]1946 19470x93 0x1f 0xc4 0xe119480x92 0x4f 0xe5 0xe119490x91 0x2f 0x87 0xe119500x92 0x6f 0xa8 0xe119510x90 0xdf 0xa0 0xe11952 1953#------------------------------------------------------------------------------1954# SUB1955#------------------------------------------------------------------------------1956# CHECK: sub r4, r5, #614401957# CHECK: sub r7, r8, #-21474836381958# CHECK: sub r7, r8, #40, #21959# CHECK: sub r4, r5, r61960# CHECK: sub r4, r5, r6, lsl #51961# CHECK: sub r4, r5, r6, lsr #51962# CHECK: sub r4, r5, r6, lsr #51963# CHECK: sub r4, r5, r6, asr #51964# CHECK: sub r4, r5, r6, ror #51965# CHECK: sub r6, r7, r8, lsl r91966# CHECK: sub r6, r7, r8, lsr r91967# CHECK: sub r6, r7, r8, asr r91968# CHECK: sub r6, r7, r8, ror r91969 1970# CHECK: sub r5, r5, #614401971# CHECK: sub r4, r4, r51972# CHECK: sub r4, r4, r5, lsl #51973# CHECK: sub r4, r4, r5, lsr #51974# CHECK: sub r4, r4, r5, lsr #51975# CHECK: sub r4, r4, r5, asr #51976# CHECK: sub r4, r4, r5, ror #51977# CHECK: sub r6, r6, r7, lsl r91978# CHECK: sub r6, r6, r7, lsr r91979# CHECK: sub r6, r6, r7, asr r91980# CHECK: sub r6, r6, r7, ror r91981 19820x0f 0x4a 0x45 0xe219830x2a 0x71 0x48 0xe219840x28 0x71 0x48 0xe219850x06 0x40 0x45 0xe019860x86 0x42 0x45 0xe019870xa6 0x42 0x45 0xe019880xa6 0x42 0x45 0xe019890xc6 0x42 0x45 0xe019900xe6 0x42 0x45 0xe019910x18 0x69 0x47 0xe019920x38 0x69 0x47 0xe019930x58 0x69 0x47 0xe019940x78 0x69 0x47 0xe01995 1996 19970x0f 0x5a 0x45 0xe219980x05 0x40 0x44 0xe019990x85 0x42 0x44 0xe020000xa5 0x42 0x44 0xe020010xa5 0x42 0x44 0xe020020xc5 0x42 0x44 0xe020030xe5 0x42 0x44 0xe020040x17 0x69 0x46 0xe020050x37 0x69 0x46 0xe020060x57 0x69 0x46 0xe020070x77 0x69 0x46 0xe02008 2009#------------------------------------------------------------------------------2010# SUBS2011#------------------------------------------------------------------------------2012# CHECK: subs   r7, r8, #-21474836382013# CHECK: subs   r7, r8, #40, #22014 20150x2a 0x71 0x58 0xe220160x28 0x71 0x58 0xe22017 2018#------------------------------------------------------------------------------2019# SVC2020#------------------------------------------------------------------------------2021# CHECK: svc #162022# CHECK: svc #02023# CHECK: svc #167772152024 20250x10 0x00 0x00 0xef20260x00 0x00 0x00 0xef20270xff 0xff 0xff 0xef2028 2029 2030#------------------------------------------------------------------------------2031# SWP/SWPB2032#------------------------------------------------------------------------------2033# CHECK: swp r1, r2, [r32034# CHECK: swp r4, r4, [r62035# CHECK: swpb r5, r1, [r92036 20370x92 0x10 0x03 0xe120380x94 0x40 0x06 0xe120390x91 0x50 0x49 0xe12040 2041 2042#------------------------------------------------------------------------------2043# SXTAB2044#------------------------------------------------------------------------------2045# CHECK: sxtab r2, r3, r42046# CHECK: sxtab r4, r5, r62047# CHECK: sxtablt r6, r2, r9, ror #82048# CHECK: sxtab r5, r1, r4, ror #162049# CHECK: sxtab r7, r8, r3, ror #242050 20510x74 0x20 0xa3 0xe620520x76 0x40 0xa5 0xe620530x79 0x64 0xa2 0xb620540x74 0x58 0xa1 0xe620550x73 0x7c 0xa8 0xe62056 2057 2058#------------------------------------------------------------------------------2059# SXTAB162060#------------------------------------------------------------------------------2061# CHECK: sxtab16ge r0, r1, r42062# CHECK: sxtab16 r6, r2, r72063# CHECK: sxtab16 r3, r5, r8, ror #82064# CHECK: sxtab16 r3, r2, r1, ror #162065# CHECK: sxtab16eq r1, r2, r3, ror #242066 20670x74 0x00 0x81 0xa620680x77 0x60 0x82 0xe620690x78 0x34 0x85 0xe620700x71 0x38 0x82 0xe620710x73 0x1c 0x82 0x062072 2073#------------------------------------------------------------------------------2074# SXTAH2075#------------------------------------------------------------------------------2076# CHECK: sxtah r1, r3, r92077# CHECK: sxtahhi r6, r1, r62078# CHECK: sxtah r3, r8, r3, ror #82079# CHECK: sxtahlo r2, r2, r4, ror #162080# CHECK: sxtah r9, r3, r3, ror #242081 20820x79 0x10 0xb3 0xe620830x76 0x60 0xb1 0x8620840x73 0x34 0xb8 0xe620850x74 0x28 0xb2 0x3620860x73 0x9c 0xb3 0xe62087 2088#------------------------------------------------------------------------------2089# SXTB2090#------------------------------------------------------------------------------2091# CHECK: sxtbge r2, r42092# CHECK: sxtb r5, r62093# CHECK: sxtb r6, r9, ror #82094# CHECK: sxtblo r5, r1, ror #162095# CHECK: sxtb r8, r3, ror #242096 20970x74 0x20 0xaf 0xa620980x76 0x50 0xaf 0xe620990x79 0x64 0xaf 0xe621000x71 0x58 0xaf 0x3621010x73 0x8c 0xaf 0xe62102 2103 2104#------------------------------------------------------------------------------2105# SXTB162106#------------------------------------------------------------------------------2107# CHECK: sxtb16 r1, r42108# CHECK: sxtb16 r6, r72109# CHECK: sxtb16hs r3, r5, ror #82110# CHECK: sxtb16 r3, r1, ror #162111# CHECK: sxtb16ge r2, r3, ror #242112 21130x74 0x10 0x8f 0xe621140x77 0x60 0x8f 0xe621150x75 0x34 0x8f 0x2621160x71 0x38 0x8f 0xe621170x73 0x2c 0x8f 0xa62118 2119 2120#------------------------------------------------------------------------------2121# SXTH2122#------------------------------------------------------------------------------2123# CHECK: sxthne r3, r92124# CHECK: sxth r1, r62125# CHECK: sxth r3, r8, ror #82126# CHECK: sxthle r2, r2, ror #162127# CHECK: sxth r9, r3, ror #242128 21290x79 0x30 0xbf 0x1621300x76 0x10 0xbf 0xe621310x78 0x34 0xbf 0xe621320x72 0x28 0xbf 0xd621330x73 0x9c 0xbf 0xe62134 2135 2136#------------------------------------------------------------------------------2137# FIXME: TBB/TBH2138#------------------------------------------------------------------------------2139 2140 2141#------------------------------------------------------------------------------2142# TEQ2143#------------------------------------------------------------------------------2144# CHECK: teq r5, #614402145# CHECK: teq r7, #-21474836382146# CHECK: teq r7, #40, #22147# CHECK: teq r4, r52148# CHECK: teq r4, r5, lsl #52149# CHECK: teq r4, r5, lsr #52150# CHECK: teq r4, r5, lsr #52151# CHECK: teq r4, r5, asr #52152# CHECK: teq r4, r5, ror #52153# CHECK: teq r6, r7, lsl r92154# CHECK: teq r6, r7, lsr r92155# CHECK: teq r6, r7, asr r92156# CHECK: teq r6, r7, ror r92157 21580x0f 0x0a 0x35 0xe321590x2a 0x01 0x37 0xe321600x28 0x01 0x37 0xe321610x05 0x00 0x34 0xe121620x85 0x02 0x34 0xe121630xa5 0x02 0x34 0xe121640xa5 0x02 0x34 0xe121650xc5 0x02 0x34 0xe121660xe5 0x02 0x34 0xe121670x17 0x09 0x36 0xe121680x37 0x09 0x36 0xe121690x57 0x09 0x36 0xe121700x77 0x09 0x36 0xe12171 2172 2173#------------------------------------------------------------------------------2174# TST2175#------------------------------------------------------------------------------2176# CHECK: tst r5, #614402177# CHECK: tst r7, #-21474836382178# CHECK: tst r7, #40, #22179# CHECK: tst r4, r52180# CHECK: tst r4, r5, lsl #52181# CHECK: tst r4, r5, lsr #52182# CHECK: tst r4, r5, lsr #52183# CHECK: tst r4, r5, asr #52184# CHECK: tst r4, r5, ror #52185# CHECK: tst r6, r7, lsl r92186# CHECK: tst r6, r7, lsr r92187# CHECK: tst r6, r7, asr r92188# CHECK: tst r6, r7, ror r92189 21900x0f 0x0a 0x15 0xe321910x2a 0x01 0x17 0xe321920x28 0x01 0x17 0xe321930x05 0x00 0x14 0xe121940x85 0x02 0x14 0xe121950xa5 0x02 0x14 0xe121960xa5 0x02 0x14 0xe121970xc5 0x02 0x14 0xe121980xe5 0x02 0x14 0xe121990x17 0x09 0x16 0xe122000x37 0x09 0x16 0xe122010x57 0x09 0x16 0xe122020x77 0x09 0x16 0xe12203 2204 2205#------------------------------------------------------------------------------2206# UADD16/UADD82207#------------------------------------------------------------------------------2208# CHECK: uadd16 r1, r2, r32209# CHECK: uadd16gt r1, r2, r32210# CHECK: uadd8 r1, r2, r32211# CHECK: uadd8le r1, r2, r32212 22130x13 0x1f 0x52 0xe622140x13 0x1f 0x52 0xc622150x93 0x1f 0x52 0xe622160x93 0x1f 0x52 0xd62217 2218 2219#------------------------------------------------------------------------------2220# UASX2221#------------------------------------------------------------------------------2222# CHECK: uasx r9, r12, r02223# CHECK: uasxeq r9, r12, r02224 22250x30 0x9f 0x5c 0xe622260x30 0x9f 0x5c 0x062227 2228 2229#------------------------------------------------------------------------------2230# UBFX2231#------------------------------------------------------------------------------2232# CHECK: ubfx r4, r5, #16, #12233# CHECK: ubfxgt r4, r5, #16, #162234 22350x55 0x48 0xe0 0xe722360x55 0x48 0xef 0xc72237 2238 2239#------------------------------------------------------------------------------2240# UHADD16/UHADD82241#------------------------------------------------------------------------------2242# CHECK: uhadd16 r4, r8, r22243# CHECK: uhadd16gt r4, r8, r22244# CHECK: uhadd8 r4, r8, r22245# CHECK: uhadd8gt r4, r8, r22246 22470x12 0x4f 0x78 0xe622480x12 0x4f 0x78 0xc622490x92 0x4f 0x78 0xe622500x92 0x4f 0x78 0xc62251 2252 2253#------------------------------------------------------------------------------2254# UHASX2255#------------------------------------------------------------------------------2256# CHECK: uhasx r4, r8, r22257# CHECK: uhasxgt r4, r8, r22258 22590x32 0x4f 0x78 0xe622600x32 0x4f 0x78 0xc62261 2262 2263#------------------------------------------------------------------------------2264# UHSUB16/UHSUB82265#------------------------------------------------------------------------------2266# CHECK: uhsub16 r4, r8, r22267# CHECK: uhsub16gt r4, r8, r22268# CHECK: uhsub8 r4, r8, r22269# CHECK: uhsub8gt r4, r8, r22270 22710x72 0x4f 0x78 0xe622720x72 0x4f 0x78 0xc622730xf2 0x4f 0x78 0xe622740xf2 0x4f 0x78 0xc62275 2276 2277#------------------------------------------------------------------------------2278# UMAAL2279#------------------------------------------------------------------------------2280# CHECK: umaal r3, r4, r5, r62281# CHECK: umaallt r3, r4, r5, r62282 22830x95 0x36 0x44 0xe022840x95 0x36 0x44 0xb02285 2286 2287#------------------------------------------------------------------------------2288# UMLAL2289#------------------------------------------------------------------------------2290# CHECK: umlal r2, r4, r6, r82291# CHECK: umlalgt r6, r1, r2, r62292# CHECK: umlals r2, r9, r2, r32293# CHECK: umlalseq r3, r5, r1, r22294 22950x96 0x28 0xa4 0xe022960x92 0x66 0xa1 0xc022970x92 0x23 0xb9 0xe022980x91 0x32 0xb5 0x002299 2300 2301#------------------------------------------------------------------------------2302# UMULL2303#------------------------------------------------------------------------------2304# CHECK: umull r2, r4, r6, r82305# CHECK: umullgt r6, r1, r2, r62306# CHECK: umulls r2, r9, r2, r32307# CHECK: umullseq r3, r5, r1, r22308 23090x96 0x28 0x84 0xe023100x92 0x66 0x81 0xc023110x92 0x23 0x99 0xe023120x91 0x32 0x95 0x002313 2314 2315#------------------------------------------------------------------------------2316# UQADD16/UQADD82317#------------------------------------------------------------------------------2318# CHECK: uqadd16 r1, r2, r32319# CHECK: uqadd16gt r4, r7, r92320# CHECK: uqadd8 r3, r4, r82321# CHECK: uqadd8le r8, r1, r22322 2323 23240x13 0x1f 0x62 0xe623250x19 0x4f 0x67 0xc623260x98 0x3f 0x64 0xe623270x92 0x8f 0x61 0xd62328 2329 2330#------------------------------------------------------------------------------2331# UQASX2332#------------------------------------------------------------------------------2333# CHECK: uqasx r2, r4, r12334# CHECK: uqasxhi r5, r2, r92335 23360x31 0x2f 0x64 0xe623370x39 0x5f 0x62 0x862338 2339 2340#------------------------------------------------------------------------------2341# UQSAX2342#------------------------------------------------------------------------------2343# CHECK: uqsax r1, r3, r72344# CHECK: uqsax r3, r6, r22345 23460x57 0x1f 0x63 0xe623470x52 0x3f 0x66 0xe62348 2349 2350#------------------------------------------------------------------------------2351# UQSUB16/UQSUB82352#------------------------------------------------------------------------------2353# CHECK: uqsub16 r1, r5, r32354# CHECK: uqsub16gt r3, r2, r52355# CHECK: uqsub8 r2, r1, r42356# CHECK: uqsub8le r4, r6, r92357 23580x73 0x1f 0x65 0xe623590x75 0x3f 0x62 0xc623600xf4 0x2f 0x61 0xe623610xf9 0x4f 0x66 0xd62362 2363 2364#------------------------------------------------------------------------------2365# USADA8/USAD82366#------------------------------------------------------------------------------2367# CHECK: usad8 r2, r1, r42368# CHECK: usad8le r4, r6, r92369# CHECK: usada8 r1, r5, r3, r72370# CHECK: usada8gt r3, r2, r5, r12371 23720x11 0xf4 0x82 0xe723730x16 0xf9 0x84 0xd723740x15 0x73 0x81 0xe723750x12 0x15 0x83 0xc72376 2377 2378#------------------------------------------------------------------------------2379# USAT2380#------------------------------------------------------------------------------2381 2382# CHECK: usat	r8, #1, r102383# CHECK: usat	r8, #4, r102384# CHECK: usat	r8, #5, r10, lsl #312385# CHECK: usat	r8, #31, r10, asr #322386# CHECK: usat	r8, #16, r10, asr #12387 23880x1a 0x80 0xe1 0xe623890x1a 0x80 0xe4 0xe623900x9a 0x8f 0xe5 0xe623910x5a 0x80 0xff 0xe623920xda 0x80 0xf0 0xe62393 2394#------------------------------------------------------------------------------2395# USAT162396#------------------------------------------------------------------------------2397# CHECK: usat16	r2, #2, r72398# CHECK: usat16	r3, #15, r52399 24000x37 0x2f 0xe2 0xe624010x35 0x3f 0xef 0xe62402 2403 2404#------------------------------------------------------------------------------2405# USAX2406#------------------------------------------------------------------------------2407# CHECK: usax r2, r3, r42408# CHECK: usaxne r2, r3, r42409 24100x54 0x2f 0x53 0xe624110x54 0x2f 0x53 0x162412 2413#------------------------------------------------------------------------------2414# USUB16/USUB82415#------------------------------------------------------------------------------2416# CHECK: usub16 r4, r2, r72417# CHECK: usub16hi r1, r1, r32418# CHECK: usub8 r1, r8, r52419# CHECK: usub8le r9, r2, r32420 24210x77 0x4f 0x52 0xe624220x73 0x1f 0x51 0x8624230xf5 0x1f 0x58 0xe624240xf3 0x9f 0x52 0xd62425 2426 2427#------------------------------------------------------------------------------2428# UXTAB2429#------------------------------------------------------------------------------2430# CHECK: uxtab r2, r3, r42431# CHECK: uxtab r4, r5, r62432# CHECK: uxtablt r6, r2, r9, ror #82433# CHECK: uxtab r5, r1, r4, ror #162434# CHECK: uxtab r7, r8, r3, ror #242435 24360x74 0x20 0xe3 0xe624370x76 0x40 0xe5 0xe624380x79 0x64 0xe2 0xb624390x74 0x58 0xe1 0xe624400x73 0x7c 0xe8 0xe62441 2442 2443#------------------------------------------------------------------------------2444# UXTAB162445#------------------------------------------------------------------------------2446# CHECK: uxtab16ge r0, r1, r42447# CHECK: uxtab16 r6, r2, r72448# CHECK: uxtab16 r3, r5, r8, ror #82449# CHECK: uxtab16 r3, r2, r1, ror #162450# CHECK: uxtab16eq r1, r2, r3, ror #242451 24520x74 0x00 0xc1 0xa624530x77 0x60 0xc2 0xe624540x78 0x34 0xc5 0xe624550x71 0x38 0xc2 0xe624560x73 0x1c 0xc2 0x062457 2458#------------------------------------------------------------------------------2459# UXTAH2460#------------------------------------------------------------------------------2461# CHECK: uxtah r1, r3, r92462# CHECK: uxtahhi r6, r1, r62463# CHECK: uxtah r3, r8, r3, ror #82464# CHECK: uxtahlo r2, r2, r4, ror #162465# CHECK: uxtah r9, r3, r3, ror #242466 24670x79 0x10 0xf3 0xe624680x76 0x60 0xf1 0x8624690x73 0x34 0xf8 0xe624700x74 0x28 0xf2 0x3624710x73 0x9c 0xf3 0xe62472 2473#------------------------------------------------------------------------------2474# UXTB2475#------------------------------------------------------------------------------2476# CHECK: uxtbge r2, r42477# CHECK: uxtb r5, r62478# CHECK: uxtb r6, r9, ror #82479# CHECK: uxtblo r5, r1, ror #162480# CHECK: uxtb r8, r3, ror #242481 24820x74 0x20 0xef 0xa624830x76 0x50 0xef 0xe624840x79 0x64 0xef 0xe624850x71 0x58 0xef 0x3624860x73 0x8c 0xef 0xe62487 2488 2489#------------------------------------------------------------------------------2490# UXTB162491#------------------------------------------------------------------------------2492# CHECK: uxtb16 r1, r42493# CHECK: uxtb16 r6, r72494# CHECK: uxtb16hs r3, r5, ror #82495# CHECK: uxtb16 r3, r1, ror #162496# CHECK: uxtb16ge r2, r3, ror #242497 24980x74 0x10 0xcf 0xe624990x77 0x60 0xcf 0xe625000x75 0x34 0xcf 0x2625010x71 0x38 0xcf 0xe625020x73 0x2c 0xcf 0xa62503 2504 2505#------------------------------------------------------------------------------2506# UXTH2507#------------------------------------------------------------------------------2508# CHECK: uxthne r3, r92509# CHECK: uxth r1, r62510# CHECK: uxth r3, r8, ror #82511# CHECK: uxthle r2, r2, ror #162512# CHECK: uxth r9, r3, ror #242513 25140x79 0x30 0xff 0x1625150x76 0x10 0xff 0xe625160x78 0x34 0xff 0xe625170x72 0x28 0xff 0xd625180x73 0x9c 0xff 0xe62519 2520#------------------------------------------------------------------------------2521# WFE/WFI/YIELD2522#------------------------------------------------------------------------------2523# CHECK: wfe2524# CHECK: wfehi2525# CHECK: wfi2526# CHECK: wfilt2527# CHECK: yield2528# CHECK: yieldne2529# CHECK: hint #52530 25310x02 0xf0 0x20 0xe325320x02 0xf0 0x20 0x8325330x03 0xf0 0x20 0xe325340x03 0xf0 0x20 0xb325350x01 0xf0 0x20 0xe325360x01 0xf0 0x20 0x1325370x05 0xf0 0x20 0xe32538