Re: [PATCH v2 5/9] objtool: Add verbose option for disassembling affected functions

From: Miroslav Benes
Date: Thu Apr 13 2023 - 10:03:23 EST


On Thu, 13 Apr 2023, Peter Zijlstra wrote:

> On Wed, Apr 12, 2023 at 12:03:20PM -0700, Josh Poimboeuf wrote:
> > + objdump_str = "%sobjdump -wdr %s | gawk -M -v _funcs='%s' '"
> > + "BEGIN { split(_funcs, funcs); }"
> > + "/^$/ { func_match = 0; }"
> > + "/<.*>:/ { "
> > + "f = gensub(/.*<(.*)>:/, \"\\\\1\", 1);"
> > + "for (i in funcs) {"
> > + "if (funcs[i] == f) {"
> > + "func_match = 1;"
> > + "base = strtonum(\"0x\" $1);"
> > + "break;"
> > + "}"
> > + "}"
> > + "}"
> > + "{"
> > + "if (func_match) {"
> > + "addr = strtonum(\"0x\" $1);"
> > + "printf(\"%%04x \", addr - base);"
> > + "print;"
> > + "}"
> > + "}' 1>&2";
>
> Do we want to have scripts/objdump-func.awk and use that to avoid the
> duplication and eventual divergence of these awk thingies?

I vote for that as well. To keep everything in sync can be a nightmare.

Miroslav