| ... | ... | @@ -674,6 +674,27 @@ comptime { |
| 674 | 674 | @export(_aullrem, .{ .name = "\x01__aullrem", .linkage = strong_linkage }); |
| 675 | 675 | } |
| 676 | 676 | |
| 677 | const fmodl = @import("compiler_rt/floatfmodl.zig").fmodl; |
| 678 | @export(fmodl, .{ .name = "fmodl", .linkage = linkage }); |
| 679 | |
| 680 | @export(floorf, .{ .name = "floorf", .linkage = linkage }); |
| 681 | @export(floor, .{ .name = "floor", .linkage = linkage }); |
| 682 | @export(floorl, .{ .name = "floorl", .linkage = linkage }); |
| 683 | |
| 684 | @export(fma, .{ .name = "fma", .linkage = linkage }); |
| 685 | @export(fmaf, .{ .name = "fmaf", .linkage = linkage }); |
| 686 | @export(fmal, .{ .name = "fmal", .linkage = linkage }); |
| 687 | if (long_double_is_f80) { |
| 688 | @export(fmal, .{ .name = "__fmax", .linkage = linkage }); |
| 689 | } else { |
| 690 | @export(__fmax, .{ .name = "__fmax", .linkage = linkage }); |
| 691 | } |
| 692 | if (long_double_is_f128) { |
| 693 | @export(fmal, .{ .name = "fmaq", .linkage = linkage }); |
| 694 | } else { |
| 695 | @export(fmaq, .{ .name = "fmaq", .linkage = linkage }); |
| 696 | } |
| 697 | |
| 677 | 698 | if (arch.isSPARC()) { |
| 678 | 699 | // SPARC systems use a different naming scheme |
| 679 | 700 | const _Qp_add = @import("compiler_rt/sparc.zig")._Qp_add; |
| ... | ... | @@ -726,7 +747,7 @@ comptime { |
| 726 | 747 | @export(_Qp_qtod, .{ .name = "_Qp_qtod", .linkage = linkage }); |
| 727 | 748 | } |
| 728 | 749 | |
| 729 | | if ((arch == .powerpc or arch.isPPC64()) and !is_test) { |
| 750 | if ((arch.isPPC() or arch.isPPC64()) and !is_test) { |
| 730 | 751 | @export(__addtf3, .{ .name = "__addkf3", .linkage = linkage }); |
| 731 | 752 | @export(__subtf3, .{ .name = "__subkf3", .linkage = linkage }); |
| 732 | 753 | @export(__multf3, .{ .name = "__mulkf3", .linkage = linkage }); |
| ... | ... | @@ -751,27 +772,9 @@ comptime { |
| 751 | 772 | @export(__letf2, .{ .name = "__lekf2", .linkage = linkage }); |
| 752 | 773 | @export(__getf2, .{ .name = "__gtkf2", .linkage = linkage }); |
| 753 | 774 | @export(__unordtf2, .{ .name = "__unordkf2", .linkage = linkage }); |
| 754 | | } |
| 755 | | |
| 756 | | const fmodl = @import("compiler_rt/floatfmodl.zig").fmodl; |
| 757 | | @export(fmodl, .{ .name = "fmodl", .linkage = linkage }); |
| 758 | | |
| 759 | | @export(floorf, .{ .name = "floorf", .linkage = linkage }); |
| 760 | | @export(floor, .{ .name = "floor", .linkage = linkage }); |
| 761 | | @export(floorl, .{ .name = "floorl", .linkage = linkage }); |
| 762 | 775 | |
| 763 | | @export(fma, .{ .name = "fma", .linkage = linkage }); |
| 764 | | @export(fmaf, .{ .name = "fmaf", .linkage = linkage }); |
| 765 | | @export(fmal, .{ .name = "fmal", .linkage = linkage }); |
| 766 | | if (long_double_is_f80) { |
| 767 | | @export(fmal, .{ .name = "__fmax", .linkage = linkage }); |
| 768 | | } else { |
| 769 | | @export(__fmax, .{ .name = "__fmax", .linkage = linkage }); |
| 770 | | } |
| 771 | | if (long_double_is_f128) { |
| 772 | | @export(fmal, .{ .name = "fmaq", .linkage = linkage }); |
| 773 | | } else { |
| 774 | | @export(fmaq, .{ .name = "fmaq", .linkage = linkage }); |
| 776 | // LLVM PPC backend lowers f128 fma to `fmaf128`. |
| 777 | @export(fmal, .{ .name = "fmaf128", .linkage = linkage }); |
| 775 | 778 | } |
| 776 | 779 | } |
| 777 | 780 | |