]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Fix a couple of minor ARM things -- frame pointer is R11, it seems, and
authorNicholas Nethercote <njn@valgrind.org>
Sat, 27 Nov 2004 13:42:42 +0000 (13:42 +0000)
committerNicholas Nethercote <njn@valgrind.org>
Sat, 27 Nov 2004 13:42:42 +0000 (13:42 +0000)
programs get loaded at 0x00008000.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3122

coregrind/arm/Makefile.am
coregrind/arm/core_arch.h

index cf6d8d6d8433068c78bf512a5842de4e63cdd191..2ea09dabbd5ec542f09b4f8b4dbf57fb0fc841e7 100644 (file)
@@ -26,4 +26,4 @@ stage2.lds: Makefile
        $(CC) -Wl,--verbose -nostdlib 2>&1 | sed \
                -e '1,/^=====\+$$/d' \
                -e '/^=====\+$$/d' \
-               -e 's/0x08048000/kickstart_base/g' > $@ || rm -f $@
+               -e 's/0x00008000/kickstart_base/g' > $@ || rm -f $@
index 26b234dca736774f5a1138f831d88cde706187ab..4e895741d4e05cc921a7e348146874195ee7cf69 100644 (file)
    Interesting registers
    ------------------------------------------------------------------ */
 // Vex field names
-// Not sure, but I think:
+// XXX: Not sure, but I think:
 //   r11 = frame pointer
-//   r12 = ip (??)
+//   r12 = "implicit parameter" (neither caller-save, nor callee-save)
 //   r13 = stack pointer
 //   r14 = link register
 //   r15 = program counter
 #define ARCH_INSTR_PTR        guest_R15
-#define ARCH_STACK_PTR        guest_R13   // XXX ???
-#define ARCH_FRAME_PTR        guest_R0    // XXX ???
+#define ARCH_STACK_PTR        guest_R13
+#define ARCH_FRAME_PTR        guest_R11
 
 #define ARCH_CLREQ_ARGS       guest_R0
 #define ARCH_CLREQ_RET        guest_R0
@@ -57,7 +57,7 @@
 
 // Register numbers, for vg_symtab2.c
 #define R_STACK_PTR           13
-#define R_FRAME_PTR           0           // XXX ???
+#define R_FRAME_PTR           11
 
 // Stack frame layout and linkage
 // XXX ToDo: ???