about summary refs log tree commit diff
path: root/src/rt/sync/rust_thread.cpp
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2013-09-27 03:31:13 -0700
committerbors <bors@rust-lang.org>2013-09-27 03:31:13 -0700
commitae8a2ff37976b069b24bd0558c7af3474dab5854 (patch)
tree4fee08276da05f00cb46c17f799e926ab596d89b /src/rt/sync/rust_thread.cpp
parentafbc242a20ec871dfeda84cf1412b34f756e9f7a (diff)
parentc3e4e068416438e91e3e9809ee8553a764d8e26e (diff)
downloadrust-ae8a2ff37976b069b24bd0558c7af3474dab5854.tar.gz
rust-ae8a2ff37976b069b24bd0558c7af3474dab5854.zip
auto merge of #9538 : thestinger/rust/type_use, r=pcwalton
This is broken, and results in poor performance due to the undefined
behaviour in the LLVM IR. LLVM's `mergefunc` is a *much* better way of
doing this since it merges based on the equality of the bytecode.

For example, consider `std::repr`. It generates different code per
type, but is not included in the type bounds of generics.

The `mergefunc` pass works for most of our code but currently hits an
assert on libstd. It is receiving attention upstream so it will be
ready soon, but I don't think removing this broken code should wait any
longer. I've opened #9536 about enabling it by default.

Closes #8651
Closes #3547
Closes #2537
Closes #6971
Closes #9222
Diffstat (limited to 'src/rt/sync/rust_thread.cpp')
0 files changed, 0 insertions, 0 deletions