Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update Miri #110953

Closed
wants to merge 54 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
2c45553
Auto merge of #2835 - saethlin:rustup, r=oli-obk
bors Apr 10, 2023
3bc5dab
Add shim for SIGRTMIN
LegNeato Apr 11, 2023
df36499
Update tests/pass-dep/shims/libc-misc.rs
LegNeato Apr 11, 2023
93a0575
Auto merge of #2837 - LegNeato:sigrtmin, r=saethlin
bors Apr 11, 2023
42cce32
throw unsupported for epoll_wait
DebugSteven Apr 11, 2023
9311b4a
filter out notes
DebugSteven Apr 11, 2023
dedac2d
Auto merge of #2838 - DebugSteven:disable-epoll_wait, r=oli-obk
bors Apr 11, 2023
aacd261
add memcpy/strcpy shims
kiscad Apr 11, 2023
7e37783
typo
RalfJung Apr 12, 2023
fa8e02f
Auto merge of #2827 - mojave2:memcpy, r=oli-obk
bors Apr 12, 2023
69b023f
compiletest: complain about unknown flags
RalfJung Apr 13, 2023
6c8cf4e
Update to new ui_test crate
oli-obk Apr 6, 2023
b4ea414
Auto merge of #2841 - RalfJung:compiletest, r=oli-obk
bors Apr 13, 2023
ffb0dd9
Auto merge of #2833 - oli-obk:ui_test_bump, r=RalfJung
bors Apr 13, 2023
2386cd7
Preparing for merge from rustc
RalfJung Apr 14, 2023
06707ab
Merge from rustc
RalfJung Apr 14, 2023
8a9e03a
add test for recent unwind UB issue
RalfJung Apr 14, 2023
cf6b862
Auto merge of #2842 - RalfJung:rustup, r=RalfJung
bors Apr 14, 2023
49be529
Fix spelling
jsoref Apr 13, 2023
cd53a43
Auto merge of #2843 - jsoref:spelling, r=RalfJung
bors Apr 14, 2023
81e7b34
Preparing for merge from rustc
oli-obk Apr 17, 2023
b1e74f4
Merge from rustc
oli-obk Apr 17, 2023
9635312
Auto merge of #2845 - oli-obk:rustup, r=oli-obk
bors Apr 17, 2023
8a40ff9
Remove a test that wasn't carrying its weight
oli-obk Apr 19, 2023
f0c207f
Auto merge of #2846 - oli-obk:rm_borked_test, r=RalfJung
bors Apr 19, 2023
28f6297
disable preemption in tokio tests again
RalfJung Apr 21, 2023
2b066a3
Auto merge of #2848 - RalfJung:tokio, r=RalfJung
bors Apr 21, 2023
0d6736e
Preparing for merge from rustc
RalfJung Apr 22, 2023
cf32558
Merge from rustc
RalfJung Apr 22, 2023
213c905
Auto merge of #2849 - RalfJung:rustup, r=RalfJung
bors Apr 22, 2023
26e299c
Preparing for merge from rustc
RalfJung Apr 24, 2023
96abae2
Merge from rustc
RalfJung Apr 24, 2023
84b778f
Auto merge of #2850 - RalfJung:rustup, r=RalfJung
bors Apr 24, 2023
f3fe399
Add minimum alignment support for loongarch64
heiher Apr 24, 2023
fe0f490
Auto merge of #2852 - loongarch-rs:master, r=RalfJung
bors Apr 24, 2023
08eda2d
Hide backtrace from stderr files
oli-obk Apr 24, 2023
1fc010e
Auto merge of #2854 - oli-obk:filter_backtrace, r=oli-obk
bors Apr 25, 2023
9f16191
Preparing for merge from rustc
RalfJung Apr 26, 2023
44a31b8
Merge from rustc
RalfJung Apr 26, 2023
e238bc8
tree borrows: test String::as_mut_ptr
RalfJung Apr 26, 2023
2ab3b85
fmt
RalfJung Apr 26, 2023
092094c
port stacked borrows tests to tree borrows
RalfJung Apr 26, 2023
d0cff24
Auto merge of #2856 - RalfJung:rustup, r=RalfJung
bors Apr 26, 2023
d560ed2
fix endianess handling in eventfd::write
RalfJung Apr 26, 2023
e4a085f
Auto merge of #2857 - RalfJung:endian, r=RalfJung
bors Apr 26, 2023
f7dddf6
Bump libffi-sys to 2.3.0
heiher Apr 27, 2023
4b2569c
Auto merge of #2858 - loongarch-rs:bump-libffi-sys, r=RalfJung
bors Apr 27, 2023
4b04370
Tree Borrows: improved diagnostics
Vanille-N Mar 29, 2023
0a2d38e
tweak wording
RalfJung Apr 28, 2023
d72a494
Auto merge of #2828 - Vanille-N:tb-diags, r=RalfJung
bors Apr 28, 2023
95efa48
Preparing for merge from rustc
RalfJung Apr 28, 2023
bf0f0de
Merge from rustc
RalfJung Apr 28, 2023
fb306a2
Auto merge of #2860 - RalfJung:rustup, r=RalfJung
bors Apr 28, 2023
33f4d92
update lockfile, with newer libffi-sys
RalfJung Apr 28, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 6 additions & 4 deletions Cargo.lock
Original file line number Diff line number Diff line change
Expand Up @@ -1956,9 +1956,9 @@ dependencies = [

[[package]]
name = "libffi-sys"
version = "2.2.1"
version = "2.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dc65067b78c0fc069771e8b9a9e02df71e08858bec92c1f101377c67b9dca7c7"
checksum = "f36115160c57e8529781b4183c2bb51fdc1f6d6d1ed345591d84be7703befb3c"
dependencies = [
"cc",
]
Expand Down Expand Up @@ -5097,11 +5097,12 @@ checksum = "9e79c4d996edb816c91e4308506774452e55e95c3c9de07b6729e17e15a5ef81"

[[package]]
name = "ui_test"
version = "0.5.0"
version = "0.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "54ddb6f31025943e2f9d59237f433711c461a43d9415974c3eb3a4902edc1c1f"
checksum = "3e10f5f88ce8c331a388deda1e6e2bd533c73ca89cc5f539a3df02ed35c8efba"
dependencies = [
"bstr 1.3.0",
"cargo-platform",
"cargo_metadata 0.15.3",
"color-eyre",
"colored",
Expand All @@ -5110,6 +5111,7 @@ dependencies = [
"lazy_static",
"regex",
"rustc_version",
"rustfix",
"serde",
"serde_json",
"tempfile",
Expand Down
28 changes: 24 additions & 4 deletions src/tools/miri/Cargo.lock
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,12 @@ dependencies = [
"memchr",
]

[[package]]
name = "anyhow"
version = "1.0.70"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7de8ce5e0f9f8d88245311066a578d72b7af3e7088f32783804676302df237e4"

[[package]]
name = "atty"
version = "0.2.14"
Expand Down Expand Up @@ -292,9 +298,9 @@ dependencies = [

[[package]]
name = "libffi-sys"
version = "2.2.1"
version = "2.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dc65067b78c0fc069771e8b9a9e02df71e08858bec92c1f101377c67b9dca7c7"
checksum = "f36115160c57e8529781b4183c2bb51fdc1f6d6d1ed345591d84be7703befb3c"
dependencies = [
"cc",
]
Expand Down Expand Up @@ -570,6 +576,18 @@ dependencies = [
"semver",
]

[[package]]
name = "rustfix"
version = "0.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ecd2853d9e26988467753bd9912c3a126f642d05d229a4b53f5752ee36c56481"
dependencies = [
"anyhow",
"log",
"serde",
"serde_json",
]

[[package]]
name = "ryu"
version = "1.0.12"
Expand Down Expand Up @@ -744,11 +762,12 @@ dependencies = [

[[package]]
name = "ui_test"
version = "0.5.0"
version = "0.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "54ddb6f31025943e2f9d59237f433711c461a43d9415974c3eb3a4902edc1c1f"
checksum = "3e10f5f88ce8c331a388deda1e6e2bd533c73ca89cc5f539a3df02ed35c8efba"
dependencies = [
"bstr",
"cargo-platform",
"cargo_metadata",
"color-eyre",
"colored",
Expand All @@ -757,6 +776,7 @@ dependencies = [
"lazy_static",
"regex",
"rustc_version",
"rustfix",
"serde",
"serde_json",
"tempfile",
Expand Down
2 changes: 1 addition & 1 deletion src/tools/miri/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ libloading = "0.7"

[dev-dependencies]
colored = "2"
ui_test = "0.5"
ui_test = "0.6.2"
rustc_version = "0.4"
# Features chosen to match those required by env_logger, to avoid rebuilds
regex = { version = "1.5.5", default-features = false, features = ["perf", "std"] }
Expand Down
2 changes: 1 addition & 1 deletion src/tools/miri/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -407,7 +407,7 @@ to Miri failing to detect cases of undefined behavior in a program.
* `-Zmiri-retag-fields=<all|none|scalar>` controls when Stacked Borrows retagging recurses into
fields. `all` means it always recurses (like `-Zmiri-retag-fields`), `none` means it never
recurses, `scalar` (the default) means it only recurses for types where we would also emit
`noalias` annotations in the generated LLVM IR (types passed as indivudal scalars or pairs of
`noalias` annotations in the generated LLVM IR (types passed as individual scalars or pairs of
scalars). Setting this to `none` is **unsound**.
* `-Zmiri-tag-gc=<blocks>` configures how often the pointer tag garbage collector runs. The default
is to search for and remove unreachable tags once every `10000` basic blocks. Setting this to
Expand Down
2 changes: 1 addition & 1 deletion src/tools/miri/cargo-miri/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ fn main() {
"miri" => phase_cargo_miri(args),
"runner" => phase_runner(args, RunnerPhase::Cargo),
arg if arg == env::var("RUSTC").unwrap() => {
// If the first arg is equal to the RUSTC env ariable (which should be set at this
// If the first arg is equal to the RUSTC env variable (which should be set at this
// point), then we need to behave as rustc. This is the somewhat counter-intuitive
// behavior of having both RUSTC and RUSTC_WRAPPER set
// (see https://github.com/rust-lang/cargo/issues/10886).
Expand Down
2 changes: 1 addition & 1 deletion src/tools/miri/rust-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
d4be8efc6296bace5b1e165f1b34d3c6da76aa8e
43a78029b4f4d92978b8fde0a677ea300b113c41
2 changes: 1 addition & 1 deletion src/tools/miri/src/bin/miri.rs
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ impl rustc_driver::Callbacks for MiriBeRustCompilerCalls {
#[allow(rustc::potential_query_instability)] // rustc_codegen_ssa (where this code is copied from) also allows this lint
fn config(&mut self, config: &mut Config) {
if config.opts.prints.is_empty() && self.target_crate {
// Queries overriden here affect the data stored in `rmeta` files of dependencies,
// Queries overridden here affect the data stored in `rmeta` files of dependencies,
// which will be used later in non-`MIRI_BE_RUSTC` mode.
config.override_queries = Some(|_, local_providers, _| {
// `exported_symbols` and `reachable_non_generics` provided by rustc always returns
Expand Down
2 changes: 1 addition & 1 deletion src/tools/miri/src/borrow_tracker/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -238,7 +238,7 @@ pub enum BorrowTrackerMethod {
}

impl BorrowTrackerMethod {
pub fn instanciate_global_state(self, config: &MiriConfig) -> GlobalState {
pub fn instantiate_global_state(self, config: &MiriConfig) -> GlobalState {
RefCell::new(GlobalStateInner::new(
self,
config.tracked_pointer_tags.clone(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -292,7 +292,7 @@ impl<'history, 'ecx, 'mir, 'tcx> DiagnosticCx<'history, 'ecx, 'mir, 'tcx> {
.rev()
.find_map(|event| {
// First, look for a Creation event where the tag and the offset matches. This
// ensrues that we pick the right Creation event when a retag isn't uniform due to
// ensures that we pick the right Creation event when a retag isn't uniform due to
// Freeze.
let range = event.retag.range;
if event.retag.new_tag == tag
Expand Down
4 changes: 2 additions & 2 deletions src/tools/miri/src/borrow_tracker/stacked_borrows/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -433,7 +433,7 @@ impl<'tcx> Stack {
let (Some(granting_idx), ProvenanceExtra::Concrete(_)) = (granting_idx, derived_from) else {
// The parent is a wildcard pointer or matched the unknown bottom.
// This is approximate. Nobody knows what happened, so forget everything.
// The new thing is SRW anyway, so we cannot push it "on top of the unkown part"
// The new thing is SRW anyway, so we cannot push it "on top of the unknown part"
// (for all we know, it might join an SRW group inside the unknown).
trace!("reborrow: forgetting stack entirely due to SharedReadWrite reborrow from wildcard or unknown");
self.set_unknown_bottom(global.next_ptr_tag);
Expand Down Expand Up @@ -825,7 +825,7 @@ trait EvalContextPrivExt<'mir: 'ecx, 'tcx: 'mir, 'ecx>: crate::MiriInterpCxExt<'
Ok(Some(alloc_id))
}

/// Retags an indidual pointer, returning the retagged version.
/// Retags an individual pointer, returning the retagged version.
/// `kind` indicates what kind of reference is being created.
fn sb_retag_reference(
&mut self,
Expand Down
2 changes: 1 addition & 1 deletion src/tools/miri/src/borrow_tracker/stacked_borrows/stack.rs
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ impl Stack {
// Note that the algorithm below is based on considering the tag at read_idx - 1,
// so precisely considering the tag at index 0 for removal when we have an unknown
// bottom would complicate the implementation. The simplification of not considering
// it does not have a significant impact on the degree to which the GC mititages
// it does not have a significant impact on the degree to which the GC mitigates
// memory growth.
let mut read_idx = 1;
let mut write_idx = read_idx;
Expand Down
Loading