On 12 August 2013 16:36, Richard Smith <[email protected]> wrote:
> LGTM, thanks! > Thanks! I'd like to give the other sanitizer folks a chance to complain, so I'm going to wait until tomorrow before committing it. On Mon, Aug 12, 2013 at 4:25 PM, Nick Lewycky <[email protected]> wrote: > >> The attached patch causes ubsan to get linked in when building a .so >> file. This is different from other sanitizers. >> >> The other sanitizers are harder to deploy because they rely on replacing >> malloc. This means that you have to figure out how to link in a single >> malloc in the final binary. >> >> ubsan doesn't need this. You could link a .so file with ubsan, then link >> the final binary with no knowledge that ubsan was ever involved, and it >> will work just fine. (Or rather, it will after this patch.) In particular, >> I can't currently build a python module with ubsan and then load it into a >> normal python. The attached patch makes this work. >> >> The downside to this patch is that we can end up with multiple copies of >> the ubsan runtime linked in. In reality this works fine because the ubsan >> runtime doesn't keep much state (and it'd be difficult to make it do so >> correctly because it has to support calling through files that are a mix of >> built and not build with ubsan). We'll end up with multiple copies of >> ubsan's vptr cache, which in turn will probably improve performance by >> improving locality. >> >> Please review! >> >> Nick >> >> >> _______________________________________________ >> cfe-commits mailing list >> [email protected] >> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits >> >> >
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
