aboutsummaryrefslogtreecommitdiff
path: root/src/codegen/llvm/bindings.zig
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2021-10-20 14:10:37 -0700
committerAndrew Kelley <andrew@ziglang.org>2021-10-20 14:10:37 -0700
commited2a5081e1f379cf089f7700a2818db35faadc05 (patch)
treedb42e8cdfddcd712d7f3f01fd4bcd015f9a20d6d /src/codegen/llvm/bindings.zig
parentdfb3231959bb340d260ddbec2b8eabfb5063c1bf (diff)
downloadzig-ed2a5081e1f379cf089f7700a2818db35faadc05.tar.gz
zig-ed2a5081e1f379cf089f7700a2818db35faadc05.zip
stage2: LLVM backend: implement switch_br
Diffstat (limited to 'src/codegen/llvm/bindings.zig')
-rw-r--r--src/codegen/llvm/bindings.zig6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/codegen/llvm/bindings.zig b/src/codegen/llvm/bindings.zig
index 1b7806d22a..c583d0cd00 100644
--- a/src/codegen/llvm/bindings.zig
+++ b/src/codegen/llvm/bindings.zig
@@ -178,6 +178,9 @@ pub const Value = opaque {
pub const setInitializer = LLVMSetInitializer;
extern fn LLVMSetInitializer(GlobalVar: *const Value, ConstantVal: *const Value) void;
+
+ pub const addCase = LLVMAddCase;
+ extern fn LLVMAddCase(Switch: *const Value, OnVal: *const Value, Dest: *const BasicBlock) void;
};
pub const Type = opaque {
@@ -554,6 +557,9 @@ pub const Builder = opaque {
pub const buildCondBr = LLVMBuildCondBr;
extern fn LLVMBuildCondBr(*const Builder, If: *const Value, Then: *const BasicBlock, Else: *const BasicBlock) *const Value;
+ pub const buildSwitch = LLVMBuildSwitch;
+ extern fn LLVMBuildSwitch(*const Builder, V: *const Value, Else: *const BasicBlock, NumCases: c_uint) *const Value;
+
pub const buildPhi = LLVMBuildPhi;
extern fn LLVMBuildPhi(*const Builder, Ty: *const Type, Name: [*:0]const u8) *const Value;