Add rustup.sh to the repo

Just to have it somewhere to point to. Updating it will not
automatically update the one on static.rust-lang.org.
improve clone_from_slice performance
add intmax
Use the correct LLVM integer sizes

Use the integer sizes LLVM uses, rather than having random projections
laying around. Sizes are u64, Alignments are u32, C_*int is target-dependent
but 64-bit is fine (the int -> C_int conversion is non-precision-losing,
but it can be preceded by `as int` conversions which are, so it is
somewhat ugly. However, being able to suffix a `u` to properly infer
integer types is nice).
Add a compile-time error when oversized types are used

LLVM generates wrong code (which may be an instance of compile-time UB) when
faced with types that take lots of memory - bigger than the address space.
Make using such types a trans error. While trans errors are bad, overbig
types are expected to be very rare.
add some tests
response for review comments
prevent the creation of integers too big for the target architecture
improve the comments on integer overflow safety
fix stupid error
fix a failing test
Add assume intrinsic

Adds an `assume` intrinsic that gets translated to llvm.assume. It is
used on a boolean expression and allows the optimizer to assume that
the expression is true.

This implements #18051.
Improve documentation of assume intrinsic.
Unignore a few tests

Also, remove one that has an exact duplicate.
fix test patterns - should rebase the commits properly
libstd: Inline more methods on bitflags.

Servo really wants this.
Add tests for a few fixed issues
Check object lifetime bounds in coercions, not just trait bounds. Fixes #18055.
Fix ICE in overloaded call with incorrect arity

When an overloaded call expression has parameters but the function
object takes none, construct an array of formal argument types with
the arity of the call expression so that we don't fail by indexing out
of bounds later.

Closes #16939
Add regression test for issue #16939