udivti3.zig (770B) - Raw
1 const std = @import("std"); 2 const builtin = @import("builtin"); 3 const udivmod = @import("udivmod.zig").udivmod; 4 const common = @import("common.zig"); 5 6 pub const panic = common.panic; 7 8 comptime { 9 if (common.want_windows_v2u64_abi) { 10 @export(&__udivti3_windows_x86_64, .{ .name = "__udivti3", .linkage = common.linkage, .visibility = common.visibility }); 11 } else { 12 @export(&__udivti3, .{ .name = "__udivti3", .linkage = common.linkage, .visibility = common.visibility }); 13 } 14 } 15 16 pub fn __udivti3(a: u128, b: u128) callconv(.c) u128 { 17 return udivmod(u128, a, b, null); 18 } 19 20 const v2u64 = @Vector(2, u64); 21 22 fn __udivti3_windows_x86_64(a: v2u64, b: v2u64) callconv(.c) v2u64 { 23 return @bitCast(udivmod(u128, @bitCast(a), @bitCast(b), null)); 24 }