“…The compiler literature knows the concept of link-time-and post-link-optimizers [14,7], which exploit the fact that the whole program including libraries and hand-written assembly routines can be analyzed and optimized at linktime, i.e., after all code has been translated to binary with the symbol information still present. Precise tools for determining worst case execution time (WCET) of programs running on real time systems also have to process machine code, since they need to take compiler optimizations into account, and thus face similar problems of reconstructing the control flow [1,15,5]. Other applications of binary analysis include binary instrumentation [16], binary translation [17], or profiling [4].…”