diff options
Diffstat (limited to 'src/comp/lib')
| -rw-r--r-- | src/comp/lib/llvm.rs | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/comp/lib/llvm.rs b/src/comp/lib/llvm.rs index da48c6b5..0db40e89 100644 --- a/src/comp/lib/llvm.rs +++ b/src/comp/lib/llvm.rs @@ -1019,6 +1019,16 @@ obj builder(BuilderRef B) { ret phi; } + fn AddIncomingToPhi(ValueRef phi, + vec[ValueRef] vals, + vec[BasicBlockRef] bbs) { + check (_vec.len[ValueRef](vals) == _vec.len[BasicBlockRef](bbs)); + llvm.LLVMAddIncoming(phi, + _vec.buf[ValueRef](vals), + _vec.buf[BasicBlockRef](bbs), + _vec.len[ValueRef](vals)); + } + fn Call(ValueRef Fn, vec[ValueRef] Args) -> ValueRef { ret llvm.LLVMBuildCall(B, Fn, _vec.buf[ValueRef](Args), |