rustdoc: Set a nonzero exit status on failure

Now that rustdoc is spawning a child task, the program won't exit with a default
error code if the main task fails (because it never fails). This commit forces
the main task to wait for a child task in order to correctly propagate failure.

Closes #16341
Implement Win64 system ABI.
Adding test for issue #15917 which was previously fixed with #15709
libcore: Fix documentation comment for f32.
don't translate items when monomorphizing foreign-ABI functions
Make small doc contributions less onerous/intimidating
mk: Don't emit landing pads in stage 0.

Reduces time to build stage0 from 11:30 to 9:40 on my machine.
librustc: Don't use the same alloca for match binding which we reassign to in arm body.
librustc: Also use new alloca if matching on an arg or upvar which we reassign in the arm body.
librustc: Encode upvar_borrow_map in metadata.
auto merge of #16342 : alexcrichton/rust/issue-16341, r=huonw

Now that rustdoc is spawning a child task, the program won't exit with a default
error code if the main task fails (because it never fails). This commit forces
the main task to wait for a child task in order to correctly propagate failure.

Closes #16341
auto merge of #16346 : vadimcn/rust/win64-cabi, r=brson

This fixes
run-pass/extern-pass-TwoU64s.rs
run-pass/extern-pass-empty.rs
run-pass/extern-return-TwoU64s.rs
auto merge of #16350 : hirschenberger/rust/issue-15917, r=alexcrichton

Adding test for issue #15917 which was previously fixed with #15709
removing 'str'='struct' search synonym

fixes #16384
rustdoc: use raw search in URL

fixes #16385
fixes #16271
auto merge of #16356 : ruud-v-a/rust/fix-f32-doc, r=steveklabnik

On a side note (but maybe this is not the right place to ask), the name `Float::two_pi` is inconsistent with `f32::consts::PI_2`.
auto merge of #16359 : epdtry/rust/mono-item-dedup-foreign, r=alexcrichton

Extend the changes from #16059 to the new generic foreign functions introduced by #15831.
auto merge of #16371 : Gankro/rust/friendly-contrib, r=brson

Had someone experience deep existential dread over building all of Rust on Windows just to do some minor fixes to the docs. This seems entirely unnecessary between reviewers + Bors for most purely english changes.
Fix typo
auto merge of #16373 : brson/rust/nopads, r=pcwalton

Reduces time to build stage0 from 11:30 to 9:40 on my machine.

There's a tradeoff here since doing this will make the stage1 compile-fail tests fail.

r? @pcwalton