Fix SIMD bit shifts
stop making visit glue for closures and traits
Allow empty functional updating of structs

Fixes #8972
use a more efficient vtable representation

[TyDesc, ... methods] -> [destructor, ... methods]
Add test for issue 6157
Upgrade LLVM

This upgrade brings commit by @eddyb to help optimizations of virtual calls in
a few places (https://github.com/llvm-mirror/llvm/commit/6d2bd95) as well as a
commit by @c-a to *greatly* improve the runtime of the optimization passes
(https://github.com/rust-lang/llvm/pull/3).

Nice work to these guys!
auto merge of #11853 : alexcrichton/rust/up-llvm, r=brson

This upgrade brings commit by @eddyb to help optimizations of virtual calls in
a few places (https://github.com/llvm-mirror/llvm/commit/6d2bd95) as well as a
commit by @c-a to *greatly* improve the runtime of the optimization passes
(https://github.com/rust-lang/llvm/pull/3).

Nice work to these guys!
auto merge of #11907 : sanxiyn/rust/simd-shift, r=thestinger

For the purpose of deciding whether to truncate or extend the right hand side of bit shifts, use the size of the element type for SIMD vector types.

Fix #11900.
auto merge of #11909 : thestinger/rust/tydesc, r=pcwalton
auto merge of #11911 : kballard/rust/empty-functional-update, r=pcwalton

Fixes #8972
auto merge of #11914 : FlaPer87/rust/issue-6157, r=alexcrichton

closes #6157
Implement default type parameters in generics.