Ben Kimock
730cd27248
Print more in SB error diagnostics
...
This tries to clarify exactly why an access is not valid by printing
what memory range the access was over, which in combination with
tag-tracking may help a user figure out the source of the problem.
2022-03-16 20:12:04 -04:00
Tavian Barnes
0088715411
Rename MiriMemoryKind::Env to Runtime
...
In preparation to use it for other runtime-internal allocations.
2022-03-07 16:19:03 -05:00
Ralf Jung
77cec811b4
exclude mutable references to !Unpin types from uniqueness guarantees
2022-01-01 19:01:46 +01:00
Ben Kimock
cd6921923c
Provide better notes when tracking a pointer tag
2021-12-21 12:15:29 -05:00
Ralf Jung
d8bee92aee
rename track-raw-pointers flag to tag-raw-pointers
2021-11-13 15:48:27 -05:00
hyd-dev
3fedc7b249
rustc_target::abi::LayoutOf
-> rustc_middle::ty::layout::LayoutOf
2021-09-06 23:05:48 +08:00
Ralf Jung
46ed39ec20
adjust for PointerOutOfBounds change
2021-07-20 13:30:49 +02:00
Ralf Jung
a1233a721d
adjust Miri to Pointer type overhaul
2021-07-16 10:10:12 +02:00
Ralf Jung
0341b8ac84
fmt: set force_multiline_blocks=true
2021-07-11 14:18:44 +02:00
Ralf Jung
447f23c71b
fmt
2021-07-06 10:13:30 +02:00
Ralf Jung
9b57313a4d
also treat CallerLocation and Machine memory as properly tagged
2021-07-06 10:07:48 +02:00
Ralf Jung
efd582c6d8
explicitly list memory kinds for stacked borrows
2021-07-06 10:04:16 +02:00
Ralf Jung
9e0e9386a6
better approach to skip ZST reborrows
2021-05-23 18:04:13 +02:00
Ralf Jung
543777acbd
avoid unnecessary RefCell calls in Stacked Borrows
2021-05-23 18:04:13 +02:00
Ralf Jung
c73f8b1097
fmt
2021-05-22 14:55:33 +02:00
Ralf Jung
ca7283d746
get rid of Rc in Stacked Borrows
2021-05-22 13:24:08 +02:00
Ralf Jung
801a1744cd
update for Memory API changes
2021-05-19 15:27:58 +02:00
Ralf Jung
4e231bab5e
format much of Miri
2021-05-16 11:48:28 +02:00
Mara Bos
5bd5ea21ea
Remove unwrap_none as it won't be stabilized.
...
This upgrades to the latest rustc to be able to use try_insert()
instead.
2021-03-08 16:59:20 +01:00
Ralf Jung
48f7c8e2e6
fix reborrowing of tagged ZST references
2021-02-27 20:10:50 +01:00
Tomasz Miąsko
0eb341417c
rustup to e7c23ab933
2021-02-20 00:00:00 +00:00
Ralf Jung
194451345d
add an option to track raw pointer tags in Stacked Borrows
2020-10-28 12:23:35 +01:00
Ralf Jung
39f7b35327
Stacked Borrows: print affected memory location on errors
2020-10-28 12:04:39 +01:00
Ralf Jung
086e9c49a9
pointer tag tracking: also show when tag is being created
2020-10-27 14:22:29 +01:00
LeSeulArtichaut
4f2f87b2df
Change ty.kind
-> ty.kind()
2020-09-04 22:03:45 +02:00
Ralf Jung
c77540ce13
deallocate thread-local statics when the thread dies
2020-07-27 23:32:15 +02:00
Ralf Jung
dcb0f6309e
we cannot track all machine memory any more due to int-ptr-casts
2020-07-08 12:01:49 +02:00
Ralf Jung
c379793cde
add option to track call IDs
2020-07-02 10:33:54 +02:00
Ralf Jung
270adbc7c6
Stacked Borrows: alignment does not matter
2020-04-22 23:32:19 +02:00
Vytautas Astrauskas
5224c72403
Move the stack to the evaluator to make Miri compile with the newest Rustc.
2020-04-20 09:19:37 +02:00
Ralf Jung
0805b4bf2e
retag return places
2020-04-15 12:39:19 +02:00
Ralf Jung
9f3383d55d
rustup for import changes
2020-04-03 00:05:35 +02:00
Ralf Jung
8948a29a4c
adjust for librustc rename; reduce 'extern crate' to rustc crates
2020-03-30 11:07:32 +02:00
Ralf Jung
204c13b8c7
env shim: make sure we clean up all the memory we allocate
2020-03-28 11:06:56 +01:00
Ralf Jung
9b0e9dec49
rustup, adjust for renames
2020-03-25 09:05:30 +01:00
Ralf Jung
284067cc15
rustup
2020-03-23 23:48:24 +01:00
Ralf Jung
6e302b830a
link to some websites for UB explanations
2020-03-22 23:32:19 +01:00
Ralf Jung
92a28f8d8f
HashMap -> FxHashMap
2020-03-02 22:36:15 +01:00
Ralf Jung
8ef303cd32
port from find_foreign_static to canonical_alloc_id
2020-03-02 09:03:08 +01:00
Ralf Jung
cc1ebd0af6
some formatting
2020-03-01 10:29:05 +01:00
Ralf Jung
274ae0438f
add an option to disable Stacked Borrows
2020-02-24 16:22:02 +01:00
Oliver Scherer
bfc7a7effd
Remove trailing newline
2020-01-09 12:38:58 +01:00
Oliver Scherer
c69ebaaed2
Use names that actually represent what's going on
2020-01-08 13:43:23 +01:00
Oliver Scherer
90a8f2f6a3
Make the non-halting diagnostic scheme independent of InterpError
2020-01-08 13:02:55 +01:00
Oliver Scherer
c0a7fd5602
Remove debugging hint until we can actuall use note:
2020-01-08 12:50:15 +01:00
Oliver Scherer
aec175e0de
Process delayed errors on every step
2020-01-08 12:49:46 +01:00
Oliver Scherer
bb58e42da2
Tell the user about stacked borrow debugging flags
2020-01-08 12:37:25 +01:00
Oliver Scherer
96d6efdf32
Emit errors without halting interpretation
2020-01-08 12:37:25 +01:00
Yuki Okushi
86ee705cd5
Rustup
2020-01-07 05:13:18 +09:00
Oliver Scherer
4aef81eb85
Remove to_ptr
uses
2019-12-27 14:26:05 +01:00