When an instruction operand is outside the range allowed for that particular instruction field,
can transform the code to use a functionally-equivalent instruction or sequence of instructions. This process is known as relaxation
. This is typically done for branch instructions because the distance of the branch targets is not known until assembly-time. The Xtensa assembler offers branch relaxation and also extends this concept to function calls,
instructions and other instructions with immediate fields.