Virtual Table Interleaving CFI implementation


I have found an implementation of forward-edge control flow integrity for virtual calls in the LLVM LowerTypeTests Pass, but the forward-edge CFI design document mentions an optimized mode called “Forward-Edge CFI for Virtual Calls by Interleaving Virtual Tables.”

This functionality does not seem to be implemented in this pass, and I am not able to find it anywhere else, even though it is present in the design documentation. Is this mechanism implemented elsewhere in the codebase, or did it simply not make it into upstream LLVM? Thanks for your help!

Shishir Jessu