File tree Expand file tree Collapse file tree 2 files changed +5
-0
lines changed Expand file tree Collapse file tree 2 files changed +5
-0
lines changed Original file line number Diff line number Diff line change @@ -481,6 +481,7 @@ pub trait EvalContextExt<'tcx>: crate::MiriInterpCxExt<'tcx> {
481
481
/// provenances should be exposed. Note that if `prepare_exposed_for_native_call` was not
482
482
/// called before the FFI (with `paranoid` set to false) then some of the writes may be
483
483
/// lost!
484
+ #[ cfg( all( unix, any( target_arch = "x86" , target_arch = "x86_64" ) ) ) ]
484
485
fn apply_events ( & mut self , _events : crate :: shims:: trace:: MemEvents ) -> InterpResult < ' tcx > {
485
486
let this = self . eval_context_mut ( ) ;
486
487
let _exposed: Vec < AllocId > =
Original file line number Diff line number Diff line change @@ -181,7 +181,10 @@ pub trait EvalContextExt<'tcx>: crate::MiriInterpCxExt<'tcx> {
181
181
}
182
182
183
183
// Prepare all exposed memory, depending on whether we have a supervisor process.
184
+ #[ cfg( all( unix, any( target_arch = "x86" , target_arch = "x86_64" ) ) ) ]
184
185
this. prepare_exposed_for_native_call ( super :: trace:: Supervisor :: init ( ) . is_err ( ) ) ?;
186
+ #[ cfg( not( all( unix, any( target_arch = "x86" , target_arch = "x86_64" ) ) ) ) ]
187
+ this. prepare_exposed_for_native_call ( true ) ?;
185
188
186
189
// Convert them to `libffi::high::Arg` type.
187
190
let libffi_args = libffi_args
@@ -191,6 +194,7 @@ pub trait EvalContextExt<'tcx>: crate::MiriInterpCxExt<'tcx> {
191
194
192
195
// Call the function and store output, depending on return type in the function signature.
193
196
let ret = this. call_native_with_args ( link_name, dest, code_ptr, libffi_args) ?;
197
+ #[ cfg( all( unix, any( target_arch = "x86" , target_arch = "x86_64" ) ) ) ]
194
198
if let Some ( events) = super :: trace:: Supervisor :: get_events ( ) {
195
199
this. apply_events ( events) ?;
196
200
}
You can’t perform that action at this time.
0 commit comments