2009 Micro Cfo

Reference 1

Deferred exception

Itanium: deferred exception tracking. can be used to support for information flow tracking.

Deferred exception for speculatively executed instructions. An exception is deferred for later handling instead of being thrown out immediately.

Each general purpose register is extended with an additional deferred exception token (NaT, Not a Thing) to keep track of exceptions.

Token is propagated along with the executing instructions.

Instruction to tnat check the existence of exceptions. chk.s jumps to some recovery code if the register is with an exception token.

Changes to GCC: add passes


  1. Control Flow Obfuscation with Information Flow Tracking. By Haibo Chen, et al. MICRO, 2009. ↩
Created Oct 30, 2019 // Last Updated Oct 30, 2019

If you could revise
the fundmental principles of
computer system design
to improve security...

... what would you change?