Currently preservesResourceLen in machine combiner pass requires that new instructions resource length is not bigger than old instructions resource length.
I think this is ok if size of new instructions is not bigger than size of old instructions. For now I think all reassociations in machine combiner pass meets this condition.
But in patch https://reviews.llvm.org/D80175, we add a new reassociation that combines fma + fma + fma to (fmul + fma + fma + fadd), this will cause callee in getResourceLength, getCycles sometimes return same resource length for new and old instructions and sometimes new resource length is 1 bigger than old resource length.
Add this hook to make it target specific to accept some extension in resource length but we may still benefit from reducing in data depth.