Next: , Previous: , Up: CTF dictionaries   [Contents][Index]


2.5 The function info section

This is similar to the data object section, except that rather than being an array of data types, it’s an array of little structures similar to CTF_K_FUNCTION. There is no structure associated with this in ctf.h, but if there was it would look like this:

struct ctf_funcinfo
{
  uint32_t ctt_info;
  uint32_t ctt_type;
  uint32_t ctt_arg[N];
};

If this looks similar to CTF_K_FUNCTION above, this is not surprising: in effect it is a truncated ctf_stype_t without a name, followed by the variable-length data expected for the CTF_K_FUNCTION: the ctt_info is identical. So we shall defer to that section for offsets, etc. See section Function pointers.

It is linked to function symbols identically to the data object section, by traversing the ELF symbol table and associating all named, defined STT_FUNC symbols not named “_START” or “_END” with a single entry in this section, stopping when we get to the end of the section.