@@ -44,6 +44,14 @@ pub trait EvalContextExt<'mir, 'tcx: 'mir>: crate::MiriInterpCxExt<'mir, 'tcx> {
44
44
let result = this. linux_readdir64 ( dirp) ?;
45
45
this. write_scalar ( result, dest) ?;
46
46
}
47
+ "mmap64" => {
48
+ let [ addr, length, prot, flags, fd, offset] =
49
+ this. check_shim ( abi, Abi :: C { unwind : false } , link_name, args) ?;
50
+ let offset = this. read_scalar ( offset) ?. to_i64 ( ) ?;
51
+ let ptr = this. mmap ( addr, length, prot, flags, fd, offset. into ( ) ) ?;
52
+ this. write_scalar ( ptr, dest) ?;
53
+ }
54
+
47
55
// Linux-only
48
56
"sync_file_range" => {
49
57
let [ fd, offset, nbytes, flags] =
@@ -218,14 +226,6 @@ pub trait EvalContextExt<'mir, 'tcx: 'mir>: crate::MiriInterpCxExt<'mir, 'tcx> {
218
226
this. write_null ( dest) ?;
219
227
}
220
228
221
- "mmap64" => {
222
- let [ addr, length, prot, flags, fd, offset] =
223
- this. check_shim ( abi, Abi :: C { unwind : false } , link_name, args) ?;
224
- let offset = this. read_scalar ( offset) ?. to_i64 ( ) ?;
225
- let ptr = this. mmap ( addr, length, prot, flags, fd, offset. into ( ) ) ?;
226
- this. write_scalar ( ptr, dest) ?;
227
- }
228
-
229
229
_ => return Ok ( EmulateForeignItemResult :: NotSupported ) ,
230
230
} ;
231
231
0 commit comments