Page MenuHomePhabricator

[compiler-rt] Add support for the dynamic shadow allocation

Authored by etienneb on Sep 30 2016, 9:33 AM.



This patch is adding support for dynamic shadow allocation.

This is a merge and re-commit of the following patches.

[compiler-rt] Fix Asan build on Android
[compiler-rt] Add support for the dynamic shadow allocation

This patch needed to re-land at the same time:

[asan] Support dynamic shadow address instrumentation

Diff Detail


Event Timeline

etienneb updated this revision to Diff 73072.Sep 30 2016, 9:33 AM
etienneb retitled this revision from to [compiler-rt] Add support for the dynamic shadow allocation.
etienneb updated this object.
etienneb added reviewers: rnk, zaks.anna.
etienneb added subscribers: llvm-commits, chrisha.
rnk accepted this revision.Sep 30 2016, 10:04 AM
rnk edited edge metadata.

looks good

362–363 ↗(On Diff #73072)

I think UNREACHABLE("...") is preferred

Also, this API is not really implementable on Posix. You can parse /proc/self/maps on Linux and some BSDs, which doesn't even work if you don't have access to /proc. I think at some point we'll want to come back and redesign the abstractions we're using for virtual memory allocation, but today is not that day. We already discussed how the other APIs are way too Posix-y.

This revision is now accepted and ready to land.Sep 30 2016, 10:04 AM
zaks.anna accepted this revision.Sep 30 2016, 10:15 AM
zaks.anna edited edge metadata.

Thanks for working on this! Dynamic offset is very useful for iOS as well.

etienneb closed this revision.Sep 30 2016, 10:56 AM
This revision was automatically updated to reflect the committed changes.