A method and computer program product, within an optimizing compiler, for
precise feedback data generation and updating. The method and computer
program uses instrumentation and annotation of frequency values to allow
feedback data to stay current during the multiple optimizations that the
program code undergoes during compilation. Global propagation of known
precise feedback values are used to replace approximate and unavailable
values, and global verification of feedback data after optimization to
detect discrepancies is employed. The method and computer program also
provides improved instrumentation to anticipate cloning when code is
cloned during ceratin compiler optimizations and handles inlined
procedures. The result is compiled executables with improved SPECint
benchmarks.