A statement optionally begins with one or more labels. Each label is either a named label or a temporary label.
Named labels are identifiers followed by one or two colon characters. Labels defined with one colon are not referenced outside the source module. A second colon specifies that the label is made visibly external to the source file that it is in, instead of being local to that file.
Temporary labels consist of a non-zero digit followed by a colon. Any number of these labels can be present, even if the value of the constant repeats. A reference to a temporary label consists of the label's constant value expressed as a decimal number followed immediately, with no space, by an f or b. This reference refers to the nearest statement with the same numeric label either forward of the reference, not including the current source line, specifying an f, or backward from the reference, including the source line, specifying a b. Matching labels in the non-specified direction are not referenced, even if they are closer.
1: bra lb # infinite loop
nop # delay slot