Previously it was calling getscopes(pc) to see if we're at the start of
the outermost function, which may be a preamble for -mfentry. But the
scopes are inside-out -- [0] is the innermost -- so inlines were
comparing against their own entry pc, then inappropriately applying the
mfentry workaround. It also assumes we're already focussed on the CU,
which may not be the case for .callee probes that expand across CUs.
And besides all that, dwarf_getscopes is an expensive traversal.
Instead, we can just keep a cached set of known entry PCs, built from
our existing cache of concrete functions, and check if possible mfentry
PCs are in that set.