]>
git.lizzy.rs Git - rust.git/log
Aaron Hill [Mon, 15 Apr 2019 01:02:55 +0000 (21:02 -0400)]
Support unwinding after a panic
Fixes #658
This commit adds support for unwinding after a panic. It requires a
companion rustc PR to be merged, in order for the necessary hooks to
work properly.
Currently implemented:
* Selecting between unwind/abort mode based on the rustc Session
* Properly popping off stack frames, unwinding back the caller
* Running 'unwind' blocks in Mir terminators
Not yet implemented:
* 'Abort' terminators
This PR was getting fairly large, so I decided to open it for review without
implementing 'Abort' terminator support. This could either be added on
to this PR, or merged separately.
bors [Sun, 17 Nov 2019 08:55:02 +0000 (08:55 +0000)]
Auto merge of #1056 - RalfJung:max, r=RalfJung
use new isize_max method in FS accesses
also check full buffers for validity
Ralf Jung [Sun, 17 Nov 2019 08:30:32 +0000 (09:30 +0100)]
use new isize_max method in FS accesses; also check full buffers for validity
bors [Sun, 17 Nov 2019 08:21:42 +0000 (08:21 +0000)]
Auto merge of #1055 - RalfJung:panic-stub, r=RalfJung
minimal rustup for panic changes
Main patch by @Aaron1011
Ralf Jung [Sun, 17 Nov 2019 08:20:50 +0000 (09:20 +0100)]
remove some leftovers from the miri-control-attribute days
Ralf Jung [Sun, 17 Nov 2019 08:03:16 +0000 (09:03 +0100)]
rustup again
Ralf Jung [Sat, 16 Nov 2019 08:07:35 +0000 (09:07 +0100)]
try the stable feature of compiletest
Ralf Jung [Sat, 16 Nov 2019 08:00:05 +0000 (09:00 +0100)]
bump Rust
bors [Fri, 15 Nov 2019 15:00:28 +0000 (15:00 +0000)]
Auto merge of #1054 - RalfJung:win-num-cpus, r=RalfJung
test-cargo-miri: cargo update, re-enable windows num_cpus test
Ralf Jung [Fri, 15 Nov 2019 14:59:19 +0000 (15:59 +0100)]
test-cargo-miri: cargo update, re-enable windows num_cpus test
bors [Thu, 14 Nov 2019 10:16:51 +0000 (10:16 +0000)]
Auto merge of #1053 - RalfJung:clean, r=RalfJung
remove no-longer-needed zero checks
Ralf Jung [Thu, 14 Nov 2019 09:29:43 +0000 (10:29 +0100)]
remove no-longer-needed zero checks
bors [Thu, 14 Nov 2019 09:27:03 +0000 (09:27 +0000)]
Auto merge of #1052 - RalfJung:icefix, r=RalfJung
fix ICE due to dangling pointers in Stacked Borrows
Fixes https://github.com/rust-lang/miri/issues/1050. Thanks to @CAD97 for the report!
Ralf Jung [Thu, 14 Nov 2019 09:23:29 +0000 (10:23 +0100)]
do full deref-check before reborrowing
Ralf Jung [Thu, 14 Nov 2019 09:16:44 +0000 (10:16 +0100)]
rename miri-issue to issue-miri for grouping
bors [Wed, 13 Nov 2019 22:58:24 +0000 (22:58 +0000)]
Auto merge of #1022 - christianpoveda:fix-fd-access, r=RalfJung
Fix unchecked memory access for files
This PR takes care of two problems:
- It uses `Memory::(read|write)_bytes` to guarantee that memory accesses are checked (Fixes: https://github.com/rust-lang/miri/issues/1007)
- It removes the `(get|remove)_handle_and` methods which were a little bit cumbersome to use. In particular `remove_handle_and`, because we were using it to avoid borrowing issues before the `Evaluator::memory` field was public.
@RalfJung @oli-obk
Christian Poveda [Wed, 13 Nov 2019 19:45:00 +0000 (14:45 -0500)]
Fix maximum `isize` value for target
Christian Poveda [Wed, 13 Nov 2019 16:57:20 +0000 (11:57 -0500)]
Cap `count` twice
bors [Wed, 13 Nov 2019 09:42:47 +0000 (09:42 +0000)]
Auto merge of #1049 - silathdiir:copysignf32-and-copysignf64, r=RalfJung
Implment intrinsics::copysignf32 and intrinsics::copysignf64
Tries to implment `intrinsics::copysignf32` and `intrinsics::copysignf64` for fixing Issue #1046 .
Steven Gu [Wed, 13 Nov 2019 02:14:13 +0000 (10:14 +0800)]
Implments `intrinsics::copysignf32` and `intrinsics::copysignf64`.
Aaron Hill [Tue, 12 Nov 2019 15:19:13 +0000 (10:19 -0500)]
Rustup for panic changes
This gets Miri working again, but doesn't actually implement unwinding
bors [Mon, 11 Nov 2019 20:26:37 +0000 (20:26 +0000)]
Auto merge of #1047 - RalfJung:uprust, r=RalfJung
rustup
Ralf Jung [Mon, 11 Nov 2019 20:25:57 +0000 (21:25 +0100)]
rustup
Christian Poveda [Sat, 9 Nov 2019 14:15:52 +0000 (15:15 +0100)]
Cap `count`
Christian Poveda [Sat, 9 Nov 2019 09:42:45 +0000 (10:42 +0100)]
Fix merge conflicts
bors [Fri, 8 Nov 2019 21:08:52 +0000 (21:08 +0000)]
Auto merge of #1044 - RalfJung:uprust, r=RalfJung
rustup
Ralf Jung [Fri, 8 Nov 2019 21:07:52 +0000 (22:07 +0100)]
rustup
bors [Fri, 8 Nov 2019 17:49:38 +0000 (17:49 +0000)]
Auto merge of #1040 - RalfJung:rustup, r=RalfJung
rustup
bors [Fri, 8 Nov 2019 15:38:06 +0000 (15:38 +0000)]
Auto merge of #1043 - RalfJung:cache, r=RalfJung
Cache rustup-toolchain-install-master again
We temporarily disabled the cache just to get it updated.
Ralf Jung [Fri, 8 Nov 2019 15:36:57 +0000 (16:36 +0100)]
bump minimal xargo version so that it honors the lockfile
Ralf Jung [Fri, 8 Nov 2019 13:13:23 +0000 (14:13 +0100)]
rust-docs should be gone from all caches now
Ralf Jung [Fri, 8 Nov 2019 13:12:54 +0000 (14:12 +0100)]
Revert "temporarily ignore cached rustup-toolchain-install-master"
This reverts commit
4872c5cbbe9a4f59c71a9ffde4d5e521c08e8ea0 .
Ralf Jung [Fri, 8 Nov 2019 11:43:26 +0000 (12:43 +0100)]
fix into_iter usage
Ralf Jung [Fri, 8 Nov 2019 09:08:57 +0000 (10:08 +0100)]
let's see if newer rustc helps
Ralf Jung [Fri, 8 Nov 2019 08:16:44 +0000 (09:16 +0100)]
disable num_cpus on Windows for now
Christian Poveda [Thu, 7 Nov 2019 19:50:16 +0000 (20:50 +0100)]
Use TryFrom instead
Ralf Jung [Thu, 7 Nov 2019 08:44:00 +0000 (09:44 +0100)]
silence a lint that catches the bug statically
bors [Thu, 7 Nov 2019 08:18:09 +0000 (08:18 +0000)]
Auto merge of #1039 - RalfJung:dyn-tests, r=RalfJung
More tests for dyn trait (in particular, unsized receivers)
So far we only tested them indirectly through `dyn FnOnce`; this also adds some self-contained tests from the rustc test suite.
Ralf Jung [Thu, 7 Nov 2019 08:17:40 +0000 (09:17 +0100)]
also test Box<self> receiver
Ralf Jung [Thu, 7 Nov 2019 08:14:23 +0000 (09:14 +0100)]
move blosure tests to closures file; test Box<dyn> a bit more
Ralf Jung [Thu, 7 Nov 2019 08:05:11 +0000 (09:05 +0100)]
centralize and expand dyn-trait (method receiver) tests
Ralf Jung [Thu, 7 Nov 2019 07:56:11 +0000 (08:56 +0100)]
rename call_drop_ tests to drop_
Ralf Jung [Thu, 7 Nov 2019 07:55:59 +0000 (08:55 +0100)]
tweak and slightly extend box-box-trait test
bors [Wed, 6 Nov 2019 13:39:22 +0000 (13:39 +0000)]
Auto merge of #1037 - JOE1994:master, r=RalfJung
error code E0080 is no longer printed with MIRI error message
Thanks to help from @bjorn3, @RalfJung, and @oli-obk on issue #1035 , I fixed the miri code so that error code **E0080** is no longer printed out for MIRI evaluation errors. I tested my code in my Linux machine as below.
![image](https://user-images.githubusercontent.com/
10286488 /
68264744 -
e71e6c80 -0017-11ea-9028-
f83e19164ea2 .png)
Remaining concern is whether the variable name `new_tcx` which I used is misleading or not.
Fixes https://github.com/rust-lang/miri/issues/1035
YOUNGSUK KIM [Wed, 6 Nov 2019 13:25:00 +0000 (08:25 -0500)]
follow-up to review
bors [Wed, 6 Nov 2019 09:51:32 +0000 (09:51 +0000)]
Auto merge of #1031 - RalfJung:ptr-offset, r=RalfJung
Refactor ptr_offset_inbounds
I finally found a way to write this using basically just `check_ptr_access` while handling all cases (integers and pointers, offset 0 or not) correctly. This changes behavior for NULL ptrs, but I think the change is for the better.
Depends on https://github.com/rust-lang/rust/pull/66081.
Ralf Jung [Wed, 6 Nov 2019 09:51:06 +0000 (10:51 +0100)]
ptr_offset: handle negative offsets
Ralf Jung [Wed, 6 Nov 2019 08:25:02 +0000 (09:25 +0100)]
rustup
Ralf Jung [Mon, 4 Nov 2019 11:29:15 +0000 (12:29 +0100)]
fix error message details
Ralf Jung [Mon, 4 Nov 2019 11:17:25 +0000 (12:17 +0100)]
fix test erorr msg
Ralf Jung [Mon, 4 Nov 2019 11:13:51 +0000 (12:13 +0100)]
refactor ptr_offset_inbounds: it can be reduced to check_ptr_access, after all!
Ralf Jung [Mon, 4 Nov 2019 11:11:31 +0000 (12:11 +0100)]
test that 0 cannot be offset-inbounds by 0
YOUNGSUK KIM [Wed, 6 Nov 2019 02:56:18 +0000 (21:56 -0500)]
error code E0080 is no longer printed with MIRI error message
Christian Poveda [Tue, 5 Nov 2019 21:47:24 +0000 (16:47 -0500)]
Avoid using `as` cast
bors [Tue, 5 Nov 2019 19:18:22 +0000 (19:18 +0000)]
Auto merge of #1032 - RalfJung:offset-from, r=RalfJung
test offset_from
This currently fails and needs a rustc fix: https://github.com/rust-lang/rust/pull/66083
Ralf Jung [Tue, 5 Nov 2019 19:17:45 +0000 (20:17 +0100)]
rustup
Ralf Jung [Mon, 4 Nov 2019 12:28:18 +0000 (13:28 +0100)]
test offset_from
bors [Tue, 5 Nov 2019 10:05:59 +0000 (10:05 +0000)]
Auto merge of #1036 - RalfJung:stacked-borrows-test, r=RalfJung
add an interesting run-pass stacked borrows example
Ralf Jung [Tue, 5 Nov 2019 10:05:02 +0000 (11:05 +0100)]
add an interesting run-pass stacked borrows example
Christian Poveda [Mon, 4 Nov 2019 14:38:21 +0000 (09:38 -0500)]
Handle host's `usize` correctly
bors [Mon, 4 Nov 2019 10:18:27 +0000 (10:18 +0000)]
Auto merge of #1030 - RalfJung:mir-opt-comment, r=RalfJung
update comment re: not using higher mir-opt-level
Ralf Jung [Mon, 4 Nov 2019 10:17:40 +0000 (11:17 +0100)]
update comment re: not using higher mir-opt-level
Christian Poveda [Sun, 3 Nov 2019 16:04:00 +0000 (10:04 -0600)]
Fix casts for `count` check
bors [Sun, 3 Nov 2019 14:40:15 +0000 (14:40 +0000)]
Auto merge of #1029 - RalfJung:panic-if-uninhabited, r=RalfJung
calling panic_if_uninhabited is not actually UB
Ralf Jung [Sun, 3 Nov 2019 14:39:03 +0000 (15:39 +0100)]
calling panic_if_uninhabited is not actually UB
bors [Sun, 3 Nov 2019 09:16:55 +0000 (09:16 +0000)]
Auto merge of #961 - rust-lang:exact_div_reuse, r=RalfJung
Use the upstream `exact_div` implementation
introduced in https://github.com/rust-lang/rust/pull/63810
Ralf Jung [Sun, 3 Nov 2019 09:15:55 +0000 (10:15 +0100)]
adjust tests
Ralf Jung [Sun, 3 Nov 2019 09:03:30 +0000 (10:03 +0100)]
style
Ralf Jung [Sun, 3 Nov 2019 09:02:32 +0000 (10:02 +0100)]
rustup
Oliver Scherer [Tue, 24 Sep 2019 23:19:41 +0000 (01:19 +0200)]
Use the upstream `exact_div` implementation
bors [Sat, 2 Nov 2019 10:53:37 +0000 (10:53 +0000)]
Auto merge of #1028 - RalfJung:place-apis, r=RalfJung
use Place API instead of Allocation API
Ralf Jung [Sat, 2 Nov 2019 10:50:21 +0000 (11:50 +0100)]
store scalars where appropriate
Ralf Jung [Sat, 2 Nov 2019 10:48:28 +0000 (11:48 +0100)]
Windows cmdline: avoid accessing allocations directly
bors [Wed, 30 Oct 2019 14:06:23 +0000 (14:06 +0000)]
Auto merge of #1027 - RalfJung:typo, r=RalfJung
fix typo
Ralf Jung [Wed, 30 Oct 2019 14:05:44 +0000 (15:05 +0100)]
fix typo
bors [Wed, 30 Oct 2019 09:17:35 +0000 (09:17 +0000)]
Auto merge of #1026 - RalfJung:rustup, r=RalfJung
rustup for span in intrinsic emulation
Ralf Jung [Wed, 30 Oct 2019 09:16:58 +0000 (10:16 +0100)]
rustup for span in intrinsic emulation
Christian Poveda [Mon, 28 Oct 2019 21:44:18 +0000 (16:44 -0500)]
Check for usize to i64 overflows
bors [Mon, 28 Oct 2019 11:12:03 +0000 (11:12 +0000)]
Auto merge of #1025 - mati865:deps, r=RalfJung
Bump dependencies
Mateusz Mikuła [Sun, 27 Oct 2019 22:01:01 +0000 (23:01 +0100)]
Bump dependencies
Christian Poveda [Sat, 26 Oct 2019 14:03:45 +0000 (09:03 -0500)]
Simplify `read` logic
Christian Poveda [Sat, 26 Oct 2019 13:54:02 +0000 (08:54 -0500)]
Drop files explicitly when closing them
bors [Sat, 26 Oct 2019 07:33:58 +0000 (07:33 +0000)]
Auto merge of #1024 - RalfJung:rustup, r=RalfJung
rustup for projection interning
Ralf Jung [Sat, 26 Oct 2019 07:33:24 +0000 (09:33 +0200)]
rustup for projection interning
bors [Fri, 25 Oct 2019 18:26:39 +0000 (18:26 +0000)]
Auto merge of #1023 - RalfJung:align_to, r=RalfJung
test align_to example
Fixes https://github.com/rust-lang/miri/issues/873
Ralf Jung [Fri, 25 Oct 2019 18:26:01 +0000 (20:26 +0200)]
test align_to example
bors [Thu, 24 Oct 2019 15:16:44 +0000 (15:16 +0000)]
Auto merge of #1021 - RalfJung:rustc-dev, r=RalfJung
Adjust for rustc-dev
Christian Poveda [Thu, 24 Oct 2019 13:44:13 +0000 (08:44 -0500)]
Clean file handling functions
Ralf Jung [Thu, 24 Oct 2019 13:44:35 +0000 (15:44 +0200)]
add back '-c cargo'
Ralf Jung [Thu, 24 Oct 2019 11:12:26 +0000 (13:12 +0200)]
rustc-dev landed; adjust rust version
Ralf Jung [Sat, 12 Oct 2019 15:11:29 +0000 (17:11 +0200)]
temporarily ignore cached rustup-toolchain-install-master
Ralf Jung [Fri, 11 Oct 2019 08:13:26 +0000 (10:13 +0200)]
adjust README for rustc-dev
Ralf Jung [Fri, 11 Oct 2019 08:11:01 +0000 (10:11 +0200)]
bump rustc and adjust for rustc-dev component
(also sync AppVeyor with Travis: use stable cargo)
bors [Thu, 24 Oct 2019 08:53:52 +0000 (08:53 +0000)]
Auto merge of #1020 - RalfJung:compiletest, r=RalfJung
compiletest-nightly should work again
Ralf Jung [Thu, 24 Oct 2019 08:31:08 +0000 (10:31 +0200)]
compiletest-nightly should work again
bors [Thu, 24 Oct 2019 08:27:38 +0000 (08:27 +0000)]
Auto merge of #1019 - RalfJung:rustup, r=RalfJung
rustup: more flexible write_bytes
avoids allocations and removes itertools dependency
Ralf Jung [Thu, 24 Oct 2019 08:23:44 +0000 (10:23 +0200)]
update comments and some tweaks
Ralf Jung [Thu, 24 Oct 2019 08:15:30 +0000 (10:15 +0200)]
rustup: more flexible write_bytes avoids allocations and removes itertools dependency
bors [Wed, 23 Oct 2019 16:52:52 +0000 (16:52 +0000)]
Auto merge of #993 - christianpoveda:os_string_helper, r=RalfJung
Add OsString from/to bytes helper functions
Related issue: https://github.com/rust-lang/miri/issues/989
r? @RalfJung
bors [Wed, 23 Oct 2019 14:34:56 +0000 (14:34 +0000)]
Auto merge of #1018 - RalfJung:rustup, r=RalfJung
rustup; fix debugging