mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-28 04:35:33 +00:00
e311b07d92
This patch modifies arm64 so that detours are peformed via two passes: 1. The first pass uses a null trampoline to count how many bytes are available for patching the original function. 2. If we have >= 16 bytes to patch, we reuse existing trampoline space. If we have less than 16 bytes to patch, we reserve trampoline space within 128MB of the function, allowing for a 4 byte patch. 3. Then we recurse, this time using a real trampoline. Note that we still do a single-pass on x86(-64). Differential Revision: https://phabricator.services.mozilla.com/D32193 --HG-- extra : moz-landing-system : lando |
||
---|---|---|
.. | ||
Arm64.cpp | ||
Arm64.h | ||
MMPolicies.h | ||
moz.build | ||
PatcherBase.h | ||
PatcherDetour.h | ||
PatcherNopSpace.h | ||
RangeMap.h | ||
TargetFunction.h | ||
Trampoline.h | ||
VMSharingPolicies.h |