[LLVMdev] Adding CFI checks to clang vs llvm

Philip Reames listmail at philipreames.com
Tue Feb 17 16:22:49 PST 2015


Rather than using a new intrinsic, you could use either patchpoint or 
statepoints to represent this.  If you passed the string you needed tied 
to the call as an argument, it would end up in the stackmap section.  
You'd be guaranteed that the string was available throughout the 
optimizer as well.

Philip

On 02/17/2015 12:35 PM, Peter Collingbourne wrote:
> Hi,
>
> In http://reviews.llvm.org/D7424 we've been discussing whether to insert
> control flow integrity checks in Clang or LLVM. The main challenge is that
> the checks need something like a string associated with each call, and
> there's currently no stable way to ensure that the string stays with the call.
>
> The current version of the patch does the checks with an intrinsic, but
> there's a concern that this may interfere with devirtualization.
>
> Does anyone have any opinions besides what's been discussed on the review
> thread?
>
> Thanks,




More information about the llvm-dev mailing list