arm-asm-disasm-test.f

来自「这个是关于G.726算法的源程序」· F 代码 · 共 1,039 行 · 第 1/2 页

F
1,039
字号
c0010392	>"	mul gt  r1 r2 r3"
c0040293	>"	mul gt  r4 r3 r2"
c0110392	>"	mul gt s        r1 r2 r3"


c3e01002	>"	mvn gt  r1 2 #"
c1e01002	>"	mvn gt  r1 r2"
c1e0b00c	>"	mvn gt  r11 r12"
c1e01182	>"	mvn gt  r1 r2 lsl 3 #"
c1e01312	>"	mvn gt  r1 r2 lsl r3"
c1f01002	>"	mvn gt s        r1 r2"


c1821003	>"	orr gt  r1 r2 r3"


c0621003	>"	rsb gt  r1 r2 r3"


c0e21003	>"	rsc gt  r1 r2 r3"


c0c21003	>"	sbc gt  r1 r2 r3"


cd832100	>"	stc gt  p1 c2 [ r3 ]" 
cd83c100	>"	stc gt  p1 c12 [ r3 ]" 
cd8d2100	>"	stc gt  p1 c2 [ r13 ]" 
cd832b00	>"	stc gt  p11 c2 [ r3 ]" 

cc832104	>"	stc gt  p1 c2 [ r3 ] { 4 # }" 
cc8321ff	>"	stc gt  p1 c2 [ r3 ] { 0FF # }" 
ccc32104	>"	stc gt l        p1 c2 [ r3 ] { 4 # }" 

cc232104	>"	stc gt  p1 c2 [ r3 ] -10 #" 
cca32104	>"	stc gt  p1 c2 [ r3 ] 10 #" 
cc632104	>"	stc gt l        p1 c2 [ r3 ] -10 #" 
cce32104	>"	stc gt l        p1 c2 [ r3 ] 10 #" 

cd032104	>"	stc gt  p1 c2 [ r3 -10 # ]" 
cd832104	>"	stc gt  p1 c2 [ r3 10 # ]" 
cd432104	>"	stc gt l        p1 c2 [ r3 -10 # ]" 
cdc32104	>"	stc gt l        p1 c2 [ r3 10 # ]" 

cd232104	>"	stc gt  p1 c2 [ r3 -10 # ] !" 
cda32104	>"	stc gt  p1 c2 [ r3 10 # ] !" 
cd632104	>"	stc gt l        p1 c2 [ r3 -10 # ] !" 
cde32104	>"	stc gt l        p1 c2 [ r3 10 # ] !" 

fd832100	>"	stc2    p1 c2 [ r3 ]" 


c0e21493	>"	smlal gt        r1 r2 r3 r4"
c0f21493	>"	smlal gt s      r1 r2 r3 r4"


c0c21493	>"	smull gt        r1 r2 r3 r4"
c0d21493	>"	smull gt s      r1 r2 r3 r4"


c8010004	>"	stm gt da       r1 { r2 }"
c9010004	>"	stm gt db       r1 { r2 }"
c8810004	>"	stm gt ia       r1 { r2 }"
c9810004	>"	stm gt ib       r1 { r2 }"

c801800c	>"	stm gt da       r1 { r2 r3 pc }"
c80e800c	>"	stm gt da       lr { r2 r3 pc }"
c8010000	>"	stm gt da       r1 { }"				\ unpredictable
c8210004	>"	stm gt da       r1 ! { r2 }"
c821800c	>"	stm gt da       r1 ! { r2 r3 pc }"

c8410004	>"	stm gt da       r1 { r2 } ^"
c9410004	>"	stm gt db       r1 { r2 } ^"
c8c10004	>"	stm gt ia       r1 { r2 } ^"
c9c10004	>"	stm gt ib       r1 { r2 } ^"

c861000c	>"	stm gt da       r1 ! { r2 r3 } ^"		\ unpredictable
c861800c	>"	stm gt da       r1 ! { r2 r3 pc } ^"	\ unpredictable


