Branch Instruction layout

Given an instruction like this: br i1 %tmp12, label %bb5, label %bb6

I’m confused as to why Operand(1) = bb6 and not bb5 and why Operand(2) is bb5 and not bb6.

Why in the instruction does the true path always list first but when accessing the operands of the instruction, it is backwards? Is there a particular reason for this?

Reason for this is explained in the 'llvm/Instructions.h' header file
where BranchInst is declared.

Pasi.