about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorLines
2024-12-30chore: fix typosHoru-9/+9
2024-12-30Auto merge of #134670 - lqd:polonius-next-episode-4, r=jackh726bors-128/+498
Compute liveness constraints in location-sensitive polonius This continues the location-sensitive prototype. In this episode, we build the liveness constraints. Reminder of the approach we're taking: we need variance data to create liveness edges in the forward/backward/both directions (respectively in the cases of covariance, contravariance, invariance) in the localized constraint graph. This PR: - introduces the holder for that, and for the liveness data in the correct shape: the transpose of what we're using today, "live regions per points". - records use/drop live region variance during tracing - records regular live region variance at the end of liveness - records the correctly shaped live region per point matrix - uses all of the above to compute the liveness constraints (There's still technically one tiny part of the liveness owl left to do, but I'll leave it for a future PR: we also need to disable the NLL optimization that avoids computing liveness for locals whose types contain a region outliving a free region -- the existing constraints make it effectively live at all points; this doesn't work under polonius) r? `@jackh726` cc `@matthewjasper`
2024-12-29Auto merge of #134901 - matthiaskrgr:rollup-b0wwuht, r=matthiaskrgrbors-5/+48
Rollup of 4 pull requests Successful merges: - #134870 (Fix sentence fragment in `pin` module docs) - #134884 (Fix typos) - #134892 (Added codegen test for elidings bounds check when indexes are manually checked) - #134894 (Document how to run the split Docker pipelines) r? `@ghost` `@rustbot` modify labels: rollup
2024-12-29Rollup merge of #134894 - Kobzol:docker-ci-documentation, r=the8472Matthias Krüger-0/+6
Document how to run the split Docker pipelines r? `@the8472`
2024-12-29Rollup merge of #134892 - alex:codegen-55147, r=durin42Matthias Krüger-0/+37
Added codegen test for elidings bounds check when indexes are manually checked Closes #55147
2024-12-29Rollup merge of #134884 - calciumbe:patch1, r=jieyouxuMatthias Krüger-4/+4
Fix typos Hello, I fix some typos in docs and comments. Thank you very much.
2024-12-29Rollup merge of #134870 - geofft:patch-1, r=jhprattMatthias Krüger-1/+1
Fix sentence fragment in `pin` module docs Looks like this was inadvertently dropped in 8241ca60. Restore the words from before that commit.
2024-12-29Auto merge of #134765 - Noratrieb:linux-none-cant-unwind-silly, r=jieyouxubors-2/+8
Improve default target options for x86_64-unknown-linux-none Without a standard library, we cannot unwind, so it should be panic=abort by default. Additionally, it does not have std because while it is Linux, it cannot use libc, which std uses today for Linux. Using PIE by default may be surprising to users, as shown in #134763, so I've documented it explicitly. I'm not sure if we want to count that as fixing the issue or not. cc `@morr0ne,` as you added the target (and are the maintainer), and `@Noratrieb,` who reviewed that PR (:D).
2024-12-29address review commentsRémy Rakic-7/+24
- add a FIXME when looking for the region variance of unexpected regions - drive-by: fix a doc comment link - drive-by: simplify the variance match using exported variants instead
2024-12-29liveness constraints: draw the rest of the owlRémy Rakic-71/+180
2024-12-29finish filling polonius contextRémy Rakic-8/+40
transpose liveness matrix and record live regions at the end of MIR typeck
2024-12-29improve `bit_set` assertionRémy Rakic-1/+6
it missed the index and bounds info
2024-12-29record variance of regular live regionsRémy Rakic-3/+21
2024-12-29record variance of use/drop live regionsRémy Rakic-6/+12
records the variance of: - use live types - drop live generic args
2024-12-29add variance recordingRémy Rakic-0/+126
Following the Generalizer's structure, relating e.g. a type with itself will allow tracking the variance wrt the contained regions.
2024-12-29introduce polonius contextRémy Rakic-47/+104
This context struct will hold data to help creating localized constraints: - the live regions, with the shape matching a CFG walk, indexed per point - the variance of these live regions, represented as the direction we'll add the appropriate We also add this structure to the mir typeck to record liveness data, and make it responsible for localized constraint creation.
2024-12-29Document x86_64-unknown-linux-none is PIE by defaultNoratrieb-0/+5
2024-12-29Document how to run the split Docker pipelinesJakub Beránek-0/+6
2024-12-29Auto merge of #134891 - dxsullivan:fix-typo, r=GuillaumeGomezbors-4/+4
docs: fix typos Fix typos in docs. Thank you.
2024-12-29Added codegen test for elidings bounds check when indexes are manually checkedAlex Gaynor-0/+37
Closes #55147
2024-12-29docs: fix typosdxsullivan-4/+4
2024-12-29fix: typoscalciumbe-4/+4
Signed-off-by: calciumbe <192480234+calciumbe@users.noreply.github.com>
2024-12-29Auto merge of #134887 - Zalathar:rollup-ghpz7oy, r=Zalatharbors-123/+142
Rollup of 5 pull requests Successful merges: - #134799 (nits: Cleanups in `librustdoc::clean`) - #134851 (docs: inline `alloc::ffi::c_str` types to `alloc::ffi`) - #134869 (Bump compiler cc) - #134876 (bootstrap: Consolidate the macros for declaring compiletest test suites) - #134883 (bootstrap: Fix `./x check bootstrap` by moving `shared_helpers::tests`) r? `@ghost` `@rustbot` modify labels: rollup
2024-12-29Rollup merge of #134883 - Zalathar:shared-helpers, r=clubby789Stuart Cook-3/+14
bootstrap: Fix `./x check bootstrap` by moving `shared_helpers::tests` Running `./x check bootstrap` currently doesn't work, because it builds the bootstrap shim binaries with `cfg(test)`, and those binaries can't find a `tests` submodule when they include `shared_helpers.rs` via `#[path]`. This PR fixes that by taking the tests module and moving it to `super::tests::shared_helpers_tests` instead. (The extra `tests` submodule prevents tidy from complaining about unit tests that aren't in a dedicated tests module.) --- It would be nice to also run `./x check bootstrap compiletest` in CI, so that this and #134848 don't regress, but I didn't want to bundle that change with this fix.
2024-12-29Rollup merge of #134876 - Zalathar:bootstrap-test-macros, r=jieyouxuStuart Cook-103/+113
bootstrap: Consolidate the macros for declaring compiletest test suites Instead of using a dizzying assortment of different macros to declare these test suite steps, we can mostly just use one `test!` macro with a few optional named arguments. I'm pretty sure that this doesn't change any behaviour, but please do double-check each of the individual declarations.
2024-12-29Rollup merge of #134869 - clubby789:cc-bump, r=jieyouxuStuart Cook-4/+4
Bump compiler cc Fixes #134657 Pulls in https://github.com/rust-lang/cc-rs/pull/1330 try-job: x86_64-msvc
2024-12-29Rollup merge of #134851 - lukas-code:alloc-ffi, r=tgross35Stuart Cook-1/+1
docs: inline `alloc::ffi::c_str` types to `alloc::ffi` like https://github.com/rust-lang/rust/pull/134791 but for `alloc` r? ``@tgross35`` ``@notriddle``
2024-12-29Rollup merge of #134799 - poliorcetics:ab/push-xuxotrnrtysz, r=GuillaumeGomezStuart Cook-12/+10
nits: Cleanups in `librustdoc::clean` r? ````@GuillaumeGomez````
2024-12-29Auto merge of #134650 - onur-ozkan:clean-up-fixmes, r=Kobzolbors-14/+9
Clean up some FIXME notes on bootstrap Fixing and removing some FIXME notes.
2024-12-29Fix `./x check bootstrap` by moving `shared_helpers::tests`Zalathar-3/+14
2024-12-29Auto merge of #134627 - estebank:issue-133252, r=jackh726bors-3/+47
Avoid ICE in borrowck Provide a fallback in `best_blame_constraint` when `find_constraint_paths_between_regions` doesn't have a result. This code is due a rework to avoid the letf-over `unwrap()`, but avoids the ICE caused by the repro. Fix #133252.
2024-12-29Allow macro-declared test steps to have docstrings and attributesZalathar-21/+32
2024-12-29Consolidate the macros for declaring compiletest suitesZalathar-82/+81
2024-12-28Fix sentence fragment in `pin` module docsGeoffrey Thomas-1/+1
Looks like this was inadvertently dropped in 8241ca60. Restore the words from before that commit.
2024-12-29Auto merge of #134867 - rust-lang:cargo_update, r=clubby789bors-65/+65
Weekly `cargo update` Automation to keep dependencies in `Cargo.lock` current. The following is the output from `cargo update`: ```txt compiler & tools dependencies: Locking 8 packages to latest compatible versions Updating anyhow v1.0.94 -> v1.0.95 Updating glob v0.3.1 -> v0.3.2 Updating quote v1.0.37 -> v1.0.38 Updating rustversion v1.0.18 -> v1.0.19 Updating serde v1.0.216 -> v1.0.217 Updating serde_derive v1.0.216 -> v1.0.217 Updating syn v2.0.90 -> v2.0.93 Updating unicase v2.8.0 -> v2.8.1 note: pass `--verbose` to see 36 unchanged dependencies behind latest library dependencies: Locking 0 packages to latest compatible versions note: pass `--verbose` to see 5 unchanged dependencies behind latest rustbook dependencies: Locking 7 packages to latest compatible versions Updating anyhow v1.0.94 -> v1.0.95 Updating cc v1.2.5 -> v1.2.6 Updating quote v1.0.37 -> v1.0.38 Updating serde v1.0.216 -> v1.0.217 Updating serde_derive v1.0.216 -> v1.0.217 Updating syn v2.0.90 -> v2.0.93 Updating unicase v2.8.0 -> v2.8.1 ```
2024-12-29Auto merge of #134864 - Zalathar:rollup-suc8ay9, r=Zalatharbors-28/+31
Rollup of 3 pull requests Successful merges: - #134849 (compiletest: Slightly simplify the handling of debugger directive prefixes) - #134850 (Document virality of `feature(rustc_private)`) - #134852 (Added a codegen test for optimization with const arrays) r? `@ghost` `@rustbot` modify labels: rollup
2024-12-29Bump compiler ccclubby789-4/+4
2024-12-29cargo updategithub-actions-65/+65
compiler & tools dependencies: Locking 8 packages to latest compatible versions Updating anyhow v1.0.94 -> v1.0.95 Updating glob v0.3.1 -> v0.3.2 Updating quote v1.0.37 -> v1.0.38 Updating rustversion v1.0.18 -> v1.0.19 Updating serde v1.0.216 -> v1.0.217 Updating serde_derive v1.0.216 -> v1.0.217 Updating syn v2.0.90 -> v2.0.93 Updating unicase v2.8.0 -> v2.8.1 note: pass `--verbose` to see 36 unchanged dependencies behind latest library dependencies: Locking 0 packages to latest compatible versions note: pass `--verbose` to see 5 unchanged dependencies behind latest rustbook dependencies: Locking 7 packages to latest compatible versions Updating anyhow v1.0.94 -> v1.0.95 Updating cc v1.2.5 -> v1.2.6 Updating quote v1.0.37 -> v1.0.38 Updating serde v1.0.216 -> v1.0.217 Updating serde_derive v1.0.216 -> v1.0.217 Updating syn v2.0.90 -> v2.0.93 Updating unicase v2.8.0 -> v2.8.1
2024-12-29Rollup merge of #134852 - alex:patch-1, r=durin42Stuart Cook-0/+15
Added a codegen test for optimization with const arrays Closes #107208
2024-12-29Rollup merge of #134850 - tamird:rustc-private-book-update, r=bjorn3Stuart Cook-2/+5
Document virality of `feature(rustc_private)` Closes #134825. r? `@bjorn3`
2024-12-29Rollup merge of #134849 - Zalathar:debuginfo-prefixes, r=lqd,clubby789,jieyouxuStuart Cook-26/+11
compiletest: Slightly simplify the handling of debugger directive prefixes The `cdbg-` prefix is not used by any tests in `tests/debuginfo`, and perhaps there never were any tests that used it. Getting rid of it also lets us get rid of the code for parsing multiple prefixes at the same time, since every debugger now has exactly one prefix.
2024-12-28nits: librustdoc::cleanAlexis (Poliorcetics) Bourget-12/+10
- librustdoc::clean::clean_lifetime doesn't need a mut doc context - librustdoc::clean::normalize doesn't need a mut doc context - move Some() wrapping up into `clean_predicate()` - simplify nested if in librustdoc::clean::record_extern_fqn()
2024-12-28Auto merge of #134848 - Zalathar:check-compiletest, r=jieyouxubors-0/+4
bootstrap: Allow `./x check compiletest` Did you know that bootstrap didn't support `./x check compiletest`? Well, now it does! Manually add `"compiletest"` to your `rust-analyzer.check.overrideCommand` check command to get error/warning integration when modifying compiletest.
2024-12-28Added a codegen test for optimization with const arraysAlex Gaynor-0/+15
Closes #107208
2024-12-28Auto merge of #134845 - jieyouxu:temp-drop-warning, r=onur-ozkanbors-13/+4
bootstrap: drop warning for top-level test suite path check due to false positives The current top-level test suite directory does not exist warning logic doesn't quite handle the more exotic path suffix matches that test filters seem to accept (e.g. `library/test` can be matched with `--exclude test`), so avoid warning on non-existent top-level test suites for now. To avoid false positives, we probably need to query test `Step`s for their `should_run(exclude_filter)` logic. This retains the fix for the Windows path handling (unlike #134843). r? `@onur-ozkan`
2024-12-28Document virality of `feature(rustc_private)`Tamir Duberstein-2/+5
Since 9cb1998ea15e179482504e07cad8fa121e169a32 this feature is viral.
2024-12-28Auto merge of #134790 - onur-ozkan:cfg-test, r=clubby789bors-22/+19
replace bootstrap-self-test feature flag with cfg(test) This makes it in more rusty way.
2024-12-28docs: inline `alloc::ffi::c_str` types to `alloc::ffi`Lukas Markeffsky-1/+1
2024-12-28Auto merge of #134547 - SUPERCILEX:unify-copy, r=thomccbors-24/+70
Unify fs::copy and io::copy on Linux Currently, `fs::copy` first tries a regular file copy (via copy_file_range) and then falls back to userspace read/write copying. We should use `io::copy` instead as it tries copy_file_range, sendfile, and splice before falling back to userspace copying. This was discovered here: https://github.com/SUPERCILEX/fuc/issues/40 Perf impact: `fs::copy` will now have two additional statx calls to decide which syscall to use. I wonder if we should get rid of the statx calls and only continue down the next fallback when the relevant syscalls say the FD isn't supported.
2024-12-29Simplify `DebuggerCommands::parse_from` to only take one prefixZalathar-20/+11