Functional Description
www.ti.com
76
SWRU543–January 2019
Submit Documentation Feedback
Copyright © 2019, Texas Instruments Incorporated
Cortex
®
-M4 Processor
Table 2-10. Cortex
®
-M4 Instruction Summary (continued)
Mnemonic Operands Brief Description Flags
SXTB16 {Rd,} Rm {,ROR #n} Signed extend byte 16 –
SXTB {Rd,} Rm {,ROR #n} Sign extend a byte –
SXTH {Rd,} Rm {,ROR #n} Sign extend a halfword –
TBB [Rn, Rm] Table branch byte –
TBH [Rn, Rm, LSL #1] Table branch halfword –
TEQ Rn, Op2 Test equivalence N,Z,C
TST Rn, Op2 Test N,Z,C
UADD16 {Rd,} Rn, Rm Unsigned add 16 GE
UADD8 {Rd,} Rn, Rm Unsigned add 8 GE
UASX {Rd,} Rn, Rm Unsigned add and subtract with exchange GE
UHADD16 {Rd,} Rn, Rm Unsigned halving add 16 –
UHADD8 {Rd,} Rn, Rm Unsigned halving add 8 –
UHASX {Rd,} Rn, Rm Unsigned halving add and subtract with exchange –
UHSAX {Rd,} Rn, Rm Unsigned halving subtract and add with exchange –
UHSUB16 {Rd,} Rn, Rm Unsigned halving subtract 16 –
UHSUB8 {Rd,} Rn, Rm Unsigned halving subtract 8 –
UBFX Rd, Rn, #lsb, #width Unsigned bit field extract –
UDIV {Rd,} Rn, Rm Unsigned divide –
UMAAL RdLo, RdHi, Rn, Rm Unsigned long multiply with accumulate accumulate
(32×32+32+32), 64-bit result
–
UMLAL RdLo, RdHi, Rn, Rm Unsigned long multiply with accumulate (32×32+64),
64-bit result
–
UMULL RdLo, RdHi, Rn, Rm Unsigned long multiply (32×32), 64-bit result –
UQADD16 {Rd,} Rn, Rm Unsigned saturating add 16 –
UQADD8 {Rd,} Rn, Rm Unsigned saturating add 8 –
UQASX {Rd,} Rn, Rm Unsigned saturating add and subtract with exchange –
UQSAX {Rd,} Rn, Rm Unsigned saturating subtract and add with exchange –
UQSUB16 {Rd,} Rn, Rm Unsigned saturating subtract 16 –
UQSUB8 {Rd,} Rn, Rm Unsigned saturating subtract 8 –
USAD8 {Rd,} Rn, Rm Unsigned sum of absolute differences –
USADA8 {Rd,} Rn, Rm, Ra Unsigned sum of absolute differences and accumulate –
USAT Rd, #n, Rm {,shift #s} Unsigned saturate Q
USAT16 Rd, #n, Rm Unsigned saturate 16 Q
USAX {Rd,} Rn, Rm Unsigned subtract and add with exchange GE
USUB16 {Rd,} Rn, Rm Unsigned subtract 16 GE
USUB8 {Rd,} Rn, Rm Unsigned subtract 8 GE
UXTAB {Rd,} Rn, Rm, {,ROR #} Rotate, extend 8 bits to 32 and add –
UXTAB16 {Rd,} Rn, Rm, {,ROR #} Rotate, dual extend 8 bits to 16 and add –
UXTAH {Rd,} Rn, Rm, {,ROR #} Rotate, unsigned extend and add halfword –
UXTB {Rd,} Rm, {,ROR #n} Zero extend a byte –
UXTB16 {Rd,} Rm, {,ROR #n} Unsigned extend byte 16 –
UXTH {Rd,} Rm, {,ROR #n} Zero extend a halfword –
WFE – Wait for event –
WFI – Wait for interrupt –