about summary refs log tree commit diff
path: root/src/tools/miri
AgeCommit message (Collapse)AuthorLines
2024-10-06Auto merge of #3936 - YohDeadfall:rust-analyzer-conf, r=RalfJungbors-39/+87
Added rust-analyzer instructions for Helix That pull request adds information on how to configure Helix to use `rust-analyzer`, and moves the existing configuration to the `src/etc` directory as it's in the `rust` repository. Not adding instructions for other IDE because there's a link leading to the how-to for `rustc`.
2024-10-06tweak the hintRalf Jung-8/+3
2024-10-05Fix up testsMichael Goulet-2/+49
2024-10-05Stabilize `std::io::ErrorKind::QuotaExceeded`Pavel Grigorenko-1/+1
Also drop "Filesystem" from its name
2024-10-05Added rust-analyzer instructions for HelixYoh Deadfall-38/+91
2024-10-05avoid pthread_attr_t in testsRalf Jung-18/+24
2024-10-05Auto merge of #3940 - rust-lang:refutable_slice, r=RalfJungbors-33/+34
Prefer refutable slice patterns over len check + index op Just something I noticed while reviewing other PRs We do it for shim arguments almost everywhere, but when the size is not statically known, we didn't use the helpers as they rely on array ops. But we can avoid a len check followed by several index ops by just using a refutable slice pattern with `let else`. The pattern is so common, it seems almost worth a dedicated macro
2024-10-05Auto merge of #3943 - RalfJung:pthread-mutex-reentrant, r=RalfJungbors-15/+51
pthread mutex: better error in reentrant-locking-UB Also test reentrant locking of PTHREAD_MUTEX_INITIALIZER
2024-10-05pthread mutex: better error in reentrant-locking-UB, also test ↵Ralf Jung-15/+51
PTHREAD_MUTEX_INITIALIZER
2024-10-04Prefer refutable slice patterns over len check + index opOli Scherer-33/+34
2024-10-04Implement LLVM x86 gfni intrinsicsTobias Decking-0/+722
2024-10-04clippyRalf Jung-2/+1
2024-10-04Merge from rustcThe Miri Cronjob Bot-7/+7
2024-10-04Preparing for merge from rustcThe Miri Cronjob Bot-1/+1
2024-10-03make sure we also detect mixed-size races that begin at different addressesRalf Jung-1/+47
2024-10-03fmtRalf Jung-19/+27
2024-10-03Merge from rustcRalf Jung-990/+988
2024-10-03Preparing for merge from rustcRalf Jung-1/+1
2024-10-03Auto merge of #127912 - joboet:tls_dtor_thread_current, r=cuviperbors-7/+7
std: make `thread::current` available in all `thread_local!` destructors ... and thereby allow the panic runtime to always print the right thread name. This works by modifying the TLS destructor system to schedule a runtime cleanup function after all other TLS destructors registered by `std` have run. Unfortunately, this doesn't affect foreign TLS destructors, `thread::current` will still panic there. Additionally, the thread ID returned by `current_id` will now always be available, even inside the global allocator, and will not change during the lifetime of one thread (this was previously the case with key-based TLS). The mechanisms I added for this (`local_pointer` and `thread_cleanup`) will also allow finally fixing #111272 by moving the signal stack to a similar runtime-cleanup TLS variable.
2024-10-02epoll: remove extraneous clone of ready_listFrank Rehwinkel-2/+1
A simplification that doesn't impact the epoll implementation's logic. It is not necessary to clone the ready_list before reading its `is_empty` state. This avoids the clone step but more importantly avoids the invisible drop step of the clone.
2024-10-02epoll: add vector clock to the epoll ready_listFrank Rehwinkel-119/+67
This adds a VClock to the epoll implementation's ready_list and has this VClock synced from the thread that updates an event in the ready_list and then has the VClocks of any threads being made runnable again, out of the calls to epoll_wait, synced from it.
2024-10-02epoll: remove unnecessary instructionsFrank Rehwinkel-3/+0
A couple of instructions were left over from an earlier rebase it would seem. They don't impact the logic but the ready_list type is about to change in the next commit. Rather than modify one of these lines in the commit that changes ready_list, only to have these lines removed later on, remove them now. They don't impact the tests results.
2024-10-02epoll: add data_race testFrank Rehwinkel-0/+108
This test demonstrates the need to synchronize the clock of the thread waking up from an epoll_wait from the thread that issued the epoll awake event.
2024-10-02bless miri testsjoboet-7/+7
2024-10-01make InterpResult a dedicated type to avoid accidentally discarding the errorRalf Jung-728/+734
2024-10-01add set_last_error_and_return_i32 helper and use it in a few placesRalf Jung-27/+28
2024-10-01make set_last_error directly callable on a bunch of ways to represent errorsRalf Jung-80/+88
2024-10-01move io error handling helpers to their own fileRalf Jung-184/+193
2024-10-01Refactor return_read_bytes_and_count and return_written_byte_count_or_errortiif-67/+76
2024-09-30panic when an interpreter error gets unintentionally discardedRalf Jung-3/+8
2024-09-30Auto merge of #131036 - RalfJung:miri-sync, r=RalfJungbors-474/+602
Miri subtree update r? `@ghost`
2024-09-29let rustfmt format importsRalf Jung-319/+255
2024-09-29bump few depsklensy-63/+24
2024-09-29skip old getrandom crate on SolarisRalf Jung-5/+10
2024-09-28Auto merge of #3918 - devnexen:solaris_arc4random_buf, r=RalfJungbors-4/+31
implements arc4random_buf shim for freebsd/solarish platforms. close #3914
2024-09-28make sure the new function is testedRalf Jung-4/+4
2024-09-28implements arc4random_buf shim for freebsd/solarish platforms.David Carlier-0/+27
close #3914
2024-09-28add tests for validity of Box with custom allocatorRalf Jung-0/+99
2024-09-28Further clarificarion for atomic and UnsafeCell docs:Ralf Jung-0/+17
- UnsafeCell: mention the term "data race", and reference the data race definition - atomic: failing RMWs are just reads, reorder and reword docs
2024-09-28allow mixed-size atomic readsRalf Jung-153/+202
2024-09-28miri: no longer complain about read-read racesRalf Jung-122/+43
2024-09-27Update cc to 1.1.22Chris Denton-6/+33
2024-09-26Auto merge of #3916 - rust-lang:rustup-2024-09-26, r=RalfJungbors-21/+21
Automatic Rustup
2024-09-26remove some clippy lints from the list that we do not even trigger any moreRalf Jung-2/+0
2024-09-26fix clippy::needless_returnRalf Jung-13/+13
2024-09-26clippyRalf Jung-5/+7
2024-09-26bump rustc-build-sysroot versionRalf Jung-3/+3
2024-09-26Preparing for merge from rustcThe Miri Cronjob Bot-1/+1
2024-09-25Auto merge of #3915 - RalfJung:target-json-test, r=RalfJungbors-27/+25
switch custom target JSON test to a less exotic target We used to test an AVR target here, but while it is nice to test a 16bit target, it is also currently the case that rustc CI does not even check that libcore builds on a 16bit target -- and we don't want Miri to be in the game of maintaining that support. (See https://github.com/rust-lang/rust/issues/130818.) So let's use a tier 2 target as the basis for testing a custom JSON target. (FWIW, we also test wasm32-wasip2 which is tier 3, but I expect it will become tier 2 Soon-ish.)
2024-09-25switch custom target JSON test to a less exotic targetRalf Jung-27/+25