diff options
| author | Valery Ushakov <uwe@stderr.spb.ru> | 2021-03-07 03:19:12 +0000 |
|---|---|---|
| committer | Charles Forsyth <charles.forsyth@gmail.com> | 2021-03-07 03:19:12 +0000 |
| commit | 98799e61445323e9022b62346ea988fb465452be (patch) | |
| tree | 0601a5b1036cee45f15f4da3e56ea0ad4f4b1b51 /emu/NetBSD/segflush-arm.c | |
| parent | 29b38a8cb898e73e6bb95476d5b705a2c79e8dcd (diff) | |
| parent | e273317811820976dda632b0893960646d6e1119 (diff) | |
Merged in feature/NetBSD/arm (pull request #13)
NetBSD/arm support
Approved-by: Charles Forsyth
Diffstat (limited to 'emu/NetBSD/segflush-arm.c')
| -rw-r--r-- | emu/NetBSD/segflush-arm.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/emu/NetBSD/segflush-arm.c b/emu/NetBSD/segflush-arm.c new file mode 100644 index 00000000..a03b438b --- /dev/null +++ b/emu/NetBSD/segflush-arm.c @@ -0,0 +1,19 @@ +#include <sys/types.h> +#include <sys/mman.h> +#include <machine/sysarch.h> + +#include "dat.h" + + +int +segflush(void *a, ulong n) +{ + struct arm_sync_icache_args args; + + mprotect(a, (size_t)n, PROT_READ | PROT_WRITE | PROT_EXEC); + + args.addr = (uintptr_t)a; + args.len = (size_t)n; + sysarch(ARM_SYNC_ICACHE, (void *)&args); + return 0; +} |
