forwprop: Add LMK_INVALID and associated checks
Improves robustness of the forward propagation pass by adding checks for invalid states.
This change introduces an LMK_INVALID enum value to represent an uninitialized state within the long_mul_summand structure. Checks are added in long_mul_set_summand, long_mul_summand_compare, long_mul_find_summand, and long_mul_classify_chain to ensure that only fully initialized long_mul_summand values are processed. These checks are primarily for non-release builds, enhancing debugging and stability.
In Details
The forwprop pass in GCC uses long_mul_summand to represent terms in a scalar multiplication. This commit introduces LMK_INVALID to signify an uninitialized state, preventing incorrect processing of partially formed summands. Checks are added to several functions within tree-ssa-forwprop.cc to validate the state of long_mul_summand before use, particularly when classifying chains or finding summands. This aims to catch potential errors early in the optimization pipeline.