]> rtime.felk.cvut.cz Git - l4.git/blobdiff - l4/pkg/valgrind/src/valgrind-3.6.0-svn/coregrind/pub_core_machine.h
update
[l4.git] / l4 / pkg / valgrind / src / valgrind-3.6.0-svn / coregrind / pub_core_machine.h
index 979bdf7015577edba1c491fe5778bd8b6d448710..6fb699e45e955832a999ef13bc383d19f1d04e2a 100644 (file)
 #  define VG_ELF_MACHINE      EM_386
 #  define VG_ELF_CLASS        ELFCLASS32
 #  undef  VG_PLAT_USES_PPCTOC
+#elif defined(VGP_s390x_linux)
+#  define VG_ELF_DATA2XXX     ELFDATA2MSB
+#  define VG_ELF_MACHINE      EM_S390
+#  define VG_ELF_CLASS        ELFCLASS64
+#  undef  VG_PLAT_USES_PPCTOC
 #else
 #  error Unknown platform
 #endif
 #  define VG_INSTR_PTR        guest_R15T
 #  define VG_STACK_PTR        guest_R13
 #  define VG_FRAME_PTR        guest_R11
+#elif defined(VGA_s390x)
+#  define VG_INSTR_PTR        guest_IA
+#  define VG_STACK_PTR        guest_SP
+#  define VG_FRAME_PTR        guest_FP
 #else
 #  error Unknown arch
 #endif
@@ -163,6 +172,11 @@ void VG_(get_UnwindStartRegs) ( /*OUT*/UnwindStartRegs* regs,
 
           then safe to use VG_(machine_get_VexArchInfo) 
                        and VG_(machine_ppc64_has_VMX)
+   -------------
+   arm:   initially:  call VG_(machine_get_hwcaps)
+                      call VG_(machine_arm_set_has_NEON)
+
+          then safe to use VG_(machine_get_VexArchInfo) 
 
    VG_(machine_get_hwcaps) may use signals (although it attempts to
    leave signal state unchanged) and therefore should only be
@@ -187,6 +201,10 @@ extern void VG_(machine_ppc32_set_clszB)( Int );
 extern void VG_(machine_ppc64_set_clszB)( Int );
 #endif
 
+#if defined(VGA_arm)
+extern void VG_(machine_arm_set_has_NEON)( Bool );
+#endif
+
 /* X86: set to 1 if the host is able to do {ld,st}mxcsr (load/store
    the SSE control/status register), else zero.  Is referenced from
    assembly code, so do not change from a 32-bit int. */