GCC for MIPS emits assembly label(?) with "= ."

1

Heyho everyone,

I'm using the GCC 9.3.0 to generate Assembly files for MIPS. When looking at those assembly lines I noticed something that looks like a jump label - but it is never referenced.

_ZN10FileSystem8AutoLoad9loadAsyncERKNS0_8FileListE:
    .frame  $sp,40,$31      # vars= 0, regs= 5/0, args= 16, gp= 0
    .mask   0x800f0000,-4
    .fmask  0x00000000,0
    .set    noreorder
    .set    nomacro
    addiu   $sp,$sp,-40
    sw  $18,28($sp)
    lui $18,%hi(_ZN10FileSystemL12curLoadStateE)
    sw  $16,20($sp)
    lw  $16,%lo(_ZN10FileSystemL12curLoadStateE)($18)
    sw  $19,32($sp)
    sw  $17,24($sp)
    lui $19,%hi(_ZN10FileSystem8AutoLoadL14curListElementE)
    move    $17,$4
    li  $4,2            # 0x2
    lw  $3,0($17)
    lw  $2,%lo(_ZN10FileSystem8AutoLoadL14curListElementE)($19)
    bne $16,$4,$L44
    sw  $31,36($sp)

$L36 = .
    addiu   $2,$2,1
$L48:
    sll $4,$2,2
    addu    $3,$3,$4
    lw  $16,0($3)
    sw  $0,%lo(_ZN10FileSystemL12curLoadStateE)($18)
    sw  $2,%lo(_ZN10FileSystem8AutoLoadL14curListElementE)($19)
    sltu    $16,$16,1
$L35:
    lw  $31,36($sp)
    lw  $19,32($sp)
    lw  $18,28($sp)
    lw  $17,24($sp)
    move    $2,$16
    lw  $16,20($sp)
    jr  $31
    addiu   $sp,$sp,40

What does "$L36 = ." mean? Is it a jump label that was optimized out?

gcc
assembly
mips
asked on Stack Overflow Apr 1, 2020 by Jaberwocky

0 Answers

Nobody has answered this question yet.


User contributions licensed under CC BY-SA 3.0