[PATCH] D46326: ThinLTO+CFI: short-circuit direct calls to jump table entries
Dmitry Mikulin via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon May 21 20:07:58 PDT 2018
dmikulin added a comment.
In https://reviews.llvm.org/D46326#1105694, @vlad.tsyrklevich wrote:
> Based on a quick look at a couple of stack traces it looks like some direct
> calls now call symbols that are no longer overriden by their replacements
> in chromium, e.g. calls to realloc() from a DSO previously resolved to the
> tcmalloc implementation in chromium instead of realloc.cfi(), the locally
> linked tcmalloc implementation in that library.
If I understand correctly, you have a DSO linked to the main chromium binary. The DSO calls realloc(), which normally resolves at runtime to the realloc() in the main binary. The DSO also defines realloc(). After my changes instead of dynamically resolving realloc(), it's statically resolved to realloc.cfi(). How do you build your DSO? I can't get defined symbols to resolve externally with CFI enabled...
Repository:
rL LLVM
https://reviews.llvm.org/D46326
More information about the llvm-commits
mailing list