summaryrefslogtreecommitdiff
path: root/linux-user/target_flat.h
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2011-02-07 01:05:54 -0500
committerRiku Voipio <riku.voipio@nokia.com>2011-02-09 10:33:54 +0200
commitc3109ba1b109f84929abbfe0462d910d5aa8617c (patch)
tree4db0c8aca79cdc61feac4d4953644f216fdfce0c /linux-user/target_flat.h
parent82a39595f7c70aecfb4649ae5a125147b62131f8 (diff)
downloadqemu-c3109ba1b109f84929abbfe0462d910d5aa8617c.tar.gz
linux-user/FLAT: allow targets to override FLAT processing
This brings flatload.c more in line with the current Linux FLAT loader which allows targets to handle various FLAT aspects in their own way. For the common behavior, the new functions get stubbed out. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Riku Voipio <riku.voipio@nokia.com>
Diffstat (limited to 'linux-user/target_flat.h')
-rw-r--r--linux-user/target_flat.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/linux-user/target_flat.h b/linux-user/target_flat.h
new file mode 100644
index 0000000000..0ba6bdd12e
--- /dev/null
+++ b/linux-user/target_flat.h
@@ -0,0 +1,10 @@
+/* If your arch needs to do custom stuff, create your own target_flat.h
+ * header file in linux-user/<your arch>/
+ */
+#define flat_argvp_envp_on_stack() 1
+#define flat_reloc_valid(reloc, size) ((reloc) <= (size))
+#define flat_old_ram_flag(flag) (flag)
+#define flat_get_relocate_addr(relval) (relval)
+#define flat_get_addr_from_rp(rp, relval, flags, persistent) (rp)
+#define flat_set_persistent(relval, persistent) (*persistent)
+#define flat_put_addr_at_rp(rp, addr, relval) put_user_ual(addr, rp)