Smit Soni 892f706ce5 Add a support to execute isolated op without halting
In user interface, added a new flag `-Zmiri-isolation-error` which
takes one of the four values -- hide, warn, warn-nobacktrace, and
abort. This option can be used to configure Miri to either abort or
return an error code upon executing isolated op. If not aborted, Miri
prints a warning, whose verbosity can be configured using this flag.

In implementation, added a new enum `IsolatedOp` to capture all the
settings related to ops requiring communication with the
host. Old `communicate` flag in both miri configs and machine
stats is replaced with a new helper function `communicate()` which
checks `isolated_op` internally.

Added a new helper function `reject_in_isolation` which can be called
by shims to reject ops according to the reject_with settings. Use miri
specific diagnostics function `report_msg` to print backtrace in the
warning. Update it to take an enum value instead of a bool, indicating
the level of diagnostics.

Updated shims related to current dir to use the new APIs. Added a new
test for current dir ops in isolation without halting machine.
2021-06-09 05:50:52 -07:00
..
2021-05-31 11:57:16 +08:00
2020-03-30 10:23:16 +02:00
2021-02-05 10:08:05 +01:00
2021-03-02 20:17:05 +05:30
2020-11-19 09:21:11 +01:00
2020-11-19 09:21:11 +01:00
2020-09-10 08:44:27 +02:00
2020-10-29 20:57:38 +01:00
2020-10-27 17:26:36 +01:00
2021-05-11 15:32:05 +02:00
2019-11-25 15:08:47 +01:00
2020-10-29 20:57:38 +01:00
2019-09-20 08:53:35 +02:00
2020-03-27 08:43:08 -04:00
2020-03-06 08:21:53 -05:00
2019-11-25 15:08:47 +01:00
2021-04-25 16:57:48 +02:00
2020-11-10 16:51:07 +01:00
2020-10-04 12:06:51 -04:00
2020-10-04 12:06:51 -04:00
2020-09-10 08:44:27 +02:00
2020-05-20 00:00:35 +02:00
2021-01-26 11:43:39 +01:00
2020-01-19 10:03:18 -06:00
2020-01-19 10:03:18 -06:00
2019-06-30 15:31:14 +01:00
2021-01-31 13:12:25 +01:00
2019-11-08 12:43:26 +01:00
2020-09-02 20:57:20 -05:00
2020-09-10 08:44:27 +02:00
2019-08-04 16:44:32 -04:00
2021-04-30 19:35:59 +08:00
2021-01-31 13:12:25 +01:00
2020-03-22 08:55:39 +01:00
2021-01-31 13:12:25 +01:00
2020-06-20 11:48:42 +02:00
2020-01-19 10:03:18 -06:00
2020-09-07 15:05:26 -05:00
2021-04-25 16:57:48 +02:00
2020-06-01 01:12:31 +02:00