Control-Flow Integrity: Precision, Security, and Performance