Skip to content

ADD

Operation

Adds the source operand to the destination operand.

Assembler Syntax

ADD.Q 8, SP

ADD.{L|Q}(z) Rn(s), Rn(d)

ADD.Q imm8(i), SP

ADD.Q <imm16s>, SP

ADD.Q <imm32s>, SP

ADD.{B|W|L|Q}(z) Rn(s), <ea>(e)

ADD.{B|W|L|Q}(z) <ea>(e), Rn(d)

ADD.{B|W|L|Q}(z) <imm8s>, <ea>(e)

ADD.{W|L|Q}(z) <imm16s>, <ea>(e)

ADD.{L|Q}(z) <imm32s>, <ea>(e)

ADD.Q <imm64>, <ea>(e)

Privilege

Unprivileged

Repeat eligibility

REP eligible; REPcc observes dst

ADD reads the source and destination operands at the selected integer width, adds their values modulo that width, and writes the low result bits to the destination. The common integer result-extension rule defines the upper bits of an Rn destination. The operation leaves FLAGS unchanged.

2.75in

Encodings

ADD.Q 8, SP

Format: Instruction format for ADD.Q 8, SP

Format: Instruction format for ADD.Q 8, SP

2.75in ADD.{L|Q}(z) Rn(s), Rn(d)

Format: Instruction format for ADD.{L|Q}(z) Rn(s), Rn(d)

Format: Instruction format for ADD.{L|Q}(z) Rn(s), Rn(d)

2.75in ADD.Q imm8(i), SP

Format: Instruction format for ADD.Q imm8(i), SP

Format: Instruction format for ADD.Q imm8(i), SP

2.75in ADD.Q <imm16s>, SP

Format: Instruction format for ADD.Q <imm16s>, SP

Format: Instruction format for ADD.Q <imm16s>, SP

2.75in ADD.Q <imm32s>, SP

Format: Instruction format for ADD.Q <imm32s>, SP

Format: Instruction format for ADD.Q <imm32s>, SP

2.75in ADD.{B|W|L|Q}(z) Rn(s), <ea>(e)

Format: Instruction format for ADD.{B|W|L|Q}(z) Rn(s), <ea>(e)

Format: Instruction format for ADD.{B|W|L|Q}(z) Rn(s), <ea>(e)

dstexcluded: immediate [invalid_destination]

2.75in ADD.{B|W|L|Q}(z) <ea>(e), Rn(d)

Format: Instruction format for ADD.{B|W|L|Q}(z) <ea>(e), Rn(d)

Format: Instruction format for ADD.{B|W|L|Q}(z) <ea>(e), Rn(d)

2.75in ADD.{B|W|L|Q}(z) <imm8s>, <ea>(e)

Format: Instruction format for ADD.{B|W|L|Q}(z) <imm8s>, <ea>(e)

Format: Instruction format for ADD.{B|W|L|Q}(z) <imm8s>, <ea>(e)

dstexcluded: immediate [invalid_destination]

2.75in ADD.{W|L|Q}(z) <imm16s>, <ea>(e)

Format: Instruction format for ADD.{W|L|Q}(z) <imm16s>, <ea>(e)

Format: Instruction format for ADD.{W|L|Q}(z) <imm16s>, <ea>(e)

sizeallowed: 0x1..0x3 [immediate_wider_than_operation_size]

dstexcluded: immediate [invalid_destination]

2.75in ADD.{L|Q}(z) <imm32s>, <ea>(e)

Format: Instruction format for ADD.{L|Q}(z) <imm32s>, <ea>(e)

Format: Instruction format for ADD.{L|Q}(z) <imm32s>, <ea>(e)

dstexcluded: immediate [invalid_destination]

2.75in ADD.Q <imm64>, <ea>(e)

Format: Instruction format for ADD.Q <imm64>, <ea>(e)

Format: Instruction format for ADD.Q <imm64>, <ea>(e)

dstexcluded: immediate [invalid_destination]