about summary refs log tree commit diff
path: root/src/rt/rust_kernel.cpp
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2013-02-16 13:03:25 -0800
committerbors <bors@rust-lang.org>2013-02-16 13:03:25 -0800
commit8d8c25b825f109c9ae33ff0e52a061b62ae9f434 (patch)
treef63a9b0d37d893b9c7fad11697e3679c4a1d92bf /src/rt/rust_kernel.cpp
parent65aa2594c00ed319ae0f3ba5dfbf4613a0274872 (diff)
parent548c0982cabe12fba5ee106e542f615f750af6e6 (diff)
downloadrust-8d8c25b825f109c9ae33ff0e52a061b62ae9f434.tar.gz
rust-8d8c25b825f109c9ae33ff0e52a061b62ae9f434.zip
auto merge of #4980 : pcwalton/rust/sizing-type-of, r=pcwalton
...locking-servo

`simplify_type` was bogus, as there was no way for it to handle enums
properly. It was also slow, because it created many Rust types at runtime. In
general creating Rust types during trans is a source of slowness, and I'd like
to avoid doing it as much as possible. (It is probably not possible to
eliminate it entirely, due to `subst`, but we should get rid of as much of it
as we can.) So this patch replaces `simplify_type` with `sizing_type_of`,
which creates a size-equivalent LLVM type directly without going through a
Rust type first.

Because this is causing an ICE in Servo, I'm rubber stamping it.
Diffstat (limited to 'src/rt/rust_kernel.cpp')
0 files changed, 0 insertions, 0 deletions