avoid using ifunc + ASan
authorPhilip Pronin <philipp@fb.com>
Wed, 16 Oct 2013 07:01:53 +0000 (00:01 -0700)
committerSara Golemon <sgolemon@fb.com>
Thu, 24 Oct 2013 21:53:41 +0000 (14:53 -0700)
commit681e46770a9045f8c9c98ae13d3f6205f2be6c85
tree7f2fe47ee05b1048c5e2ba3733545f74b33903a4
parentb3cd8a1b13768b387e9e933333788526e548a6ea
avoid using ifunc + ASan

Summary:
Code that is using ifunc dies with SIGSEGV on startup when used
with ASan.

Here is gdb output: {P2882504}

Seems like `ifunc` dispatch is happening before ASan is initialized,
but ASan instrumentation logic being called from there.

Test Plan:
built affected unicorn binaries with ASan, ran them, verified
there is no more SIGSEGV

Reviewed By: meyering@fb.com

FB internal diff: D1013420
folly/Bits.cpp