in profiler/stack_printer.cpp [166:194]
static void print_fold_user_stack_with_lua(const lua_stack_backtrace *lua_bt, const struct syms *syms, unsigned long *uip, unsigned int nr_uip)
{
const struct sym *sym = NULL;
int lua_bt_count = lua_bt->size() - 1;
for (int j = nr_uip - 1; j >= 0; j--)
{
sym = syms__map_addr(syms, uip[j]);
if (sym)
{
if (!env.lua_user_stacks_only)
{
printf(";%s", sym->name);
}
}
else
{
if (lua_bt_count >= 0)
{
print_fold_lua_func(syms, &((*lua_bt)[lua_bt_count]));
lua_bt_count--;
}
}
}
while (lua_bt_count >= 0)
{
print_fold_lua_func(syms, &((*lua_bt)[lua_bt_count]));
lua_bt_count--;
}
}