Not able to see all the symbols in the output of "nm" command

Mulyadi Santosa mulyadi.santosa at gmail.com
Thu Apr 14 08:11:33 EDT 2011


Hi Madhavi :)

On Thu, Apr 14, 2011 at 05:55, Madhavi Manchala <madhavi.linux at gmail.com> wrote:
> The functions which are available in the header file are "INLINE"
> functions.

I see. Well, think "inline" function like another form of macro. So,
they are inlined at the point they are called. This is different with
non inline function...they are called, most likely by executing "call"
instruction (in x86 assembly)

>However, there are few functions, which are available in
> the C files, also not able to see in the output of the "nm" command.
> Is there any idea?

Can you tell me their prototypes? just 2 or 3 of them? Quite likely
either they are explicitly inline function or decided by gcc to be
inlined because they are simple enough (thus "call" is considered a
bit expensive to do)

> Inlined functions are not visible in the output of the "nm" command.
> Is this known behaviour?

yes...if the function is inlined, there is no need to refer to the
function name (the symbol), right?

-- 
regards,

Mulyadi Santosa
Freelance Linux trainer and consultant

blog: the-hydra.blogspot.com
training: mulyaditraining.blogspot.com



More information about the Kernelnewbies mailing list