c5821000	>"	str gt  r1 [ r2 ]"


c4a21000	>"	str gt t        r1 [ r2 ]"


c5c21000	>"	str gt b        r1 [ r2 ]"


c5421004	>"	str gt b        r1 [ r2 -4 # ]"


c4e21000	>"	str gt bt       r1 [ r2 ]"


c1c210b0	>"	str gt h        r1 [ r2 ]"		\ ARM4


c0421003	>"	sub gt  r1 r2 r3"


cf123456	>"	swi gt  123456 #"


c1031092	>"	swp gt  r1 r2 [ r3 ]"
c10db09c	>"	swp gt  r11 r12 [ r13 ]"


c1431092	>"	swp gt b        r1 r2 [ r3 ]"
c14db09c	>"	swp gt b        r11 r12 [ r13 ]"


c13b000c	>"	teq gt  r11 r12"


c11b000c	>"	tst gt  r11 r12"


c0a21493	>"	umlal gt        r1 r2 r3 r4"
c0b21493	>"	umlal gt s      r1 r2 r3 r4"


c0821493	>"	umull gt        r1 r2 r3 r4"
c0921493	>"	umull gt s      r1 r2 r3 r4"


\ DSP


c1c2a0d0	>"	ldr gt d        r10 [ r2 ]"		\ ARM5E
c1c2a0df	>"	ldr gt d        r10 [ r2 0F # ]"
c1c2afd0	>"	ldr gt d        r10 [ r2 0F0 # ]"
c142a0df	>"	ldr gt d        r10 [ r2 -F # ]"
c142afd0	>"	ldr gt d        r10 [ r2 -F0 # ]"
c182a0d3	>"	ldr gt d        r10 [ r2 r3 ]"
c182a0dd	>"	ldr gt d        r10 [ r2 r13 ]"
c102a0d3	>"	ldr gt d        r10 [ r2 -r3 ]"
c1e2a0df	>"	ldr gt d        r10 [ r2 0F # ] !"
c162a0df	>"	ldr gt d        r10 [ r2 -F # ] !"
c1a2a0d3	>"	ldr gt d        r10 [ r2 r3 ] !"
c122a0d3	>"	ldr gt d        r10 [ r2 -r3 ] !"
c0c2a0df	>"	ldr gt d        r10 [ r2 ] 0F #"
c042a0df	>"	ldr gt d        r10 [ r2 ] -F #"
c082a0d3	>"	ldr gt d        r10 [ r2 ] r3"
c002a0d3	>"	ldr gt d        r10 [ r2 ] -r3"


c1c2a0f0	>"	str gt d        r10 [ r2 ]"		\ ARM5E
c1c2a0ff	>"	str gt d        r10 [ r2 0F # ]"
c1c2aff0	>"	str gt d        r10 [ r2 0F0 # ]"
c142a0ff	>"	str gt d        r10 [ r2 -F # ]"
c142aff0	>"	str gt d        r10 [ r2 -F0 # ]"
c182a0f3	>"	str gt d        r10 [ r2 r3 ]"
c182a0fd	>"	str gt d        r10 [ r2 r13 ]"
c102a0f3	>"	str gt d        r10 [ r2 -r3 ]"
c1e2a0ff	>"	str gt d        r10 [ r2 0F # ] !"
c162a0ff	>"	str gt d        r10 [ r2 -F # ] !"
c1a2a0f3	>"	str gt d        r10 [ r2 r3 ] !"
c122a0f3	>"	str gt d        r10 [ r2 -r3 ] !"
c0c2a0ff	>"	str gt d        r10 [ r2 ] 0F #"
c042a0ff	>"	str gt d        r10 [ r2 ] -F #"
c082a0f3	>"	str gt d        r10 [ r2 ] r3"
c002a0f3	>"	str gt d        r10 [ r2 ] -r3"


cc443125	>"	mcrr gt         p1 2 # r3 r4 c5"		\ ARM5E
cc49867a	>"	mcrr gt         p6 7 # r8 r9 c10"


