Use a C-safe return type for __rust_[ui]128_*
overflowing intrinsics by tgross35 · Pull Request #735 · rust-lang/compiler-builtins (original) (raw)
Most of our Rust-specific overflowing intrinsics currently return (i128, bool)
, which is not guaranteed to have a stable ABI. Switch to returning the overflow via a mutable parameter and only directly returning the integer result.
__rust_i128_mulo
now matches the function signature of __muloti4
, but they do not share the same ABI on Windows so we cannot easily deduplicate them.