Software Archive
Read-only legacy content
17061 Discussions

What does this thing .L_2il0floatpacket.24 mean?

Doru_Adrian_Thom_P_
419 Views

Hello!

Can someone please tell me what does this construct mean: .L_2il0floatpacket.24? Is it mean that the instruction that has it as a third operand will read from memory or is a a label at the assembly level where the instruction is built?

Thanks,

Doru

0 Kudos
1 Reply
Kevin_D_Intel
Employee
419 Views

It is my understanding this corresponds to a label associated with a constant value within the current scope.

For example, given this code snippet:
 
 10     for (i=0; i<count; i++)
 11     {
 12       x += 4.0f;
 13     }
 
The generated asm would contain details like those shown in the snippet below where the .L_2il0floatpacket.0 corresponds to the constant 4.0f.

###     for (i=0; i<count; i++)
###
###       x += 4.0f;
 
        movss     .L_2il0floatpacket.0(%rip), %xmm0             #12.12
        movss     x(%rip), %xmm1                                #12.7
        addss     %xmm0, %xmm1                                  #12.7
 ...
 ...
# -- Begin  compute
        .section .rodata, "a"
        .align 4
        .align 4
.L_2il0floatpacket.0:
        .long   0x40800000
        .type   .L_2il0floatpacket.0,@object
        .size   .L_2il0floatpacket.0,4

The ".24" in the label you cited would imply the label is associated with the 25th constant found within the current scope.

0 Kudos
Reply