cc543125	>"	mrrc gt         p1 2 # r3 r4 c5"		\ ARM5E
cc59867a	>"	mrrc gt         p6 7 # r8 r9 c10"


fc443125	>"	mcrr2   p1 2 # r3 r4 c5"		\ ARM6
fc49867a	>"	mcrr2   p6 7 # r8 r9 c10"


fc543125	>"	mrrc2   p1 2 # r3 r4 c5"		\ ARM6
fc59867a	>"	mrrc2   p6 7 # r8 r9 c10"


c1031052	>"	qadd gt         r1 r2 r3"		\ ARM5E
c10ca05b	>"	qadd gt         r10 r11 r12"

c1231052	>"	qsub gt         r1 r2 r3"		\ ARM5E
c12ca05b	>"	qsub gt         r10 r11 r12"

c1431052	>"	qdadd gt        r1 r2 r3"		\ ARM5E
c14ca05b	>"	qdadd gt        r10 r11 r12"

c1631052	>"	qdsub gt        r1 r2 r3"		\ ARM5E
c16ca05b	>"	qdsub gt        r10 r11 r12"


c1014382	>"	smlabb gt       r1 r2 r3 r4"		\ ARM5E
c10adc8b	>"	smlabb gt       r10 r11 r12 r13"

c10143a2	>"	smlatb gt       r1 r2 r3 r4"		\ ARM5E
c10adcab	>"	smlatb gt       r10 r11 r12 r13"

c10143c2	>"	smlabt gt       r1 r2 r3 r4"		\ ARM5E
c10adccb	>"	smlabt gt       r10 r11 r12 r13"

c10143e2	>"	smlatt gt       r1 r2 r3 r4"		\ ARM5E
c10adceb	>"	smlatt gt       r10 r11 r12 r13"


c1214382	>"	smlawb gt       r1 r2 r3 r4"		\ ARM5E
c12adc8b	>"	smlawb gt       r10 r11 r12 r13"

c12143c2	>"	smlawt gt       r1 r2 r3 r4"		\ ARM5E
c12adccb	>"	smlawt gt       r10 r11 r12 r13"


c1421483	>"	smlalbb gt      r1 r2 r3 r4"		\ ARM5E
c14bad8c	>"	smlalbb gt      r10 r11 r12 r13"

c14214a3	>"	smlaltb gt      r1 r2 r3 r4"		\ ARM5E
c14badac	>"	smlaltb gt      r10 r11 r12 r13"

c14214c3	>"	smlalbt gt      r1 r2 r3 r4"		\ ARM5E
c14badcc	>"	smlalbt gt      r10 r11 r12 r13"

c14214e3	>"	smlaltt gt      r1 r2 r3 r4"		\ ARM5E
c14badec	>"	smlaltt gt      r10 r11 r12 r13"


c1610382	>"	smulbb gt       r1 r2 r3"		\ ARM5E
c16a0c8b	>"	smulbb gt       r10 r11 r12"

c16103a2	>"	smultb gt       r1 r2 r3"		\ ARM5E
c16a0cab	>"	smultb gt       r10 r11 r12"

c16103c2	>"	smulbt gt       r1 r2 r3"		\ ARM5E
c16a0ccb	>"	smulbt gt       r10 r11 r12"

c16103e2	>"	smultt gt       r1 r2 r3"		\ ARM5E
c16a0ceb	>"	smultt gt       r10 r11 r12"


c12103a2	>"	smulwb gt       r1 r2 r3"		\ ARM5E
c12a0cab	>"	smulwb gt       r10 r11 r12"

c12103e2	>"	smulwt gt       r1 r2 r3"		\ ARM5E
c12a0ceb	>"	smulwt gt       r10 r11 r12"


f5d2f000	>"	pld     [ r2 ]"		\ ARM5E
f5dcf000	>"	pld     [ r12 ]"
f5d2f004	>"	pld     [ r2 4 # ]"
f5d2ffff	>"	pld     [ r2 0FFF # ]"
f552f004	>"	pld     [ r2 -4 # ]"

