2010/9/8 Ian Lance Taylor <iant@xxxxxxxxxx>: > > Joel <torpe@xxxxxxxxxxx> writes: > >> Apparently, at least for MIPS target, GCC generates labels starting >> from 2: $L2, $L3, etc. >> Do you know why the numbering begins at 2 ? > > $L1 is generated for the return label for the function, a label which > the code will branch to in order to return. However, because MIPS can > return directly, and because of branch delay slots, the return label is > almost never used and winds up being discarded. There is probably some > way to write a function such that the return label will be used, but I > couldn't do it in five minutes. > > Ian Thank you very much for this interesting answer! One part of the mystery is now solved, it remains the last part: what about the $L0 label? Regards, Joel