On Tue, May 10, 2022 at 3:05 AM 'Nick Desaulniers' via Clang Built Linux <clang-built-linux@xxxxxxxxxxxxxxxx> wrote: > > On Sun, May 8, 2022 at 12:10 PM Masahiro Yamada <masahiroy@xxxxxxxxxx> wrote: > > > > diff --git a/scripts/check-local-export b/scripts/check-local-export > > new file mode 100755 > > index 000000000000..d1721fa63057 > > --- /dev/null > > +++ b/scripts/check-local-export > > @@ -0,0 +1,48 @@ > > +#!/bin/bash > > +# SPDX-License-Identifier: GPL-2.0-only > > +# > > +# Copyright (C) 2022 Masahiro Yamada > > + > > +set -e > > +set -o pipefail > > + > > +declare -A symbol_types > > +declare -a export_symbols > > + > > +exit_code=0 > > + > > +while read value type name > > +do > > + # to avoid error for clang LTO; $name may be empty > > + if [[ $value = -* && -z $name ]]; then > > + continue > > + fi > > + > > + # The first field (value) may be empty. If so, fix it up. > > + if [[ -z $name ]]; then > > + name=${type} > > + type=${value} > > + fi > > Consider adding examples of output from NM as comments where you're > handling special cases. > > Aren't BOTH from LTO? The first case is: > > ---------------- T strncpy For LTO, I see ---------------- t in the llvm-nm output. > > while the second is > > U strncpy Right, this happens for all unresolved symbols. The address part is empty. I will add the output example in the comment block. > IIUC? > > Reviewed-by: Nick Desaulniers <ndesaulniers@xxxxxxxxxx> > -- > Thanks, > ~Nick Desaulniers > > -- > You received this message because you are subscribed to the Google Groups "Clang Built Linux" group. > To unsubscribe from this group and stop receiving emails from it, send an email to clang-built-linux+unsubscribe@xxxxxxxxxxxxxxxx. > To view this discussion on the web visit https://groups.google.com/d/msgid/clang-built-linux/CAKwvOdkhcJB8Bnrt51siRefWe%2BZSvHagCs2G011PzkkrD3cxQw%40mail.gmail.com. -- Best Regards Masahiro Yamada