f7d2f003	>"	pld     [ r2 r3 ]"
f7d2f00d	>"	pld     [ r2 r13 ]"
f752f003	>"	pld     [ r2 -r3 ]"

f7d2f083	>"	pld     [ r2 r3 lsl 1 # ]"
f7d2ff83	>"	pld     [ r2 r3 lsl 1F # ]"
f7d2f0a3	>"	pld     [ r2 r3 lsr 1 # ]"
f7d2f023	>"	pld     [ r2 r3 lsr 20 # ]"
f7d2f0c3	>"	pld     [ r2 r3 asr 1 # ]"
f7d2f0e3	>"	pld     [ r2 r3 ror 1 # ]"
f7d2f063	>"	pld     [ r2 r3 rrx ]"
f752f083	>"	pld     [ r2 -r3 lsl 1 # ]"


\ ARM6


f1020000	>"	cps     0 #"		\ ARM6
f102001f	>"	cps     1F #"
f1080100	>"	cpsie   a"
f1080180	>"	cpsie   ia"
f10801c0	>"	cpsie   fia"
f1080040	>"	cpsie   f"
f10a0100	>"	cpsie   a 0 #"
f10a011f	>"	cpsie   a 1F #"
f10c0100	>"	cpsid   a"


f1010000	>"	setend  le"			\ ARM6
f1010200	>"	setend  be"


f8110a00	>"	rfe da  r1"			\ ARM6
f8910a00	>"	rfe ia  r1"
f9110a00	>"	rfe db  r1"
f9910a00	>"	rfe ib  r1"

f81b0a00	>"	rfe da  r11"
f8310a00	>"	rfe da  r1 !"


f84d0a00	>"	srs da  0 #"		\ ARM6
f8cd0a00	>"	srs ia  0 #"
f94d0a00	>"	srs db  0 #"
f9cd0a00	>"	srs ib  0 #"

f86d0a00	>"	srs da  0 # !"


c1921f9f	>"	ldrex gt        r1 [ r2 ]"		\ ARM6
c19cbf9f	>"	ldrex gt        r11 [ r12 ]"


c1831f92	>"	strex gt        r1 r2 [ r3 ]"		\ ARM6
c18dbf9c	>"	strex gt        r11 r12 [ r13 ]"


c0421493	>"	umaal gt        r1 r2 r3 r4"		\ ARM6
c04cbe9d	>"	umaal gt        r11 r12 r13 lr"


c6121F13	>"	sadd16 gt       r1 r2 r3"		\ ARM6
c6121F33	>"	saddsubx gt     r1 r2 r3"
c6121F53	>"	ssubaddx gt     r1 r2 r3"
c6121F73	>"	ssub16 gt       r1 r2 r3"
c6121F93	>"	sadd8 gt        r1 r2 r3"
c6121FF3	>"	ssub8 gt        r1 r2 r3"

c6221F13	>"	qadd16 gt       r1 r2 r3"
c6221F33	>"	qaddsubx gt     r1 r2 r3"
c6221F53	>"	qsubaddx gt     r1 r2 r3"
c6221F73	>"	qsub16 gt       r1 r2 r3"
c6221F93	>"	qadd8 gt        r1 r2 r3"
c6221FF3	>"	qsub8 gt        r1 r2 r3"

c6321F13	>"	shadd16 gt      r1 r2 r3"
c6321F33	>"	shaddsubx gt    r1 r2 r3"
c6321F53	>"	shsubaddx gt    r1 r2 r3"
c6321F73	>"	shsub16 gt      r1 r2 r3"
c6321F93	>"	shadd8 gt       r1 r2 r3"
c6321FF3	>"	shsub8 gt       r1 r2 r3"

c6521F13	>"	uadd16 gt       r1 r2 r3"
c6521F33	>"	uaddsubx gt     r1 r2 r3"
c6521F53	>"	usubaddx gt     r1 r2 r3"
c6521F73	>"	usub16 gt       r1 r2 r3"
c6521F93	>"	uadd8 gt        r1 r2 r3"
c6521FF3	>"	usub8 gt        r1 r2 r3"

