Control-flow integrity in 5.13
Control-flow integrity in 5.13
Posted May 22, 2021 14:45 UTC (Sat) by Paf (subscriber, #91811)In reply to: Control-flow integrity in 5.13 by Cyberax
Parent article: Control-flow integrity in 5.13
Posted May 25, 2021 18:00 UTC (Tue)
by andresfreund (subscriber, #69562)
[Link]
I'm pretty sure that several compilers use profile guided "optimistic" devirtualization, which basically ends up with code like
Control-flow integrity in 5.13
if (call_target == very_common_target) very_common_target() else if (call_target == also_common_target) also_common_target() else *call_target(). And I've seen code like that manually written in plenty places, with good success.
