7f3ddf8443
Previously, we only allowed this for DylibSymbols. However, in order to properly support `-flat_namespace` as well as `-interposable`, we need to allow this for Defined symbols too. Therefore we hoist the `lazyBindOffset` and the `stubsHelperIndex` into the parent Symbol class. The actual change to support interposition under `-flat_namespace` is in {D119294}; the NFC changes here have been split out for easier review. Perf regression isn't stat sig on my 3.2 GHz 16-Core Intel Xeon W linking chromium_framework: base diff difference (95% CI) sys_time 1.227 ± 0.021 1.234 ± 0.031 [ -0.3% .. +1.5%] user_time 3.665 ± 0.036 3.674 ± 0.035 [ -0.2% .. +0.7%] wall_time 4.596 ± 0.055 4.609 ± 0.064 [ -0.3% .. +0.9%] samples 34 47 Max RSS regression is barely stat sig: base diff difference (95% CI) time 1003664356.324 ± 15404053.912 1010380403.613 ± 10578309.455 [ +0.0% .. +1.3%] samples 37 31 Reviewed By: modimo Differential Revision: https://reviews.llvm.org/D121351 |
||
---|---|---|
.. | ||
ARM.cpp | ||
ARM64.cpp | ||
ARM64_32.cpp | ||
ARM64Common.cpp | ||
ARM64Common.h | ||
X86_64.cpp |