c6621F13	>"	uqadd16 gt      r1 r2 r3"
c6621F33	>"	uqaddsubx gt    r1 r2 r3"
c6621F53	>"	uqsubaddx gt    r1 r2 r3"
c6621F73	>"	uqsub16 gt      r1 r2 r3"
c6621F93	>"	uqadd8 gt       r1 r2 r3"
c6621FF3	>"	uqsub8 gt       r1 r2 r3"

c6721F13	>"	uhadd16 gt      r1 r2 r3"
c6721F33	>"	uhaddsubx gt    r1 r2 r3"
c6721F53	>"	uhsubaddx gt    r1 r2 r3"
c6721F73	>"	uhsub16 gt      r1 r2 r3"
c6721F93	>"	uhadd8 gt       r1 r2 r3"
c6721FF3	>"	uhsub8 gt       r1 r2 r3"


c6821013	>"	pkhbt gt        r1 r2 r3"		\ ARM6
c6821F93	>"	pkhbt gt        r1 r2 r3 lsl 1F #"
c68cb01d	>"	pkhbt gt        r11 r12 r13"
c6821053	>"	pkhtb gt        r1 r2 r3 asr 20 #"
c6821FD3	>"	pkhtb gt        r1 r2 r3 asr 1F #"


c6a01012	>"	ssat gt         r1 0 # r2"		\ ARM6
c6a0b01c	>"	ssat gt         r11 0 # r12"
c6a01092	>"	ssat gt         r1 0 # r2 lsl 1 #"
c6a01F92	>"	ssat gt         r1 0 # r2 lsl 1F #"
c6bf1F92	>"	ssat gt         r1 1F # r2 lsl 1F #"
c6a010d2	>"	ssat gt         r1 0 # r2 asr 1 #"
c6a01052	>"	ssat gt         r1 0 # r2 asr 20 #"

c6e01012	>"	usat gt         r1 0 # r2"
c6e0b01c	>"	usat gt         r11 0 # r12"
c6e01092	>"	usat gt         r1 0 # r2 lsl 1 #"
c6e01F92	>"	usat gt         r1 0 # r2 lsl 1F #"
c6ff1F92	>"	usat gt         r1 1F # r2 lsl 1F #"
c6e010d2	>"	usat gt         r1 0 # r2 asr 1 #"
c6e01052	>"	usat gt         r1 0 # r2 asr 20 #"


c6a01f32	>"	ssat16 gt       r1 0 # r2"		\ ARM6
c6a0bf3c	>"	ssat16 gt       r11 0 # r12"
c6af1f32	>"	ssat16 gt       r1 0F # r2"

c6e01f32	>"	usat16 gt       r1 0 # r2"
c6e0bf3c	>"	usat16 gt       r11 0 # r12"
c6ef1f32	>"	usat16 gt       r1 0F # r2"


c6821fb3	>"	sel gt  r1 r2 r3"		\ ARM6
c68cbfbd	>"	sel gt  r11 r12 r13"


c6821073	>"	sxtab16 gt      r1 r2 r3"		\ ARM6
c68cb07d	>"	sxtab16 gt      r11 r12 r13"
c6821473	>"	sxtab16 gt      r1 r2 r3 ror 8 #"
c6821873	>"	sxtab16 gt      r1 r2 r3 ror 10 #"
c6821c73	>"	sxtab16 gt      r1 r2 r3 ror 18 #"

c6a21073	>"	sxtab gt        r1 r2 r3"

c6b21073	>"	sxtah gt        r1 r2 r3"

c6c21073	>"	uxtab16 gt      r1 r2 r3"

c6e21073	>"	uxtab gt        r1 r2 r3"

c6f21073	>"	uxtah gt        r1 r2 r3"


