about summary refs log tree commit diff
path: root/src/rt/rust_task.cpp
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2013-06-15 12:58:06 -0700
committerbors <bors@rust-lang.org>2013-06-15 12:58:06 -0700
commit998e41a11a977413dcfc6716ab936ab9dcecb76d (patch)
tree4aea5cdb7caae8f1bc16fd2b47ad1b7715cb80eb /src/rt/rust_task.cpp
parenteac0200f18bfe19646ae5dce56acc325629224cb (diff)
parenta08d768cd8a44b3620ff3164b983400e3ee07fe5 (diff)
downloadrust-998e41a11a977413dcfc6716ab936ab9dcecb76d.tar.gz
rust-998e41a11a977413dcfc6716ab936ab9dcecb76d.zip
auto merge of #7154 : dotdash/rust/glue, r=graydon
Currently, when calling glue functions, we cast the function to match
the argument type. This interacts very badly with LLVM and breaks
inlining of the glue code.

It's more efficient to use a unified function type for the glue
functions and always cast the function argument instead of the function.

The resulting code for rustc is about 13% faster (measured up to and
including the "trans" pass) and the resulting librustc is about 5%
smaller.
Diffstat (limited to 'src/rt/rust_task.cpp')
0 files changed, 0 insertions, 0 deletions