It is necessary to use the correct nm and objdump for some targets (for example ARM thumb).
Wrong nm can provide an information but addresses may be wrong. The correct nm for ARM will report the address 0x1234 for a thumb binary, but system’s nm (x86) will report the address 0x1235.
It is very hard to investigate such issues. We suggest to remove nm dependency at all and use objdump -t instead.
Note objdump allows demangling too. It makes the profile page more human friendly.
Here is the objdump -t output format for reference https://github.com/llvm-mirror/llvm/blob/2c4ca6832fa6b306ee6a7010bfb80a3f2596f824/tools/llvm-objdump/llvm-objdump.cpp#L1850
OS Laboratory. Huawei Russian Research Institute. Saint-Petersburg