Hi, as demonstrated in the PR, adding using verly large values for uninlined-function-insns and friends leads to overflow. It is easiest to handle this by artificial upper bound on the parameter.
I can imagine that for some architectures, like GCN, function calls can be considered expensvie but not more than 1M of instructions :) Bootstrapped/regtested x86_64-linux and comitted. PR ipa/88755 * params.def (uninlined-function-insns, uninlined-function-time, uninlined-thunk-insns, uninlined-thunk-time): Add artificial upper bound so we don't get overflows. Index: params.def =================================================================== --- params.def (revision 268722) +++ params.def (working copy) @@ -96,23 +96,23 @@ DEFPARAM (PARAM_UNINLINED_FUNCTION_INSNS "uninlined-function-insns", "Instruction accounted for function prologue, epilogue and other" " overhead.", - 2, 0, 0) + 2, 0, 1000000) DEFPARAM (PARAM_UNINLINED_FUNCTION_TIME, "uninlined-function-time", "Time accounted for function prologue, epilogue and other" " overhead.", - 0, 0, 0) + 0, 0, 1000000) DEFPARAM (PARAM_UNINLINED_FUNCTION_THUNK_INSNS, "uninlined-thunk-insns", "Instruction accounted for function thunk overhead.", - 2, 0, 0) + 2, 0, 1000000) DEFPARAM (PARAM_UNINLINED_FUNCTION_THUNK_TIME, "uninlined-thunk-time", "Time accounted for function thunk overhead.", - 2, 0, 0) + 2, 0, 1000000) DEFPARAM (PARAM_MAX_INLINE_INSNS_RECURSIVE, "max-inline-insns-recursive",