| Age | Commit message (Collapse) | Author | Lines |
|
|
|
Remove special case for *ios* builds in run-make-fulldeps/print-target-list Makefile
Previous `TODO` comment in this file mentions [an issue that was closed](https://github.com/rust-lang/rust/issues/29812), and I was able to confirm locally that provided code in that issue no longer produces an ICE. Discussion on that issue seems to indicate this code was no longer needed as of 1.12.0.
I removed the `*ios*` branch from this `case` statement as it may cause confusion, then removed the case statement entirely as it only had a wildcard branch.
|
|
Didn't think it was this particular about things, but I also should
have tested locally.
It makes sense, though---`\` followed by LF would eat it, so we'd have
`sysroot done` instead of `sysroot; done` as it is parsed. This should
pass now.
Signed-off-by: Kristofer Rye <kristofer.rye@gmail.com>
Tested-by: Kristofer Rye <kristofer.rye@gmail.com>
|
|
Since this case statement no longer has any branches, remove it.
Signed-off-by: Kristofer Rye <kristofer.rye@gmail.com>
|
|
Based on the TODO, this case was added to short-circuit for ios builds,
which is no longer necessary.
The comment in this Makefile mentions rust-lang/rust#29812 as a
dependency, but that issue has been since closed, with a statement that
the ICE of concern was resolved circa 1.12.
Here we remove this case, and just run the same branch for all targets.
Signed-off-by: Kristofer Rye <kristofer.rye@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
Rename `RUST_LOG` to `RUSTC_LOG`
cc: #57985
I think we should also change these submodules:
- rustc-guide
- Cargo (rename to `CARGO_LOG`, cc: https://github.com/rust-lang/cargo/pull/6605, https://github.com/rust-lang/cargo/issues/6189)
- miri
- rls
- rustfmt
r? @davidtwco
|
|
Emit metadata files earlier
This will make cargo pipelining much more effective.
|
|
|
|
|
|
This commit separates metadata encoding (`tcx.encode_metadata`) from the
creation of the metadata module (which is now handled by
`write_compressed_metadata`, formerly `write_metadata`).
The metadata encoding now occurs slightly earlier in the pipeline, at
the very start of code generation within `start_codegen`.
Metadata *writing* still occurs near the end of compilation; that will
be moved forward in subsequent commits.
|
|
|
|
the compiler during optimizations.
|
|
|
|
Add codegen test for PGO instrumentation.
This PR adds a codegen test that makes sure that LLVM actually generates instrumentation code when we enable PGO instrumentation in `rustc`.
The second commit updates a test case to the new commandline option syntax introduced in #59874. Without the fix the test still works, but it confusingly creates a directory called `test.profraw`, which usually is the name of the _file_ where profiling data is collected.
|
|
|
|
Disallow double trailing newlines in tidy
This wasn't done previously in https://github.com/rust-lang/rust/pull/47064#issuecomment-354533010 as it affected too many files, but I think it's best to fix it now so that the number of files with double trailing newlines doesn't keep increasing.
r? kennytm
|
|
upgrade rustdoc's pulldown-cmark to 0.4.1
Fixes #59194.
|
|
|
|
|
|
|
|
up some run-make tests.
|
|
make things clearer.
|
|
|
|
Rollup of 6 pull requests
Successful merges:
- #59776 (Apply resource-suffix to search-index and source-files scripts as well)
- #59784 (Suggest importing macros from the crate root)
- #59812 (Exclude profiler-generated symbols from MSVC __imp_-symbol workaround.)
- #59874 (Clean up handling of `-Z pgo-gen` commandline option.)
- #59890 (Don't generate empty json variables)
- #59911 (Revert "compile crates under test w/ -Zemit-stack-sizes")
Failed merges:
r? @ghost
|
|
Clean up handling of `-Z pgo-gen` commandline option.
This PR adapts the `-Z pgo-gen` flag to how Clang and GCC handle the corresponding `-fprofile-generate` flag. In particular, the flag now optionally takes a directory to place the profiling data in and allows to omit the argument (instead of having to pass an empty string).
|
|
Stabilize the `alloc` crate.
This implements RFC 2480:
* https://github.com/rust-lang/rfcs/pull/2480
* https://github.com/rust-lang/rfcs/blob/master/text/2480-liballoc.md
Closes https://github.com/rust-lang/rust/issues/27783
|
|
This implements RFC 2480:
* https://github.com/rust-lang/rfcs/pull/2480
* https://github.com/rust-lang/rfcs/blob/master/text/2480-liballoc.md
Closes https://github.com/rust-lang/rust/issues/27783
|
|
|
|
|
|
|
|
ffi: rename VaList::copy to VaList::with_copy
Rename `VaList::copy` to `VaList::with_copy`
r? @joshtriplett
|
|
Rename `VaList::copy` to `VaList::with_copy`.
|
|
|
|
Keep last redundant linker flag, not first
When a library (L1) is passed to the linker multiple times, this is sometimes purposeful: there might be several other libraries in the linker command (L2 and L3) that all depend on L1. You'd end up with a (simplified) linker command that looks like:
```
-l2 -l1 -l3 -l1
```
With the previous behavior, when rustc encountered a redundant library, it would keep the first instance, and remove the later ones, resulting in:
```
-l2 -l1 -l3
```
This can cause a linker error, because on some platforms (e.g. Linux), the linker will only include symbols from L1 that are needed *at the point it's referenced in the command line*. So if L3 depends on additional symbols from L1, which aren't needed by L2, the linker won't know to include them, and you'll end up with "undefined symbols" errors.
A better behavior is to keep the *last* instance of the library:
```
-l2 -l3 -l1
```
This ensures that all "downstream" libraries have been included in the linker command before the "upstream" library is referenced.
Fixes rust-lang#47989
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Add support for defining C compatible variadic functions in unsafe rust
with extern "C".
|