c68f1072	>"	sxtb16 gt       r1 r2"		\ ARM6
c68fb07c	>"	sxtb16 gt       r11 r12"
c68f1472	>"	sxtb16 gt       r1 r2 ror 8 #"
c68f1872	>"	sxtb16 gt       r1 r2 ror 10 #"
c68f1c72	>"	sxtb16 gt       r1 r2 ror 18 #"

c6af1072	>"	sxtb gt         r1 r2"

c6bf1072	>"	sxth gt         r1 r2"

c6cf1072	>"	uxtb16 gt       r1 r2"

c6ef1072	>"	uxtb gt         r1 r2"

c6ff1072	>"	uxth gt         r1 r2"


c6bf1f32	>"	rev gt  r1 r2"		\ ARM6
c6bfbf3c	>"	rev gt  r11 r12"
c6bf1fb2	>"	rev16 gt        r1 r2"
c6ff1fb2	>"	revsh gt        r1 r2"


c701f312	>"	smuad gt        r1 r2 r3"		\ ARM6
c70bfd1c	>"	smuad gt        r11 r12 r13"
c701f332	>"	smuadx gt       r1 r2 r3"

c701f352	>"	smusd gt        r1 r2 r3"
c70bfd5c	>"	smusd gt        r11 r12 r13"
c701f372	>"	smusdx gt       r1 r2 r3"

c751f312	>"	smmul gt        r1 r2 r3"
c75bfd1c	>"	smmul gt        r11 r12 r13"
c751f332	>"	smmulr gt       r1 r2 r3"

c7014312	>"	smlad gt        r1 r2 r3 r4"
c70bed1c	>"	smlad gt        r11 r12 r13 lr"
c7014332	>"	smladx gt       r1 r2 r3 r4"
c7014352	>"	smlsd gt        r1 r2 r3 r4"
c70bed5c	>"	smlsd gt        r11 r12 r13 lr"
c7014372	>"	smlsdx gt       r1 r2 r3 r4"

c7421413	>"	smlald gt       r1 r2 r3 r4"
c74cbe1d	>"	smlald gt       r11 r12 r13 lr"
c7421433	>"	smlaldx gt      r1 r2 r3 r4"
c7421453	>"	smlsld gt       r1 r2 r3 r4"
c74cbe5d	>"	smlsld gt       r11 r12 r13 lr"
c7421473	>"	smlsldx gt      r1 r2 r3 r4"

c7514312	>"	smmla gt        r1 r2 r3 r4"
c75bed1c	>"	smmla gt        r11 r12 r13 lr"
c7514332	>"	smmlar gt       r1 r2 r3 r4"
c75143d2	>"	smmls gt        r1 r2 r3 r4"
c75beddc	>"	smmls gt        r11 r12 r13 lr"
c75143f2	>"	smmlsr gt       r1 r2 r3 r4"


c781f312	>"	usad8 gt        r1 r2 r3"		\ ARM6
c78bfd1c	>"	usad8 gt        r11 r12 r13"
c7814312	>"	usada8 gt       r1 r2 r3 r4"
c78bed1c	>"	usada8 gt       r11 r12 r13 lr"


\ ----------------------------------------------------------------------------
\ Use assembler with some labels...

CR .( USE ASSEMBLER ) CR CR

ALSO ARM-ASSEMBLER
HERE CODE-BEGIN
HERE
CHAR " L= terminator
L: scan-loop
	ldr b  r0 [ r1 ] 1 #
	cmp    r0 L# terminator
	bl ne  L# scan-loop
    ldr    r0 L# mask
    mov    pc lr
L: mask
    dcd FF00FF00 #
L: 1
	ldr r2 L# 0
	dcd L# 0
	dcd L# 1
	[[ 123 . CR ]]
	ldr r2 L# 1
	adr r0 . #
	ldr r2 L# 0
L: 0
HERE
CODE-END
PREVIOUS

OVER - ARM-DISASM   \ Disassembler what we just assembled above

\ ----------------------------------------------------------------------------
\ Run consistency test...

CR .( CONSISTENCY TEST... ) CR CR

TEST

\ ----------------------------------------------------------------------------
\ Done

.( DONE ) KEY DROP BYE

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?