aboutsummaryrefslogtreecommitdiff
path: root/lib/compiler_rt/subxf3.zig
blob: e79dd230b5d8a8da80ce672cea28eb63a754eead (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
const std = @import("std");
const common = @import("./common.zig");

pub const panic = common.panic;

comptime {
    @export(&__subxf3, .{ .name = "__subxf3", .linkage = common.linkage, .visibility = common.visibility });
}

fn __subxf3(a: f80, b: f80) callconv(.c) f80 {
    var b_rep = std.math.F80.fromFloat(b);
    b_rep.exp ^= 0x8000;
    const neg_b = b_rep.toFloat();
    return a + neg_b;
}