]>
git.lizzy.rs Git - rust.git/log
Ralf Jung [Thu, 4 Jul 2019 22:06:41 +0000 (00:06 +0200)]
temporarily disable ptr_offset, maybe that helps
Christian Poveda [Wed, 3 Jul 2019 18:42:01 +0000 (13:42 -0500)]
Fix explicit cast test
Christian Poveda [Wed, 3 Jul 2019 18:28:30 +0000 (13:28 -0500)]
Update rust-version
Christian Poveda [Sat, 29 Jun 2019 18:17:15 +0000 (13:17 -0500)]
Add intptrcast test for explicit casts
bors [Wed, 3 Jul 2019 17:13:09 +0000 (17:13 +0000)]
Auto merge of #820 - RalfJung:intptrcast, r=RalfJung
Make most tests work with Intptrcast
The one that still fails (amusingly, that's ptr_int_casts) requires some help from the librustc_mir side.
Ralf Jung [Wed, 3 Jul 2019 08:54:16 +0000 (10:54 +0200)]
avoid catching errors
Ralf Jung [Wed, 3 Jul 2019 08:46:51 +0000 (10:46 +0200)]
make a test noseed for now that does not work with intptrcast yet
Ralf Jung [Wed, 3 Jul 2019 08:19:55 +0000 (10:19 +0200)]
don't call Stacked Borrows hooks at all when validation is disabled
Ralf Jung [Wed, 3 Jul 2019 07:56:35 +0000 (09:56 +0200)]
support integers that can be cast to pointers in in-bounds offset operation
Ralf Jung [Wed, 3 Jul 2019 07:42:07 +0000 (09:42 +0200)]
we don't need zero-sized freeze-sensitive visiting
Ralf Jung [Wed, 3 Jul 2019 07:32:21 +0000 (09:32 +0200)]
avoid integer overflow in ptr-to-int cast
Ralf Jung [Wed, 3 Jul 2019 07:23:31 +0000 (09:23 +0200)]
allow dangling ptr-to-int casts; use force_bits for ptr comparison
Ralf Jung [Wed, 3 Jul 2019 07:06:48 +0000 (09:06 +0200)]
only treat integer operations as such
Ralf Jung [Wed, 3 Jul 2019 07:06:35 +0000 (09:06 +0200)]
dont add the -Zmiri-seed flag twice
Ralf Jung [Tue, 2 Jul 2019 20:20:37 +0000 (22:20 +0200)]
run all run-pass tests with intrptrcast. makes many of them fail!
bors [Tue, 2 Jul 2019 11:03:22 +0000 (11:03 +0000)]
Auto merge of #819 - RalfJung:test-name, r=RalfJung
fix outdated test name: overalign -> align
Ralf Jung [Tue, 2 Jul 2019 11:02:48 +0000 (13:02 +0200)]
fix outdated test name: overalign -> align
bors [Tue, 2 Jul 2019 07:51:55 +0000 (07:51 +0000)]
Auto merge of #818 - RalfJung:readme, r=RalfJung
add another bug we found to the list
Ralf Jung [Tue, 2 Jul 2019 07:51:16 +0000 (09:51 +0200)]
add another bug we found to the list
bors [Mon, 1 Jul 2019 20:59:17 +0000 (20:59 +0000)]
Auto merge of #815 - RalfJung:memory-audit, r=RalfJung
don't call Memory::get without checking the pointer first
Also avoid Memory::get if we just need to know align/size.
I audited all uses of `alloc_id`; the rest should be fine (and we can kill a bunch of them once https://github.com/rust-lang/rust/pull/62257 lands).
bors [Mon, 1 Jul 2019 13:42:33 +0000 (13:42 +0000)]
Auto merge of #814 - RalfJung:shims, r=RalfJung
move find_fn (which is not specific to foreign items) out of foreign_item
bors [Mon, 1 Jul 2019 12:31:57 +0000 (12:31 +0000)]
Auto merge of #816 - RalfJung:gitattr, r=RalfJung
be explicit about our line endings
Let's see if this is the right setting for Windows...
Ralf Jung [Mon, 1 Jul 2019 09:05:57 +0000 (11:05 +0200)]
be explicit about our line endings
Ralf Jung [Sun, 30 Jun 2019 21:24:08 +0000 (23:24 +0200)]
move find_fn (which is not specific to foreign items) out of foreign_items
Ralf Jung [Sun, 30 Jun 2019 22:12:45 +0000 (00:12 +0200)]
don't call Memory::get without checking the pointer first; avoid Memory::get if we just need to know align/size
bors [Sun, 30 Jun 2019 21:19:56 +0000 (21:19 +0000)]
Auto merge of #809 - RalfJung:intptrcast, r=RalfJung
use intptrcast for heap_allocator test; then it should work on Windows
Ralf Jung [Sun, 30 Jun 2019 19:23:48 +0000 (21:23 +0200)]
test even more size-alignment combinations. found a bug in libstd!
Ralf Jung [Sun, 30 Jun 2019 19:08:17 +0000 (21:08 +0200)]
fix minimal alignment for system allocation functions
Ralf Jung [Sun, 30 Jun 2019 19:06:32 +0000 (21:06 +0200)]
add some tracing to intptrcast
Ralf Jung [Sun, 30 Jun 2019 19:03:52 +0000 (21:03 +0200)]
move appveyor env var settings to more appropriate section
Ralf Jung [Sun, 30 Jun 2019 17:10:09 +0000 (19:10 +0200)]
fix setting rustc flags
bors [Sun, 30 Jun 2019 15:07:03 +0000 (15:07 +0000)]
Auto merge of #806 - varkor:patch-1, r=RalfJung
Fix `unused_must_use` inside `Box`
After https://github.com/rust-lang/rust/pull/62228, this will be linted against (and causes the test to fail). (This blocks https://github.com/rust-lang/rust/pull/62228.)
Ralf Jung [Sun, 30 Jun 2019 15:02:20 +0000 (17:02 +0200)]
Miri is not deterministic any more
Ralf Jung [Sun, 30 Jun 2019 14:56:16 +0000 (16:56 +0200)]
use intptrcast for heap_allocator test; then it should work on Windows
bors [Sun, 30 Jun 2019 14:46:03 +0000 (14:46 +0000)]
Auto merge of #807 - RalfJung:test-name, r=RalfJung
better name for a test: threads -> sync
Ralf Jung [Sun, 30 Jun 2019 14:45:41 +0000 (16:45 +0200)]
improve comment
Ralf Jung [Sun, 30 Jun 2019 14:44:25 +0000 (16:44 +0200)]
better name for a test: threads -> sync
varkor [Sun, 30 Jun 2019 14:31:14 +0000 (15:31 +0100)]
Fix `unused_must_use` inside `Box`
After https://github.com/rust-lang/rust/pull/62228, this will be linted against (and causes the test to fail).
bors [Sun, 30 Jun 2019 13:38:38 +0000 (13:38 +0000)]
Auto merge of #805 - RalfJung:shims, r=RalfJung
move shims (foreign items and intrinsics) into submodule
This is in preparation for dlsym support, where there will b a third "kind" of shim.
And maybe some day we find a good way to split those long files...
Ralf Jung [Sun, 30 Jun 2019 13:35:28 +0000 (15:35 +0200)]
move shims (foreign items and intrinsics) into submodule
bors [Sun, 30 Jun 2019 09:37:27 +0000 (09:37 +0000)]
Auto merge of #804 - RalfJung:intptrcast, r=RalfJung
fix comparing function pointers with intptrcast
Cc @christianpoveda
Ralf Jung [Sun, 30 Jun 2019 08:59:42 +0000 (10:59 +0200)]
fix comparing function pointers with intptrcast
bors [Sun, 30 Jun 2019 08:42:25 +0000 (08:42 +0000)]
Auto merge of #801 - RalfJung:num_cpus, r=RalfJung
support num_cpus crate and test that
Also make some magic numbers into proper global constants.
bors [Sat, 29 Jun 2019 12:45:14 +0000 (12:45 +0000)]
Auto merge of #795 - RalfJung:intptrcast, r=RalfJung
tweak inttoptr allocation behavior
- Make `align_addr` not offset by `align` for no reason.
- Add some random slack between allocations to give them the chance to not be aligned.
Cc @christianpoveda
Fixes https://github.com/rust-lang/miri/issues/791
Ralf Jung [Sat, 29 Jun 2019 12:37:41 +0000 (14:37 +0200)]
move constants to machine.rs
Ralf Jung [Sat, 29 Jun 2019 11:37:38 +0000 (13:37 +0200)]
comment on STACK_ADDR
Ralf Jung [Sat, 29 Jun 2019 11:33:47 +0000 (13:33 +0200)]
support num_cpus and test that
Ralf Jung [Fri, 28 Jun 2019 08:27:19 +0000 (10:27 +0200)]
make sure we catch alignment problems even with intrptrcast
Ralf Jung [Fri, 28 Jun 2019 08:24:16 +0000 (10:24 +0200)]
don't compute residue twice
Ralf Jung [Fri, 28 Jun 2019 08:23:29 +0000 (10:23 +0200)]
more sensible slack
Ralf Jung [Fri, 28 Jun 2019 08:16:10 +0000 (10:16 +0200)]
tweak inttoptr allocation behavior
- Make `align_addr` not offset by `align` for no reason.
- Add some random slack between allocations to give them the chance to not be aligned.
bors [Sat, 29 Jun 2019 11:52:02 +0000 (11:52 +0000)]
Auto merge of #802 - RalfJung:machine, r=RalfJung
some lib.rs refactoring
Taken out of https://github.com/rust-lang/miri/pull/799 so that we can land it now and resolve merge conflicts instead of dragging them along.
Splits lib.rs into machine.rs for the machine state and trait impl, and eval.rs for the main evaluator loop and setting up the initial stack frame.
Ralf Jung [Thu, 27 Jun 2019 21:59:00 +0000 (23:59 +0200)]
move most of the stuff from lib.rs into machine.rs, and initialization + main loop into eval.rs
bors [Fri, 28 Jun 2019 18:43:30 +0000 (18:43 +0000)]
Auto merge of #798 - RalfJung:format-ptr, r=RalfJung
test pointer string formatting
Ralf Jung [Fri, 28 Jun 2019 18:42:00 +0000 (20:42 +0200)]
test pointer string formatting
bors [Fri, 28 Jun 2019 09:31:23 +0000 (09:31 +0000)]
Auto merge of #796 - RalfJung:rand, r=RalfJung
bump rand to released 0.7
Ralf Jung [Fri, 28 Jun 2019 09:29:24 +0000 (11:29 +0200)]
bump rand to released 0.7
bors [Fri, 28 Jun 2019 07:15:35 +0000 (07:15 +0000)]
Auto merge of #794 - RalfJung:alignment-sanity, r=oli-obk
ptr-to-int alignment sanity check
Ralf Jung [Fri, 28 Jun 2019 07:12:11 +0000 (09:12 +0200)]
ptr-to-int alignment sanity check
bors [Fri, 28 Jun 2019 06:29:10 +0000 (06:29 +0000)]
Auto merge of #793 - jyn514:master, r=RalfJung
Show usage if run without arguments
Before, running `./miri` without arguments gave
'./miri: 92: shift: can't shift that many' if run with /bin/sh,
or no output at all when run with bash (because of the `set -e` at the top).
Although that gives some indication of the error, it's not as helpful as
showing the usage.
Joshua Nelson [Fri, 28 Jun 2019 01:46:24 +0000 (21:46 -0400)]
Show usage if run without arguments
Before, running `./miri` without arguments gave
'./miri: 92: shift: can't shift that many' if run with /bin/sh,
or no output at all when run with bash.
Although that gives some indication of the error, it's not as helpful as
showing the usage.
bors [Wed, 26 Jun 2019 14:52:03 +0000 (14:52 +0000)]
Auto merge of #779 - christianpoveda:intptrcast-model, r=RalfJung,oli-obk
Implement intptrcast methods
cc https://github.com/rust-lang/miri/issues/224
Christian Poveda [Tue, 25 Jun 2019 19:07:23 +0000 (14:07 -0500)]
Fix alignment of base addresses
bors [Tue, 25 Jun 2019 08:14:59 +0000 (08:14 +0000)]
Auto merge of #790 - RalfJung:readme, r=oli-obk
README: add snippet for running Miri on CI
Ralf Jung [Tue, 25 Jun 2019 08:05:34 +0000 (10:05 +0200)]
add snippet for running Miri on CI
Christian Poveda [Tue, 25 Jun 2019 02:47:37 +0000 (21:47 -0500)]
Fix merge conflicts
Christian Poveda [Mon, 24 Jun 2019 21:34:38 +0000 (16:34 -0500)]
Reorganize MemoryExtra and AllocExtra structures
bors [Mon, 24 Jun 2019 21:59:22 +0000 (21:59 +0000)]
Auto merge of #787 - RalfJung:pointer-checks, r=RalfJung
adjust for refactored memory pointer checks
The Miri side of https://github.com/rust-lang/rust/pull/62081.
Ralf Jung [Mon, 24 Jun 2019 21:58:12 +0000 (23:58 +0200)]
bump Rust commit
Christian Poveda [Mon, 24 Jun 2019 15:03:16 +0000 (10:03 -0500)]
Rename new fields and move rng to MemoryExtra
Ralf Jung [Mon, 24 Jun 2019 12:50:27 +0000 (14:50 +0200)]
Apply suggestions from code review
Co-Authored-By: Oliver Scherer <github35764891676564198441@oli-obk.de>
Ralf Jung [Mon, 24 Jun 2019 06:40:45 +0000 (08:40 +0200)]
expand and better explain alignment check tests
Ralf Jung [Sun, 23 Jun 2019 18:30:33 +0000 (20:30 +0200)]
de-obfuscate ptr comparison a bit
Ralf Jung [Sun, 23 Jun 2019 15:26:12 +0000 (17:26 +0200)]
adjust for refactored memory pointer checks
Christian Poveda [Sat, 22 Jun 2019 14:25:16 +0000 (09:25 -0500)]
Force intptrcast for binary operations
bors [Sat, 22 Jun 2019 09:49:32 +0000 (09:49 +0000)]
Auto merge of #783 - RalfJung:rustup, r=RalfJung
fix compilation with latest rustc
bors [Sat, 22 Jun 2019 09:14:48 +0000 (09:14 +0000)]
Auto merge of #784 - RalfJung:ci, r=RalfJung
also run tests for cron jobs
Ralf Jung [Sat, 22 Jun 2019 09:13:35 +0000 (11:13 +0200)]
also run tests for cron jobs
Ralf Jung [Sat, 22 Jun 2019 09:05:12 +0000 (11:05 +0200)]
fix compilation with latest rustc
Christian Poveda [Fri, 21 Jun 2019 21:32:54 +0000 (16:32 -0500)]
Duplicate compile-fail tests for intptrcast
Christian Poveda [Thu, 20 Jun 2019 19:21:47 +0000 (14:21 -0500)]
Implement intptrcast methods
bors [Fri, 21 Jun 2019 19:49:43 +0000 (19:49 +0000)]
Auto merge of #782 - RalfJung:generator, r=RalfJung
add a failing test where an immovable generator gets moved
Test courtesy of @shepmaster
Ralf Jung [Fri, 21 Jun 2019 19:48:27 +0000 (21:48 +0200)]
add a failing test where an immovable generator gets moved
bors [Fri, 21 Jun 2019 19:03:00 +0000 (19:03 +0000)]
Auto merge of #780 - RalfJung:ci, r=RalfJung
adapt CI for bors
With this, we should run the Travis tests (Linux+macOS) in PRs, and run that plus AppVeyor in bors.
Ralf Jung [Fri, 21 Jun 2019 19:02:30 +0000 (21:02 +0200)]
fix Travis bors branch names
Ralf Jung [Fri, 21 Jun 2019 18:55:24 +0000 (20:55 +0200)]
AppVeyor: only run on bors branches
Ralf Jung [Fri, 21 Jun 2019 18:51:05 +0000 (20:51 +0200)]
Travis: also run on bors branches, and not on master
Ralf Jung [Fri, 21 Jun 2019 11:20:22 +0000 (13:20 +0200)]
Merge pull request #778 from christianpoveda/master
Update tag methods to match Machine changes
Oliver Scherer [Fri, 21 Jun 2019 10:37:13 +0000 (12:37 +0200)]
Merge branch 'master' into master
Oliver Scherer [Fri, 21 Jun 2019 10:36:19 +0000 (12:36 +0200)]
Update rust-version
Ralf Jung [Fri, 21 Jun 2019 07:00:21 +0000 (09:00 +0200)]
Merge pull request #777 from RalfJung/rustup
bump Rust
Christian Poveda [Fri, 21 Jun 2019 02:38:10 +0000 (21:38 -0500)]
Merge branch 'master' into master
Christian Poveda [Thu, 20 Jun 2019 21:58:57 +0000 (16:58 -0500)]
Update tag methods to match Machine changes
Ralf Jung [Thu, 20 Jun 2019 19:37:12 +0000 (21:37 +0200)]
Merge branch 'master' into rustup
Ralf Jung [Thu, 20 Jun 2019 19:36:59 +0000 (21:36 +0200)]
Merge pull request #774 from soc/patch-1
Fix project dirs path
Ralf Jung [Thu, 20 Jun 2019 18:47:27 +0000 (20:47 +0200)]
Merge branch 'master' into patch-1
Ralf Jung [Thu, 20 Jun 2019 17:45:39 +0000 (19:45 +0200)]
use org.rust-lang.miri folder on macOS
Ralf Jung [Thu, 20 Jun 2019 14:38:55 +0000 (16:38 +0200)]
allow some inequality comparisons between pointers and integers
Ralf Jung [Thu, 20 Jun 2019 13:35:06 +0000 (15:35 +0200)]
bump Rust, no changes needed
Oliver Scherer [Mon, 17 Jun 2019 09:12:12 +0000 (11:12 +0200)]
Merge pull request #776 from RalfJung/intrinsics
implement unchecked_{add,sub,mul} intrinsics