Search code examples
cobjdump

Which *.o file or which library corresponds to symbols dumped by objdump?


Is there any way to know where the symbol comes from using objdump.

I have few symbols when i do objdump on my elf file (as follows):

8010864 g   F   .text   0000007c    __floatdisf

8010864 g   F   .text   0000007c    __aeabi_l2f

8010854 g   F   .text   0000008c    __floatundisf   

I am not sure where they come from. They are not part of the libm library.


Solution

  • These functions are glue inserted by the compiler for conversions from integer to floating-point types. (floatdisf converts signed integer to float, floatundisf converts unsigned integer to float, and aeabi_l2f is an alias for floatdisf.)

    The implementations of these functions in LLVM can be found at:

    As the path suggests, they are part of the compiler_rt library, which is linked in automatically as needed.