You copied the Doc URL to your clipboard.

ARM Compiler armasm User Guide : BFI

BFI

Bit Field Insert.

Syntax

BFI{cond} Rd, Rn, #lsb, #width

where:

cond
is an optional condition code.
Rd
is the destination register.
Rn
is the source register.
lsb
is the least significant bit that is to be copied.
width
is the number of bits to be copied. width must not be 0, and (width+lsb) must be less than or equal to 32.

Operation

Inserts adjacent bits from one register into another. width bits in Rd, starting at lsb, are replaced by width bits from Rn, starting at bit[0]. Other bits in Rd are unchanged.

Register restrictions

You cannot use PC for any register.

You can use SP in the BFI A32 instruction but this is deprecated. You cannot use SP in the BFI T32 instruction.

Condition flags

The BFI instruction does not change the flags.

Architectures

This 32-bit instruction is available in A32 and T32.

There is no 16-bit version of this instruction in T32.

Related reference

Was this page helpful? Yes No