summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com>2008-10-09 13:54:33 +0900
committerNobuhiro Iwamatsu <iwamatsu@nigauri.org>2008-10-14 13:09:40 +0900
commitcae6f909baf86357b3c0bd01acfc414348c4d175 (patch)
tree06ec63a62041e1185a65b4b264a9e186a78e9594
parentb3ed233198c5ac54aa83dd51f05fcb44ee75f42b (diff)
downloadu-boot-cae6f909baf86357b3c0bd01acfc414348c4d175.tar.gz
sh: Fix cannot execute a stand-alone application
Address calculated in EXPORT_FUNC in SuperH was wrong, I revised it. Signed-off-by: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com> Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
-rw-r--r--examples/stubs.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/examples/stubs.c b/examples/stubs.c
index ec5353216b..a8cb954282 100644
--- a/examples/stubs.c
+++ b/examples/stubs.c
@@ -162,11 +162,13 @@ gd_t *global_data;
#x ":\n" \
" mov r13, r1\n" \
" add %0, r1\n" \
- " add %1, r1\n" \
+ " mov.l @r1, r2\n" \
+ " add %1, r2\n" \
+ " mov.l @r2, r1\n" \
" jmp @r1\n" \
" nop\n" \
" nop\n" \
- : : "i"(offsetof(gd_t, jt)), "i"(XF_ ## x * sizeof(void *)) : "r1");
+ : : "i"(offsetof(gd_t, jt)), "i"(XF_ ## x * sizeof(void *)) : "r1", "r2");
#elif defined(CONFIG_SPARC)
/*
* g7 holds the pointer to the global_data. g1 is call clobbered.