bne

Branch if not equal

Branches to label if t1 and t2 are not equal.

RISC-V manual: bne

Used in

Forms

  • bne , ,

Operands

t1
Any integer register, x0 to x31, or its named alias, such as zero, t0 or t6.
t2
An integer register. It may be the same register as t1.
label
A named address in the program, such as the start of a loop or a variable in .data.
# First bne case is taken; second is not. t2 ends at 11 (10 + 1).
.text
li t2, 0
li t0, 7
li t1, 3
bne t0, t1, taken
addi t2, t2, 1
j first_done # Skip the other marker unconditionally.
taken:
addi t2, t2, 10
first_done:
li t0, 7
li t1, 7
bne t0, t1, missed
addi t2, t2, 1
j second_done # Skip the other marker unconditionally.
missed:
addi t2, t2, 10
second_done:
# t2=11 proves one taken and one untaken path.