Hello
The stat64/fstat64 syscalls are broken for alpha linux-user.
This is because Alpha, even though it is native 64-bits, has a stat64
syscall that is different than regular stat. This means that the
"TARGET_LONG_BITS==64" check in syscall.c isn't enough. Below is
a patch that fixes things for me, although it might not be the cleanest
fix.
This issue keeps sixtrack and fma3d spec2k benchmarks from running.
Vince
Signed-off-by: Vince Weaver<address@hidden>
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 1acf1f5..f2dd39e 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -4004,7 +4004,7 @@ static inline abi_long host_to_target_stat64(void
*cpu_env,
} else
#endif
{
-#if TARGET_LONG_BITS == 64
+#if (TARGET_LONG_BITS == 64)&& (!defined(TARGET_ALPHA))
struct target_stat *target_st;
#else
struct target_stat64 *target_st;