Controlling your control flow graph
The Performance Cost of Shadow Stacks and Stack Canaries