Fixes #7377
global_heap: inline malloc_raw and add realloc_raw
vec: implement exchange vector reserve in Rust
global_heap: inline get_box_size and align_to
pass exchange_malloc an alignment, not a tydesc
librustc: back::link::sanitize support esacpe_utf8
librustc: apply changes of char::escape_unicode
auto merge of #7521 : thestinger/rust/vec, r=Aatch

continued from #7495
auto merge of #7443 : yjh0502/rust/fix_field_dup, r=huonw

Check if there is duplicated field names in struct.
auto merge of #7488 : yichoi/rust/sanitize_utf8, r=huonw

back::link::sanitize support escape_utf8
fix #7486
Turn on using LLVM threadsafely
auto merge of #7409 : alexcrichton/rust/threadsafe, r=cmr

@catamorphism, this re-enables threadsafe rustpkg tests, @brson this will fail unless the bots have LLVM rebuilt, so this is a good indicator of whether that happened or not.
Ignore all rusti tests. #7541
Ignore all rusti tests harder. #7541
debuginfo: Began refactoring of composite type handling.
debuginfo: Renamed *reference-to-* test cases to *borrowed-*
debuginfo: Removed some misleading comments from test cases.
debuginfo: Refactored vec slice code to use the new infrastructure. Added test cases for vec slices.
debuginfo: Refactoring of composite type info generation done.

There is no more StructContext now. Better support for boxed vectors in there too.
debuginfo: Replaced vec::mapi with iterator version.