Use more precise span when reporting semicolon hint

When reporting "consider removing this semicolon" hint message, the
offending semicolon may come from macro call site instead of macro
itself. Using the more appropriate span makes the hint more helpful.

Closes #13428.
mk: Pass exact compile to rustc on cross compiles

Instead of passing through CC which may have things like ccache and other
arguments (when using clang) this commit filters out the necessary arguments
from CC to pass the right linker to rustc.

Closes #13562
Added run_flags directive to `compiletest`

Now it is possible to specify run-flags in tests. For example, by using `run-flags: --bench` the Bencher is run.
shootout-threadring rewrite

* simplify the code
* remove trace to satisfy official shootout test
* use libgreen to improve performances
auto merge of #13553 : aochagavia/rust/pr, r=alexcrichton

Now it is possible to specify run-flags in tests. For example, by using `run-flags: --bench` the Bencher is run.
auto merge of #13656 : TeXitoi/rust/shootout-threadring-rewrite, r=alexcrichton

* simplify the code
* remove trace to satisfy official shootout test
* use libgreen to improve performances
auto merge of #13631 : alexcrichton/rust/fix-mk-cross, r=brson

Instead of passing through CC which may have things like ccache and other
arguments (when using clang) this commit filters out the necessary arguments
from CC to pass the right linker to rustc.

Closes #13562
auto merge of #13435 : edwardw/rust/span, r=brson

When reporting "consider removing this semicolon" hint message, the
offending semicolon may come from macro call site instead of macro
itself. Using the more appropriate span makes the hint more helpful.

Closes #13428.