Commit Graph

101 Commits

Author SHA1 Message Date
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
fbbca59de7 avoid Scalar::from_(u)int in favor of giving the size explicitly 2020-03-28 17:35:40 +01:00
bors
b67dbca5d0 Auto merge of #1271 - RalfJung:env-clean, r=RalfJung
env shim: make sure we clean up all the memory we allocate

`Machine` memory is not leak-checked, so if we forgot to deallocate part of the env shim memory, we wouldn't even notice. Thus add a dedicated memory kind that is leak-checked.
2020-03-28 10:09:11 +00: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
876bded2e8 run Windows TLS dtor function 2020-03-28 10:39:29 +01:00
Ralf Jung
da5f2f305b implement TLS cleanup for macOS 2020-03-27 19:39:00 +01:00
Ralf Jung
81d505670b rustup; get rid of some try_from that are no longer needed 2020-03-26 00:11:50 +01:00
Ralf Jung
6dcca62b63 move -Zmiri-disable-isolation hint to help 2020-03-22 19:48:59 +01:00
Ralf Jung
d85f09c4e4 platform -> target 2020-03-22 08:55:39 +01:00
bors
6b56aefa0b Auto merge of #1239 - elichai:2020-03-abort-intrinsics, r=RalfJung
Abort instead of panic on asserting intrinsics

This fixes #1222
replacing the panic with an abort and a corresponding message.
the stack trace is already printed, this just adds an optional message the caller can pass, and I just pass the same message we passed to the panic but now to the abort instead.

r? @RalfJung
2020-03-18 12:20:30 +00:00
Elichai Turkel
1b8979c8c7
Add an optional message to abort 2020-03-18 14:14:23 +02:00
Ralf Jung
8b6af3eacb avoid using unchecked casts or arithmetic 2020-03-17 15:21:43 +01:00
Youngsuk Kim
a664156440
Minor typo fix
"initializiation" => "initialization"
2020-03-15 18:06:21 -04:00
Christian Poveda
8392a0c589
only expose environ on linux 2020-03-08 10:16:31 -05:00
Christian Poveda
18a71ef7b3
minor corrections 2020-03-07 11:35:00 -05:00
Christian Poveda
4f5fdc5810
update the environ shim when environment changes 2020-03-06 08:21:52 -05:00
Christian Poveda
d13fe01f82
add working shim for environ 2020-03-06 08:19:56 -05:00
Ralf Jung
d82d701360 add option to track a particular AllocId (does nothing yet) 2020-03-06 09:06:23 +01:00
Ralf Jung
8ef303cd32 port from find_foreign_static to canonical_alloc_id 2020-03-02 09:03:08 +01:00
Ralf Jung
5d8fbfcb5f rename memory kind: Env -> Machine 2020-03-02 09:01:23 +01:00
Ralf Jung
cc1ebd0af6 some formatting 2020-03-01 10:29:05 +01:00
Ralf Jung
25ddc659d0 move validate field from memory to machine 2020-02-24 16:25:29 +01:00
Ralf Jung
274ae0438f add an option to disable Stacked Borrows 2020-02-24 16:22:02 +01:00
Ralf Jung
4a9a0a9078 avoid lowercasing platforms 2020-02-23 18:54:08 +01:00
Oliver Scherer
dbffbe5214 Document all the things 2020-01-09 12:42:56 +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
aec175e0de Process delayed errors on every step 2020-01-08 12:49:46 +01:00
Oliver Scherer
4de031b3da Move error reporting to its own module 2020-01-08 12:37:25 +01:00
Oliver Scherer
2673ba99fd Trailing return 2020-01-08 12:37:25 +01:00
Oliver Scherer
b9f6b9721a Split error reporting from main eval function 2020-01-08 12:37:25 +01:00
Yuki Okushi
86ee705cd5 Rustup 2020-01-07 05:13:18 +09:00
Yuki Okushi
ebacb8ae4e Rustup 2020-01-05 15:55:15 -08:00
Ralf Jung
e325ad24f2 support main functions with Result return type 2019-12-23 17:45:23 +01:00
Oliver Scherer
7ead530841 Rustfmt all the things 2019-12-23 12:56:23 +01:00
Oliver Scherer
817f4159a2 Use the machine stop error instead of abusing other error kinds 2019-12-09 14:29:28 +01:00
Oliver Scherer
eab2538317 Rename track-id to track-pointer-tag 2019-12-08 12:20:51 +01:00
Oliver Scherer
d363a47fcb Add a scheme to find the place where an id was destroyed 2019-12-08 12:20:51 +01:00
Ralf Jung
e92d16d9cd add flag to ignore memory leaks 2019-12-07 13:44:48 +01:00
Ralf Jung
94732aaf7b rename helper methods a bit 2019-12-04 10:43:36 +01:00
Ralf Jung
808ac8f4b9 use write_os_str_to_c_string for unix arg passing 2019-12-04 09:58:10 +01:00
Ralf Jung
8e3c3eccc4 panic errors are actually still possible 2019-12-02 16:04:31 +01:00
Ralf Jung
d43e394c46 fix init_allocation_extra 2019-12-02 16:04:31 +01:00
Ralf Jung
e77258322c some error classes should be impossible 2019-12-02 16:04:31 +01:00
Ralf Jung
b2cddd27bd better span for functions whose frame we push 'manually' 2019-12-02 16:04:31 +01:00
Ralf Jung
b91383b068 implement proper panicking for other MIR assertions
Requires generalizing the call_function helper to arbitrary Immediate arguments
2019-12-02 16:04:31 +01:00
Ralf Jung
dcdd68b936 also indicate abort via new MachineStop variant 2019-12-02 09:13:58 +01:00
Ralf Jung
f3c00a447c use new MachineStop error variant 2019-12-02 09:05:35 +01:00
Ralf Jung
e5a81c6a2d fix comment 2019-11-29 11:08:27 +01:00