aboutsummaryrefslogtreecommitdiff
path: root/sim/common/sim-syscall.h
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2015-06-15 21:09:21 +0545
committerMike Frysinger <vapier@gentoo.org>2015-06-17 13:19:51 -0400
commit61a0c964e611eaf72489c3049ba206b2f91ea4a9 (patch)
tree386585a4f8d371d56225e968649dba301ec27801 /sim/common/sim-syscall.h
parent6362a3f8757bfce133b724df2077573433823ad4 (diff)
downloadgdb-61a0c964e611eaf72489c3049ba206b2f91ea4a9.zip
gdb-61a0c964e611eaf72489c3049ba206b2f91ea4a9.tar.gz
gdb-61a0c964e611eaf72489c3049ba206b2f91ea4a9.tar.bz2
sim: syscall: unify memory helpers
Almost every port implements these two callbacks in the same way, so unify them in the common layer.
Diffstat (limited to 'sim/common/sim-syscall.h')
-rw-r--r--sim/common/sim-syscall.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/sim/common/sim-syscall.h b/sim/common/sim-syscall.h
new file mode 100644
index 0000000..3f231fe
--- /dev/null
+++ b/sim/common/sim-syscall.h
@@ -0,0 +1,30 @@
+/* Simulator system call support.
+
+ Copyright 2002-2015 Free Software Foundation, Inc.
+
+ This file is part of simulators.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+#ifndef SIM_SYSCALL_H
+#define SIM_SYSCALL_H
+
+/* Simple memory callbacks for cb_syscall's read_mem/write_mem that assume
+ cb_syscall's p1 and p2 are set to the SIM_DESC and SIM_CPU respectively. */
+int sim_syscall_read_mem (host_callback *, struct cb_syscall *, unsigned long,
+ char *, int);
+int sim_syscall_write_mem (host_callback *, struct cb_syscall *, unsigned long,
+ const char *, int);
+
+#endif