diff options
| author | Graydon Hoare <[email protected]> | 2010-11-24 16:55:45 -0800 |
|---|---|---|
| committer | Graydon Hoare <[email protected]> | 2010-11-24 16:56:01 -0800 |
| commit | f809375b163bb108d9193f456f44ca663874380b (patch) | |
| tree | a69731ced25908781c280ef893c073d534edea9f /src/comp/lib | |
| parent | move expr_call translation into helper function. (diff) | |
| download | rust-f809375b163bb108d9193f456f44ca663874380b.tar.xz rust-f809375b163bb108d9193f456f44ca663874380b.zip | |
Sketch out type-directed structural drop and copy, including vector types.
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), |