blob: 4407bb6cce775d964fcf20ecfbd8030fec83c35d (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
From nox Mon Sep 17 00:00:00 2001
From: Juergen Lock <nox@jelal.kn-bremen.de>
Date: 06 Jul 2014 13:23:00 +0200
Subject: sparc64-bsd-user: sync ccr before changing carry flag
Sync ccr so that changing carry flag manually after syscall works
properly.
Signed-off-by: Juergen Lock <nox@jelal.kn-bremen.de>
--- a/bsd-user/sparc64/target_arch_cpu.h
+++ b/bsd-user/sparc64/target_arch_cpu.h
@@ -77,6 +77,7 @@ static inline void target_cpu_loop(CPUSP
env->regwptr[2], env->regwptr[3],
env->regwptr[4], env->regwptr[5]);
}
+ cpu_put_ccr(env, cpu_get_ccr(env));
if ((unsigned int)ret >= (unsigned int)(-515)) {
ret = -ret;
#if !defined(TARGET_ABI32)
|