1. A computer implemented method for reconfiguring an application specific integrated circuit (ASIC) comprising: identifying a functional criticality of a set of logic in the ASIC; classifying the set of logic into a set of regions based on the functional criticality, each region having a target error threshold; and power-gating each region at runtime based on the functional criticality.