symbols.patch (1222B)
1 diff --git a/llvm/utils/extract_symbols.py b/llvm/utils/extract_symbols.py 2 index 0cbfd2e2910e1..3829f5b64bb4d 100755 3 --- a/llvm/utils/extract_symbols.py 4 +++ b/llvm/utils/extract_symbols.py 5 @@ -113,6 +113,9 @@ def should_keep_microsoft_symbol(symbol, calling_convention_decoration): 6 and (symbol.startswith("?Head@") or symbol.startswith("?Tail@")) 7 ): 8 return symbol 9 + # Skip symbols added by the compiler with -fprofile-generate. 10 + elif symbol.startswith("__prof"): 11 + return None 12 # Keep mangled llvm:: and clang:: function symbols. How we detect these is a 13 # bit of a mess and imprecise, but that avoids having to completely demangle 14 # the symbol name. The outermost namespace is at the end of the identifier 15 @@ -131,7 +134,7 @@ def should_keep_microsoft_symbol(symbol, calling_convention_decoration): 16 # ::= .+@ (list of types) 17 # ::= .*Z (list of types, varargs) 18 # <throw-spec> ::= exceptions are not allowed 19 - elif re.search(r"(llvm|clang)@@[A-Z][A-Z0-9_]*[A-JQ].+(X|.+@|.*Z)$", symbol): 20 + elif re.search(r"(llvm|clang)@@[A-DG-LO-UW-Z][A-Z0-9_]*[A-JQ].+(X|.+@|.*Z)$", symbol): 21 return symbol 22 return None