1. A method of configuring an integrated circuit device with a user logic design, said method comprising: analyzing said user logic design to identify critical and near-critical cyclic logic paths within said user logic design; applying timing optimizations other than retiming to said critical and near-critical cyclic logic paths; and retiming logic paths without retiming said critical and near-critical cyclic logic paths.