From 4fb9c75fc944bbc3242feff653aacd69e17b75dc Mon Sep 17 00:00:00 2001 From: Veikka Tuominen Date: Wed, 7 Dec 2022 14:54:29 +0200 Subject: [PATCH] compiler-rt: do not export complex arithmetic on ofmt=c These functions cannot be properly implemented without #8465 Closes #13800 --- lib/compiler_rt/divdc3.zig | 4 +++- lib/compiler_rt/divhc3.zig | 4 +++- lib/compiler_rt/divsc3.zig | 4 +++- lib/compiler_rt/divtc3.zig | 4 +++- lib/compiler_rt/divxc3.zig | 4 +++- lib/compiler_rt/muldc3.zig | 4 +++- lib/compiler_rt/mulhc3.zig | 4 +++- lib/compiler_rt/mulsc3.zig | 4 +++- lib/compiler_rt/multc3.zig | 4 +++- lib/compiler_rt/mulxc3.zig | 4 +++- 10 files changed, 30 insertions(+), 10 deletions(-) diff --git a/lib/compiler_rt/divdc3.zig b/lib/compiler_rt/divdc3.zig index f7592f639d371038f81ebcad5fd961a32d38e9d9..8aad682e6196f86799884c09a2352006415d0f6c 100644 --- a/lib/compiler_rt/divdc3.zig +++ b/lib/compiler_rt/divdc3.zig @@ -3,7 +3,9 @@ const divc3 = @import("./divc3.zig"); const Complex = @import("./mulc3.zig").Complex; comptime { - @export(__divdc3, .{ .name = "__divdc3", .linkage = common.linkage }); + if (@import("builtin").zig_backend != .stage2_c) { + @export(__divdc3, .{ .name = "__divdc3", .linkage = common.linkage }); + } } pub fn __divdc3(a: f64, b: f64, c: f64, d: f64) callconv(.C) Complex(f64) { diff --git a/lib/compiler_rt/divhc3.zig b/lib/compiler_rt/divhc3.zig index e2d682fe2deeb600c473a6ac559cb87f9a431602..3de89675933247966e6b5c991e504da2907b36e2 100644 --- a/lib/compiler_rt/divhc3.zig +++ b/lib/compiler_rt/divhc3.zig @@ -3,7 +3,9 @@ const divc3 = @import("./divc3.zig"); const Complex = @import("./mulc3.zig").Complex; comptime { - @export(__divhc3, .{ .name = "__divhc3", .linkage = common.linkage }); + if (@import("builtin").zig_backend != .stage2_c) { + @export(__divhc3, .{ .name = "__divhc3", .linkage = common.linkage }); + } } pub fn __divhc3(a: f16, b: f16, c: f16, d: f16) callconv(.C) Complex(f16) { diff --git a/lib/compiler_rt/divsc3.zig b/lib/compiler_rt/divsc3.zig index a64f14629c9d4dd8390e8066f54d4e2a4fd1cfee..c9e0c0cbf567e14179958030cdd0999e9548c0d7 100644 --- a/lib/compiler_rt/divsc3.zig +++ b/lib/compiler_rt/divsc3.zig @@ -3,7 +3,9 @@ const divc3 = @import("./divc3.zig"); const Complex = @import("./mulc3.zig").Complex; comptime { - @export(__divsc3, .{ .name = "__divsc3", .linkage = common.linkage }); + if (@import("builtin").zig_backend != .stage2_c) { + @export(__divsc3, .{ .name = "__divsc3", .linkage = common.linkage }); + } } pub fn __divsc3(a: f32, b: f32, c: f32, d: f32) callconv(.C) Complex(f32) { diff --git a/lib/compiler_rt/divtc3.zig b/lib/compiler_rt/divtc3.zig index 190df5c06773d1fa12dd1818cbe5ba1086fa5374..e2382a1372beac68b9d57f637ea2da72d9d7c383 100644 --- a/lib/compiler_rt/divtc3.zig +++ b/lib/compiler_rt/divtc3.zig @@ -3,7 +3,9 @@ const divc3 = @import("./divc3.zig"); const Complex = @import("./mulc3.zig").Complex; comptime { - @export(__divtc3, .{ .name = "__divtc3", .linkage = common.linkage }); + if (@import("builtin").zig_backend != .stage2_c) { + @export(__divtc3, .{ .name = "__divtc3", .linkage = common.linkage }); + } } pub fn __divtc3(a: f128, b: f128, c: f128, d: f128) callconv(.C) Complex(f128) { diff --git a/lib/compiler_rt/divxc3.zig b/lib/compiler_rt/divxc3.zig index 32fb269ca5f32c3cd828819cdef160e5256a81de..c6ed5a210c6e653b5467f7bf7cd6bba098a867e4 100644 --- a/lib/compiler_rt/divxc3.zig +++ b/lib/compiler_rt/divxc3.zig @@ -3,7 +3,9 @@ const divc3 = @import("./divc3.zig"); const Complex = @import("./mulc3.zig").Complex; comptime { - @export(__divxc3, .{ .name = "__divxc3", .linkage = common.linkage }); + if (@import("builtin").zig_backend != .stage2_c) { + @export(__divxc3, .{ .name = "__divxc3", .linkage = common.linkage }); + } } pub fn __divxc3(a: f80, b: f80, c: f80, d: f80) callconv(.C) Complex(f80) { diff --git a/lib/compiler_rt/muldc3.zig b/lib/compiler_rt/muldc3.zig index 343ae5a064a9fdadc10be14f70cb72e9fb825c36..cef8f660b20486b5a5b6aa4ae06184511a6eabe1 100644 --- a/lib/compiler_rt/muldc3.zig +++ b/lib/compiler_rt/muldc3.zig @@ -4,7 +4,9 @@ const mulc3 = @import("./mulc3.zig"); pub const panic = common.panic; comptime { - @export(__muldc3, .{ .name = "__muldc3", .linkage = common.linkage }); + if (@import("builtin").zig_backend != .stage2_c) { + @export(__muldc3, .{ .name = "__muldc3", .linkage = common.linkage }); + } } pub fn __muldc3(a: f64, b: f64, c: f64, d: f64) callconv(.C) mulc3.Complex(f64) { diff --git a/lib/compiler_rt/mulhc3.zig b/lib/compiler_rt/mulhc3.zig index f1fad90affbaf45dcfd89f63204112d96e1fd483..70c68e2a72d0ecf03340b7a694865fd38ef179d2 100644 --- a/lib/compiler_rt/mulhc3.zig +++ b/lib/compiler_rt/mulhc3.zig @@ -4,7 +4,9 @@ const mulc3 = @import("./mulc3.zig"); pub const panic = common.panic; comptime { - @export(__mulhc3, .{ .name = "__mulhc3", .linkage = common.linkage }); + if (@import("builtin").zig_backend != .stage2_c) { + @export(__mulhc3, .{ .name = "__mulhc3", .linkage = common.linkage }); + } } pub fn __mulhc3(a: f16, b: f16, c: f16, d: f16) callconv(.C) mulc3.Complex(f16) { diff --git a/lib/compiler_rt/mulsc3.zig b/lib/compiler_rt/mulsc3.zig index 3ea055f9fffd2b39806855a5424adda65b5a5331..5fe289453b385ddcec56101b9de940b2cdad2296 100644 --- a/lib/compiler_rt/mulsc3.zig +++ b/lib/compiler_rt/mulsc3.zig @@ -4,7 +4,9 @@ const mulc3 = @import("./mulc3.zig"); pub const panic = common.panic; comptime { - @export(__mulsc3, .{ .name = "__mulsc3", .linkage = common.linkage }); + if (@import("builtin").zig_backend != .stage2_c) { + @export(__mulsc3, .{ .name = "__mulsc3", .linkage = common.linkage }); + } } pub fn __mulsc3(a: f32, b: f32, c: f32, d: f32) callconv(.C) mulc3.Complex(f32) { diff --git a/lib/compiler_rt/multc3.zig b/lib/compiler_rt/multc3.zig index c6afcdefb2eef7709c386222202fa4dc68b8c4c5..94f2205d7658361f2e37bd1e07c47cfdb1edbb10 100644 --- a/lib/compiler_rt/multc3.zig +++ b/lib/compiler_rt/multc3.zig @@ -4,7 +4,9 @@ const mulc3 = @import("./mulc3.zig"); pub const panic = common.panic; comptime { - @export(__multc3, .{ .name = "__multc3", .linkage = common.linkage }); + if (@import("builtin").zig_backend != .stage2_c) { + @export(__multc3, .{ .name = "__multc3", .linkage = common.linkage }); + } } pub fn __multc3(a: f128, b: f128, c: f128, d: f128) callconv(.C) mulc3.Complex(f128) { diff --git a/lib/compiler_rt/mulxc3.zig b/lib/compiler_rt/mulxc3.zig index decba868e8dc03a081078228a41cd6193e7a8164..4a90d0e45306d93637cad24952e5a3d41236f076 100644 --- a/lib/compiler_rt/mulxc3.zig +++ b/lib/compiler_rt/mulxc3.zig @@ -4,7 +4,9 @@ const mulc3 = @import("./mulc3.zig"); pub const panic = common.panic; comptime { - @export(__mulxc3, .{ .name = "__mulxc3", .linkage = common.linkage }); + if (@import("builtin").zig_backend != .stage2_c) { + @export(__mulxc3, .{ .name = "__mulxc3", .linkage = common.linkage }); + } } pub fn __mulxc3(a: f80, b: f80, c: f80, d: f80) callconv(.C) mulc3.Complex(f80) { -- 2.54.0