Remove code related to deferring -Wstrict-overflow warnings.
The compiler no longer defers `-Wstrict-overflow` warnings, since they are no longer issued.
The code for deferring -Wstrict-overflow warnings has been removed from the fold-const.cc file. This includes removing the fold_defer_overflow_warnings counter, associated helper functions, and related logic in various compiler passes. Since -Wstrict-overflow is now a no-op, this code is no longer needed. This change simplifies the compiler and removes dead code.
In Details
This commit removes fold_defer_overflow_warnings, fold_undefer_overflow_warnings, fold_deferring_overflow_warnings_p from fold-const.h and fold-const.cc. It also removes uses of these functions in gimple-fold.cc, passes.cc, tree-cfgcleanup.cc, tree-data-ref.cc, tree-ssa-ccp.cc, tree-ssa-forwprop.cc, tree-ssa-loop-niter.cc, tree-ssa-threadedge.cc, and tree-vrp.cc. Search terms: GCC constant folding -Wstrict-overflow
For Context
Constant folding is a compiler optimization technique where expressions involving constants are evaluated at compile time instead of at runtime. This can improve performance by reducing the amount of work the CPU needs to do at runtime. This commit removes code related to handling -Wstrict-overflow warnings during constant folding.