about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorRafael Ávila de Espíndola <respindola@mozilla.com>2011-03-21 15:15:08 -0400
committerRafael Ávila de Espíndola <respindola@mozilla.com>2011-03-21 15:15:22 -0400
commit12e7feb71ce1f99ccef425b55295e32027ea69ff (patch)
tree52d3c92ca0bf15f6b5122fb0e3db9e9efd92d296 /src
parentb9bde9fcfa40f06f51072fa97b2e858044498527 (diff)
downloadrust-12e7feb71ce1f99ccef425b55295e32027ea69ff.tar.gz
rust-12e7feb71ce1f99ccef425b55295e32027ea69ff.zip
The T_taskptr is already included in the n_args, don't add it twice.
Diffstat (limited to 'src')
-rw-r--r--src/comp/middle/trans.rs8
1 files changed, 3 insertions, 5 deletions
diff --git a/src/comp/middle/trans.rs b/src/comp/middle/trans.rs
index 420c919e5d1..40ce28964b3 100644
--- a/src/comp/middle/trans.rs
+++ b/src/comp/middle/trans.rs
@@ -841,13 +841,11 @@ fn decl_upcall_glue(ModuleRef llmod, type_names tn, uint _n) -> ValueRef {
 }
 
 fn get_upcall(&hashmap[str, ValueRef] upcalls,
-              type_names tn, ModuleRef llmod,
-              str name, int n_args) -> ValueRef {
+              ModuleRef llmod, str name, int n_args) -> ValueRef {
     if (upcalls.contains_key(name)) {
         ret upcalls.get(name);
     }
-    auto inputs = vec(T_taskptr(tn));
-    inputs += _vec.init_elt[TypeRef](T_int(), n_args as uint);
+    auto inputs = _vec.init_elt[TypeRef](T_int(), n_args as uint);
     auto output = T_int();
     auto f = decl_cdecl_fn(llmod, name, T_fn(inputs, output));
     upcalls.insert(name, f);
@@ -868,7 +866,7 @@ fn trans_upcall2(builder b, @glue_fns glues,
                  type_names tn, ModuleRef llmod, str name,
                  vec[ValueRef] args) -> ValueRef {
     let int n = (_vec.len[ValueRef](args) as int);
-    let ValueRef llupcall = get_upcall(upcalls, tn, llmod, name, n);
+    let ValueRef llupcall = get_upcall(upcalls, llmod, name, n);
     llupcall = llvm.LLVMConstPointerCast(llupcall, T_int());
 
     let ValueRef llglue = glues.upcall_glues.(n);