<div dir="ltr"><div><div><div><div>Hi everyone,<br><br></div>I am having troubles but this shouldn't be hard to solve for many people here. I am beginning a runtime feature for the BoundsChecking pass and I want to replace the libc malloc&free. I followed the design of AddressSanitizer (Asan) and tried to use the INTERCEPTOR macro from the interception.h file of compiler-rt library.<br><br></div>Here is the problem. The file I modify (BoundsCheking.cpp) is in lib/Transforms/Instrumentation/ and I can't include properly interception.h (which is in projects/compiler-rt/lib/interception/). I looked at the CMakeLists.txt and how other files included interception.h but they are all from compiler-rt lib directory.<br><br></div>I assume this is normal as runtime project should be developped under the correct directory but I don't see how this should be designed in order that the code optimized by BoundsCheking Pass uses my own malloc&free functions.<br><br>I spent quite some time on Asan runtime code and found that runtime could be initialized with a call to __asan_init() (function defined in asan_rtl.cc) from the instrumented code directly but I don't know if it's the only way to do it or how to reproduce it...<br><br></div><div>So to resume, I want to make my own malloc and free function to be called by the code I instrument with BoundsChecking. Any suggestion is welcome =)<br><br></div><div>Thanks,<br></div><div>Pierre<br></div></div>