This is an archive of the discontinued LLVM Phabricator instance.

ASan: Always call the version mismatch symbol before __asan_init
AbandonedPublic

Authored by filcab on Jun 8 2018, 10:00 AM.

Details

Summary

This enables us to handle different ASan versions with the same runtime.

Previous version bumps were due to the following reasons (check
asan_init_version.h):

Struct layout changes: v2, v4, v7
Function existence/arguments changes: v5, v6, v8
Miscellaneous additional data structures changes: v3

It is possible to support these kinds of changes *if* we know which
version we're dealing with.

Our plan is to internally ship a library with more than one
__asan_version_mismatch_check_v*, and have those functions setup
function pointers to deal appropriately with the structures added by the
compiler. We will not allow more than one version per executable run
(all modules), though, as that would add too much complexity for little
gain.

Diff Detail

Event Timeline

filcab created this revision.Jun 8 2018, 10:00 AM
filcab abandoned this revision.Jun 26 2018, 6:20 AM

We end up not needing this with our current setup, so no need to change it.
Thank you,
Filipe