Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR makes the overflow behavior active by default.
A temporal flag
disable_overflow
is added in case this change cause stopper issues. Expect to be removed in the near future.Instead of linking to compiler-rt, the existing minimal port will be used. The specs of
mulodi4
were ported also.The
mulodi4
implementation was moved to acompiler_rt
directory. More compiler-rt functions might be ported if we aim for Int128 bit support across all targets. But that is a different story.The ported
mulodi4
is not always used (it depends on the architecture) but is always emitted. If the user wants to link an official compiler-rt, theskip_crystal_compiler_rt
flag can be used. But I expect the port will be easier to use.cc: @wontruefree
Ref: #7514, #8153, #7798