aboutsummaryrefslogtreecommitdiff
path: root/test/behavior/switch_loop.zig
diff options
context:
space:
mode:
authorPavel Verigo <paul.verigo@gmail.com>2024-09-18 16:55:50 +0200
committerAndrew Kelley <andrew@ziglang.org>2025-02-22 18:34:00 -0500
commitb25d93e7d95418ea92b388ff8b58a04673c04539 (patch)
tree81a486b469fdffd0078d6289b1fe5390e1ab614a /test/behavior/switch_loop.zig
parent61b69a418db2f525c4be4e19029487f61fb3234e (diff)
downloadzig-b25d93e7d95418ea92b388ff8b58a04673c04539.tar.gz
zig-b25d93e7d95418ea92b388ff8b58a04673c04539.zip
stage2-wasm: implement switch_dispatch + handle > 32 bit integers in switches
Updated solution is future proof for arbitary size integer handling for both strategies .br_table lowering if switch case is dense, .br_if base jump table if values are too sparse.
Diffstat (limited to 'test/behavior/switch_loop.zig')
-rw-r--r--test/behavior/switch_loop.zig7
1 files changed, 0 insertions, 7 deletions
diff --git a/test/behavior/switch_loop.zig b/test/behavior/switch_loop.zig
index 6bc268e390..b0498d89ce 100644
--- a/test/behavior/switch_loop.zig
+++ b/test/behavior/switch_loop.zig
@@ -3,7 +3,6 @@ const std = @import("std");
const expect = std.testing.expect;
test "simple switch loop" {
- if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
@@ -28,7 +27,6 @@ test "simple switch loop" {
}
test "switch loop with ranges" {
- if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
@@ -50,7 +48,6 @@ test "switch loop with ranges" {
}
test "switch loop on enum" {
- if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
@@ -75,7 +72,6 @@ test "switch loop on enum" {
}
test "switch loop with error set" {
- if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
@@ -100,7 +96,6 @@ test "switch loop with error set" {
}
test "switch loop on tagged union" {
- if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
@@ -134,7 +129,6 @@ test "switch loop on tagged union" {
}
test "switch loop dispatching instructions" {
- if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
@@ -185,7 +179,6 @@ test "switch loop dispatching instructions" {
}
test "switch loop with pointer capture" {
- if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO