aboutsummaryrefslogtreecommitdiff
path: root/src/codegen.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/codegen.zig')
-rw-r--r--src/codegen.zig7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/codegen.zig b/src/codegen.zig
index 5e5215c992..9deeab82a5 100644
--- a/src/codegen.zig
+++ b/src/codegen.zig
@@ -786,6 +786,7 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {
.unwrap_optional => return self.genUnwrapOptional(inst.castTag(.unwrap_optional).?),
.wrap_optional => return self.genWrapOptional(inst.castTag(.wrap_optional).?),
.varptr => return self.genVarPtr(inst.castTag(.varptr).?),
+ .@"switch" => return self.genSwitch(inst.castTag(.@"switch").?),
}
}
@@ -1989,6 +1990,12 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {
return @bitCast(MCValue, inst.codegen.mcv);
}
+ fn genSwitch(self: *Self, inst: *ir.Inst.Switch) !MCValue {
+ switch (arch) {
+ else => return self.fail(inst.base.src, "TODO genSwitch for {}", .{self.target.cpu.arch}),
+ }
+ }
+
fn performReloc(self: *Self, src: usize, reloc: Reloc) !void {
switch (reloc) {
.rel32 => |pos| {