retag return place
@eddyb suggested that return places should be treated like unique references for Stacked Borrows. That is implemented by this patch, but it is unfortunately quite the hack because otherwise we are retagging *references*, not places.
@eddyb does this roughly correspond to what you had in mind? (Except for whatever it is you think should happen with argument passing, which is a much bigger issue.) Also, do you think there is any way we can *test* this?
Needs https://github.com/rust-lang/rust/pull/71100 to land.
Implement `mach_timebase_info` for macOS
Since we return nanoseceonds instead of ticks from `mach_absolute_time`, we don't need to scale the absolute time
Fixes#1288
for alignment errors, note that there might be false positives
Cc @shepmaster
```
error: Undefined Behavior: accessing memory with alignment 1, but alignment 8 is required
--> tests/compile-fail/unaligned_pointers/alignment.rs:8:9
|
8 | *y_ptr = 42;
| ^^^^^^^^^^^ accessing memory with alignment 1, but alignment 8 is required
|
= help: this usually indicates that your program performed an invalid operation and caused Undefined Behavior
= help: but alignment errors can also be false positives, see https://github.com/rust-lang/miri/issues/1074
```
organize intrinsics in groups
Also remove `pref_align_of` as it was moved into rustc long ago, and `align_of_val` as it doesn't exist (the name is `min_align_of_val`, which we also already handle).
Even more float cast tests
Copy a bunch of float cast tests from https://github.com/WebAssembly/testsuite/blob/master/conversions.wast. I didn't do all of them though, too lazy... maybe we should have a wasm interpreter written in Rust and run that in Miri and use the wasm test suite directly that way? :P
compile-fail test organization
Move compile-fail tests to appropriate directories.
(run-pass tests often test many things in one file, organized by functions. But for compile-fail tests that is not possible.)