diff options
| author | Graydon Hoare <graydon@mozilla.com> | 2010-11-14 13:41:10 -0800 |
|---|---|---|
| committer | Graydon Hoare <graydon@mozilla.com> | 2010-11-14 13:41:10 -0800 |
| commit | a352efadad7271798848c6ef4a22d8de7c8eba3a (patch) | |
| tree | 13e38ac987a13c1b5cf27d1c949275af68808c36 /src/comp/lib | |
| parent | 4cbef9d8a1f5d894325c252a70429116c24d5364 (diff) | |
| download | rust-a352efadad7271798848c6ef4a22d8de7c8eba3a.tar.gz rust-a352efadad7271798848c6ef4a22d8de7c8eba3a.zip | |
Switch upcall glues to fastcall as well.
Diffstat (limited to 'src/comp/lib')
| -rw-r--r-- | src/comp/lib/llvm.rs | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/comp/lib/llvm.rs b/src/comp/lib/llvm.rs index 0cd177a406d..da48c6b5d4d 100644 --- a/src/comp/lib/llvm.rs +++ b/src/comp/lib/llvm.rs @@ -1026,6 +1026,15 @@ obj builder(BuilderRef B) { _str.buf("")); } + fn FastCall(ValueRef Fn, vec[ValueRef] Args) -> ValueRef { + auto v = llvm.LLVMBuildCall(B, Fn, + _vec.buf[ValueRef](Args), + _vec.len[ValueRef](Args), + _str.buf("")); + llvm.LLVMSetInstructionCallConv(v, LLVMFastCallConv); + ret v; + } + fn Select(ValueRef If, ValueRef Then, ValueRef Else) -> ValueRef { ret llvm.LLVMBuildSelect(B, If, Then, Else, _str.buf("")); } |
