HDTrans: a low-overhead dynamic translator
Pin: building customized program analysis tools with dynamic instrumentation