GSoC/GCI Archive
Google Summer of Code 2009 GCC

Enable generic function cloning and program instrumentation in GCC to be able to create static binaries adaptable to varying program and system behavior or different architectures at run-time

by Liang Peng for GCC

Function cloning is proved to be useful to make statically-compiled programs or libraries adaptable to changing inputs, architectures and virtual environments at run-time. Since no existent prototype have been fully completed and ported to the latest GCC, we would like to enable GCC generic function cloning and implement program instrumentation with program behavior monitoring library in GCC4.4 using pragmas and ICI to enable optimizing clones at fine-grain level, so as to improve performance.