Commit 41a7670a38

r00ster91 <r00ster91@proton.me>
2022-12-16 00:34:30
compiler_rt: remove stage1 switch case
1 parent 20c5b6a
Changed files (1)
lib
compiler_rt
lib/compiler_rt/clzsi2_test.zig
@@ -3,24 +3,11 @@ const clz = @import("count0bits.zig");
 const testing = @import("std").testing;
 
 fn test__clzsi2(a: u32, expected: i32) !void {
-    // stage1 and stage2 diverge on function pointer semantics
-    switch (builtin.zig_backend) {
-        .stage1 => {
-            // Use of `var` here is working around a stage1 bug.
-            var nakedClzsi2 = clz.__clzsi2;
-            var actualClzsi2 = @ptrCast(fn (a: i32) callconv(.C) i32, nakedClzsi2);
-            var x = @bitCast(i32, a);
-            var result = actualClzsi2(x);
-            try testing.expectEqual(expected, result);
-        },
-        else => {
-            const nakedClzsi2 = clz.__clzsi2;
-            const actualClzsi2 = @ptrCast(*const fn (a: i32) callconv(.C) i32, &nakedClzsi2);
-            const x = @bitCast(i32, a);
-            const result = actualClzsi2(x);
-            try testing.expectEqual(expected, result);
-        },
-    }
+    const nakedClzsi2 = clz.__clzsi2;
+    const actualClzsi2 = @ptrCast(*const fn (a: i32) callconv(.C) i32, &nakedClzsi2);
+    const x = @bitCast(i32, a);
+    const result = actualClzsi2(x);
+    try testing.expectEqual(expected, result);
 }
 
 test "clzsi2" {