1. A method, in a data processing system, for path-sensitive analysis for reducing rollback overheads, the method comprising: receiving, in a compiler running in the data processing system, program code to be compiled to form compiled code; dividing, by the compiler, the program code into one or more basic blocks; determining, by the compiler, a restore register set for each of the one or more basic blocks to form one or more restore register sets; and storing the one or more restore register sets such that responsive to a rollback during execution of the compiled code, a rollback routine identifies a restore register set from the one or more restore register sets and restores registers identified in the identified restore register set.